当前位置: 首页 > news >正文

深圳网站建设大公司排名外贸接单平台哪个最好

深圳网站建设大公司排名,外贸接单平台哪个最好,哪个公司做网站好,湛江麻章区1. Proxy Class 概述 生成方式:Proxy Class 是从 AutoSar 元模型的服务接口描述中生成的,ara::com 标准化了其接口,AP 产品供应商的工具链会生成实现该接口的代理实现类。 命名空间:ara::com 期望代理相关的工件在命名空间 “pro…

1. Proxy Class 概述

  • 生成方式:Proxy Class 是从 AutoSar 元模型的服务接口描述中生成的,ara::com 标准化了其接口,AP 产品供应商的工具链会生成实现该接口的代理实现类。

  • 命名空间:ara::com 期望代理相关的工件在命名空间 “proxy” 中,通常包含在从服务定义及其上下文推导出的命名空间层次结构中。

2. Proxy Class API

  • 包含了FindServiceStartFindServiceStopFindServiceSubscribeUnsubscribeGetSubscriptionStateSetSubscriptionStateChangeHandlerUnsetSubscriptionStateChangeHandlerGetNewSamplesGetResultGetFreeSampleCountSetReceiveHandlerUnsetReceiveHandlerResolveInstanceIDsField::GetField::Set等方法。

3. RadarService Proxy Class Example

  • 类结构:

    • RadarServiceProxy类中有内部类HandleTypeHandleType中定义了判断两个服务句柄是否相等的运算符==以及获取实例标识符的方法GetInstanceId

    • RadarServiceProxy类包含多种方法,如StartFindService(有基于InstanceIdentifierInstanceSpecifier两种重载形式)、StopFindServiceFindService(同样有两种重载形式),还有构造函数(接受HandleType类型的句柄参数),以及删除了拷贝构造函数和拷贝赋值运算符。

    • 类中还包含了与服务相关的成员,如BrakeEvent(事件)、UpdateRate(字段)、CalibrateAdjustLogCurrentState(方法)。

4. 构造函数和句柄概念

  • 句柄的作用和来源:

    • 调用构造函数后可得到与服务通信的 Proxy 实例,句柄必须包含通信管理绑定实现与服务联系所需的寻址信息,而这个寻址信息取决于绑定实现和技术传输层。

    • 对于应用程序开发者来说,通过 ara::com 提供的查找服务实例的 API(FindService)来获得包含寻址地址的句柄,这样能保证创建的代理是由现有的服务实例支持的。

  • 设计原因:

    • 应用程序开发者在某些情况下可能希望使用连接到同一个服务实例的 Proxy 的不同实例,通过句柄的间接方式可以让开发者决定是使用相同的 Proxy 实例(共享状态)还是新的 Proxy 实例。

    • 另外,Proxy 实例不能进行拷贝构造和拷贝赋值,因为 Proxy 实例拥有如 Event/Field 缓存、注册的处理程序和复杂状态等信息,拷贝可能导致资源泄露风险,所以强制通过HandleType创建 Proxy 实例是一种深思熟虑的设计策略。

5.Proxy Class API 概念的简单代码示例

请注意,这是一个简化示例,实际使用中可能需要根据具体的 ara::com 库和环境进行调整。

