接口简介
数据面通信接口是业务和基础平台约定的实时通信类编程接口。它约束了用户的实时编程模型,指定了实时接口使用规范和规格。在接口的约束下,以平滑牵引当前业务代码满足机器人系统实时性为目标,最终实现基本的实时通信框架。
本章主要针对基础平台数据面子系统接口提供了说明,对系统软件的通信接口、定时器、配置管理等进行展开描述,助力用户更快、更高效地进行机器人业务应用开发。
当前版本提供的API参考为试用接口,后续版本会存在变更,暂不支持应用于商用产品中。
接口分类 |
关键接口 |
接口简介 |
头文件 |
依赖的库文件 |
---|---|---|---|---|
初始化、退出和调度接口 |
OpenHiva::Init |
初始化框架资源,如节点、线程组等。 |
Robot Middleware安装目录/robotmiddleware/sdk/include/hiva/cm/open/init.h |
Robot Middleware安装目录/robotmiddleware/sdk/lib/hiva/cm/libHivaOpen.so |
OpenHiva::Ready |
判断OpenHiva框架状态。 |
|||
OpenHiva::Shutdown |
终止框架运行,释放资源。 |
|||
OpenHiva::WaitForShutdown |
阻塞式调用,防止主线程提前退出,框架退出前会释放资源。 |
|||
OpenHiva::SpinOnce |
调度groupName指定的group,订阅的Topic在指定group内会被调度处理消息。 |
|||
OpenHiva::Node接口 |
OpenHiva::Node |
构造函数,完成Node的初始化工作。 |
Robot Middleware安装目录/robotmiddleware/sdk/include/hiva/cm/open/node.h |
|
OpenHiva::Node::CreatePublisher |
创建发布者。 |
|||
OpenHiva::Node::CreateSubscriber |
创建订阅者。 |
|||
OpenHiva::Node::CreateServer |
创建Service的服务端。 |
|||
OpenHiva::Node::CreateClient |
创建Service的客户端。 |
|||
OpenHiva::Node::Ready |
判断Node是否关闭。 |
|||
OpenHiva::Node::GetName |
获取Node的名字。 |
|||
OpenHiva::Node::GetNameSpace |
获取Node的域名。 |
|||
OpenHiva::TopicOptions接口 |
OpenHiva::TopicOptions::BuildShmOptions |
设置SHM或DSF通信分配的内存块大小和内存块个数。 |
Robot Middleware安装目录/robotmiddleware/sdk/include/hiva/cm/open/topic_options.h |
|
OpenHiva::TopicOptions::BuildQueueOptions |
设置DSF通信的队列参数。 |
|||
OpenHiva::TopicOptions::BuildGroupName |
设置Topic所属的groupName。 |
|||
OpenHiva::TopicOptions::BuildTransportOptions |
设置Topic的通信方式。 |
|||
OpenHiva::TopicOptions::BuildDDSQos |
设置Topic所属DDS通信的QoS策略。 |
|||
OpenHiva::Publisher接口 |
OpenHiva::Publisher::Publisher |
发布端的默认构造函数。 |
Robot Middleware安装目录/robotmiddleware/sdk/include/hiva/cm/open/publisher.h |
|
OpenHiva::Publisher::Publish |
消息发布函数。 |
|||
OpenHiva::Publisher::Ready |
判断Publisher是否处于工作状态。 |
|||
OpenHiva::Subscriber接口 |
OpenHiva::Subscriber::Subscriber |
订阅端的默认构造函数。 |
Robot Middleware安装目录/robotmiddleware/sdk/include/hiva/cm/open/subscriber.h |
|
OpenHiva::Subscriber::Ready |
判断Subscriber是否处于工作状态。 |
|||
OpenHiva::Subscriber::StartReadMessage |
启动接收消息。 |
|||
OpenHiva::Subscriber::StopReadMessage |
停止接收消息。 |
|||
OpenHiva::ServiceServer接口 |
OpenHiva::ServiceServer::Enable |
使能服务端。 |
Robot Middleware安装目录/robotmiddleware/sdk/include/hiva/cm/open/service_server.h |
|
OpenHiva::ServiceServer::Disable |
去使能服务端。 |
|||
OpenHiva::ServiceServer::Destroy |
释放OpenHiva::Node::CreateServer申请的资源。 |
|||
OpenHiva::ServiceClient接口 |
OpenHiva::ServiceClient::InvokeService |
客户端向服务端发送请求。 |
Robot Middleware安装目录/robotmiddleware/sdk/include/hiva/cm/open/service_client.h |
|
OpenHiva::ServiceClient::Destroy |
释放OpenHiva::Node::CreateClient申请的资源。 |
|||
NnEngine接口 |
Hiva::CreateNnEngine |
创建NN引擎。 |
Robot Middleware安装目录/robotmiddleware/sdk/include/hiva/cm/inner_topic/hiva_nn_topic.h |
Robot Middleware安装目录/robotmiddleware/sdk/lib/hiva/cm/libHivaNnengine.so |
Hiva::DestroyNnEngine |
销毁NN引擎。 |
|||
定时器接口 |
Hiva::CreateTimer |
创建Timer定时器。 |
Robot Middleware安装目录/robotmiddleware/sdk/include/hiva/cm/hiva_timer/timer.h |
Robot Middleware安装目录/robotmiddleware/sdk/lib/hiva/cm/libHivaTimer.so |
Hiva::Timer::Start |
启动Timer定时器。 |
|||
Hiva::Timer::IsValid |
判断Timer定时器是否有效。 |
|||
Hiva::Timer::SetPeriod |
重置Timer定时器周期。 |
|||
Hiva::Timer::Stop |
停止Timer定时器。 |
|||
Hiva::CreateWallTimer |
创建WallTimer定时器。 |
Robot Middleware安装目录/robotmiddleware/sdk/include/hiva/cm/hiva_timer/wall_timer.h |
||
Hiva::WallTimer::Start |
启动WallTimer定时器。 |
|||
Hiva::WallTimer::IsValid |
判断WallTimer定时器是否有效。 |
|||
Hiva::WallTimer::SetPeriod |
重置WallTimer定时器周期。 |
|||
Hiva::WallTimer::Stop |
停止WallTimer定时器。 |
|||
Hiva::CreateSteadyTimer |
创建SteadyTimer定时器。 |
Robot Middleware安装目录/robotmiddleware/sdk/include/hiva/cm/hiva_timer/steady_timer.h |
||
Hiva::SteadyTimer::Start |
启动SteadyTimer定时器。 |
|||
Hiva::SteadyTimer::IsValid |
判断SteadyTimer定时器是否有效。 |
|||
Hiva::SteadyTimer::SetPeriod |
重置SteadyTimer定时器周期。 |
|||
Hiva::SteadyTimer::Stop |
停止SteadyTimer定时器。 |
|||
配置管理相关接口 |
CfgMgr::BatchReset |
批量删除持久化数据。 |
Robot Middleware安装目录/robotmiddleware/sdk/include/hiva/cm/cfgmgr/param.h |
Robot Middleware安装目录/robotmiddleware/sdk/lib/hiva/cm/libcfgmgr_client.so |
CfgMgr::CancelMonitor |
取消检查。 |
|||
CfgMgr::CleanStartConfig |
清理指定启动描述文件的数据。 |
|||
CfgMgr::CreateSnapshot |
配置参数快照,记录当前所有持久化参数。 |
|||
CfgMgr::CreateSnapshotToFile |
指定快照路径进行快照。 |
|||
CfgMgr::DeleteSnapshot |
删除快照文件。 |
|||
CfgMgr::Get |
读取配置参数。 |
|||
CfgMgr::GetAllStartConfig |
获取当前所有的启动描述文件。 |
|||
CfgMgr::GetAllSnapshot |
获取当前所有的快照文件名称及对应启动描述文件。 |
|||
CfgMgr::GetStartConfig |
获取当前正在使用的启动描述文件。 |
|||
CfgMgr::Has |
判断某参数是否存在。 |
|||
CfgMgr::Load |
按yaml文件加载参数并进行持久化。 |
|||
CfgMgr::Monitor |
检查指定参数。 |
|||
CfgMgr::Param |
获取参数。 |
|||
CfgMgr::Reload |
重新加载yaml文件。 |
|||
CfgMgr::Reset |
删除持久化数据。 |
|||
CfgMgr::RevertSnapshot |
按名称还原快照文件。 |
|||
CfgMgr::RevertSnapshotFromFile |
指定路径进行恢复快照。 |
|||
CfgMgr::Set |
设置参数。 |
|||
CfgMgr::SetNextStartConfig |
设置启动参考描述文件。 |
|||
CfgMgr::SetUpgrade |
使能系统重启后重新加载yaml文件。 |