【Fast RTPS】对象和数据结构

为了最大程度利用eProsima Fast RTPS,理解库中的对象和数据结构相当重要。eProsima Fast RTPS被模块化分类,在这一部分简单介绍。对于所有的内容,请看API接口文档。

Publisher-Subscriber模块

这个模块组成Publisher-Subscriber抽象。这里的概念比RTPS标准的层次更高。

  • Domain,创建、管理、销毁 高层参与者
  • Participant,包含Publishers和Subcribers,并管理它们的配置。
  •   ParticipantAttributes用于创建参与者的配置参数。
    
  •    ParticipantListener允许您在Participant范围内实现回调
    
  • Publisher以主题更改的形式发送(发布)数据
  •     PublisherAttributes构建Publisher的配置参数。
    
  •      PublisherListener允许您在Publisher范围内实现回调
    
  • Subscriber从其订阅的主题中接收数据
  •      SubscriberAttributes构建Subscriber的配置参数。
    
  •       SubscriberListener允许您在Subscriber范围内实现回调
    

RTPS模块

该模块直接映射到RTPS标准中定义的思想,并允许您直接与RTPS实体交互。其包含一些子模块:

RTPS通用

  • CacheChange_t,表示要存储在历史记录缓存中的主题更改。
  • Data,与缓存更改关联的有效负载。依赖的消息和更改类型,可能为空。
  • Message,定义RTPS消息的组织。
  • Header,标准头文件,将消息标识为属于RTPS协议,并包括vendor ID。
  • Sub-Message Header,标记为RTPS子消息。一个RTPS消息可以由多个子消息组成。
  • MessageReceiver,反序列化并处理收到的RTPS消息。
  • RTPSMessageCreator,编写RTPS消息。

RTPS域

  • RTPSDomain,创建、管理、销毁 低层次RTPS参与者
  • RTPSParticipant,包含Writers and Readers,并管理它们的配置。
  •     RTPSParticipantAttributes,配置参数
    
  •     PDPSimple,允许参与者,通过参与者发现协议,发现网络中其他参与者。
    
  •      EDPSimple,允许参与者,通过端发现协议,发现网络中在其他参与者中的端(RTPS写和读端)
    
  •      EDPStatic,从用户文件中读取有关远程端点的信息
    
  •  	TimedEvent,定期或定时事件的基类。
    

RTPS读

  • RTPSReader,读端点的基类。
  •  ReaderAttributes,配置参数
    
  •  ReaderHistory,历史数据结构。存储最近的主题更改。
    
  •  ReaderListener,用它来定义Reader范围内的回调。
    

RTPS写

  • RTPSWriter,写端点的基类。
  •  WriterAttributes,参数配置
    
  •  WriterHistory,历史数据结构。存储传出的主题更改并安排它们发送。
    
发布了44 篇原创文章 · 获赞 8 · 访问量 6734

猜你喜欢

转载自blog.csdn.net/zhaodeming000/article/details/99686582