#include <iostream>
#include <vector>// 假设这是 ara::com 和 ara::core 相关的命名空间,实际需要根据真实环境包含头文件
namespace ara {
namespace com {
class InstanceIdentifier;
class FindServiceHandle;
template <typename T>
class ServiceHandleContainer;
class FindServiceHandler;
}
namespace core {
class InstanceSpecifier;
class Result;
}
}// 模拟事件处理相关的函数签名
using EventReceiveHandler = std::function<void()>;
using SubscriptionStateChangeHandler = std::function<void()>;// 模拟 Field 相关的类
class Field {
public:// 模拟获取 Field 值的方法int Get() {return value;}// 模拟设置 Field 值的方法void Set(int newValue) {value = newValue;}
private:int value = 0;
};// 模拟的 Proxy Class
class ProxyClass {
public:// 模拟查找服务(基于 InstanceIdentifier)static ara::core::Result<ara::com::FindServiceHandle> StartFindService(ara::com::FindServiceHandler<ProxyClass::HandleType> handler,ara::com::InstanceIdentifier instanceId) {std::cout << "Starting find service with InstanceIdentifier" << std::endl;// 实际实现中需要按照相应逻辑处理return ara::core::Result<ara::com::FindServiceHandle>();}// 模拟查找服务(基于 InstanceSpecifier)static ara::core::Result<ara::com::ServiceHandleContainer<ProxyClass::HandleType>> FindService(ara::core::InstanceSpecifier instanceSpec) {std::cout << "Finding service with InstanceSpecifier" << std::endl;// 实际实现中需要按照相应逻辑处理return ara::core::Result<ara::com::ServiceHandleContainer<ProxyClass::HandleType>>();}// 模拟停止查找服务static void StopFindService(ara::com::FindServiceHandle handle) {std::cout << "Stopping find service" << std::endl;}// 模拟订阅void Subscribe() {std::cout << "Subscribing" << std::endl;}// 模拟取消订阅void Unsubscribe() {std::cout << "Unsubscribing" << std::endl;}// 模拟获取订阅状态int GetSubscriptionState() const {return subscriptionState;}// 模拟设置订阅状态更改处理程序void SetSubscriptionStateChangeHandler(SubscriptionStateChangeHandler handler) {subscriptionChangeHandler = handler;}// 模拟移除订阅状态更改处理程序void UnsetSubscriptionStateChangeHandler() {subscriptionChangeHandler = nullptr;}// 模拟从缓冲区获取新样本template <typename F>void GetNewSamples(F&& f) {std::cout << "Getting new samples" << std::endl;// 可以在实际实现中调用传入的函数 f 处理样本}// 模拟获取结果int GetResult() {return result;}// 模拟获取可用样本计数int GetFreeSampleCount() const {return freeSampleCount;}// 模拟设置接收处理程序void SetReceiveHandler(EventReceiveHandler handler) {receiveHandler = handler;}// 模拟移除接收处理程序void UnsetReceiveHandler() {receiveHandler = nullptr;}// 模拟解析实例 IDvoid ResolveInstanceIDs() {std::cout << "Resolving instance IDs" << std::endl;}// 模拟 Field 获取Field& Field::Get() {return field;}// 模拟 Field 设置void Field::Set() {std::cout << "Setting field" << std::endl;}private:// 模拟订阅状态int subscriptionState = 0;// 模拟结果int result = 0;// 模拟可用样本计数int freeSampleCount = 0;// 模拟接收处理程序EventReceiveHandler receiveHandler;// 模拟订阅状态更改处理程序SubscriptionStateChangeHandler subscriptionChangeHandler;// 模拟 FieldField field;// 模拟句柄类型class HandleType {};
};int main() {// 使用示例ProxyClass proxy;// 查找服务auto serviceResult = ProxyClass::FindService(ara::core::InstanceSpecifier());// 启动查找服务ProxyClass::StartFindService([](auto, auto) {}, ara::com::InstanceIdentifier());// 停止查找服务ProxyClass::StopFindService(ara::com::FindServiceHandle());// 订阅proxy.Subscribe();// 设置订阅状态更改处理程序proxy.SetSubscriptionStateChangeHandler([]() {std::cout << "Subscription state changed" << std::endl;});// 获取新样本proxy.GetNewSamples([](int sample) {std::cout << "Processing sample: " << sample << std::endl;});// 获取结果int result = proxy.GetResult();// 获取可用样本计数int freeSampleCount = proxy.GetFreeSampleCount();// 设置接收处理程序proxy.SetReceiveHandler([]() {std::cout << "Received event" << std::endl;});// 解析实例 IDproxy.ResolveInstanceIDs();// 获取 Field 并设置值auto& field = proxy.Field::Get();field.Set(10);return 0;
}

在上述代码中:

  • ProxyClass类模拟了文档中提到的 Proxy Class,包含了多个 API 方法的模拟实现,如FindServiceStartFindServiceStopFindService等。
  • Field类模拟了与 Field 相关的操作。
  • main函数中展示了这些 API 方法的基本使用方式,包括查找服务、启动和停止查找服务、订阅、设置和移除处理程序、获取样本和结果等操作。
http://www.dinnco.com/news/57601.html

相关文章:

  • 互助网站制作公司提升seo排名
  • 外贸商城网站 定制怎么制作一个简单的网页
  • 医疗营销网站建设方案博客营销
  • 做服装辅料一般什么网站找客户嘉兴seo外包平台
  • win7 iis配置asp.net网站世界足球排名
  • flash网站制作实例站长资源平台
  • 单位门户网站是什么seo渠道是什么意思
  • 做购物网站的数据库网络上哪里可以做推广
  • 电子商务网站建设 pptsem是什么?
  • 黄江东莞网站建设电子制作网站
  • wordpress页面直接跳转信息流广告优化师培训
  • 创意产品设计网优化系统软件
  • 手机网站设计公司优选亿企邦网站优化策略
  • 网站建设 上市公司网络媒体推广报价
  • 网站制作超链接怎么做创建站点的步骤
  • 网站建设相关工作总结市场营销策划公司
  • 网站的创新点有哪些关键词指数查询
  • 访问香港网站慢软文营销策划
  • 新闻发布系统网站模板代做百度首页排名
  • 什么是电子商务网站建设的基本要求凡科建站官网
  • 开发公司财务管理制度seo标签优化方法
  • 企业网站报价方案模板下载广东网站seo
  • 合肥网站建设bai nuo谷歌浏览器官网
  • wordpress的seoseo黑帽优化
  • 福州网站优化电商seo搜索优化
  • 个人建网站运营.google安卓版下载
  • wordpress 免费ssl证书珠海百度关键词优化
  • 东莞网站建设新闻资讯新闻发布平台有哪些
  • 域名与网站的区别企业推广策划
  • 网络推广是网络营销的基础徐州网站建设方案优化