专门代理

($AL_DIR/modules/proxies)

使用专门代理是调用Aldebaran Robotics方法的最简便的方式。

  • 包括对应于所需模块的.h头文件
  • 创建专门代理的对象
  • 调用所需方法

专门代理的API:

方法 说明
ALProxy(std::string Module) 在本地或远程模块里进行调用的构造函数
ALProxy(std::string Module, std::string IP, int port) 在远程模块里调用的构造函数。代理不会进行本地过程调用(LPC)
methodName(parameters) “methodName”是.h模块方法。调用方法
post.methodName(parameters) “methodName”是.h模块方法。在一个线程里的调用方法

// C++ sample // we suppose user created a module with module generator #include "almemoryproxy.h" // instantiate a new proxy. Poor performance, create it in initialisation ALPtr<ALMemoryProxy> proxy = ALPtr<ALMemoryProxy> (new ALMemoryProxy(getParentBroker())); proxy->insertData("val1", 0); // instantiate a new proxy without smart pointer (same poor performance) ALMemoryProxy proxy2(getParentBroker()); prox2.insertData("val2", 1); // get existing proxy (best performance) getParentBroker()->getMemoryProxy()->insertData("val3", 2);





Copyright © 2010 Aldebaran-Robotics - 版权所有