3. DDS层
eProsima Fast DDS公开了两个不同的API,以在不同级别与通信服务交互。主要API是数据分发服务(DDS)数据中心发布订阅(DCPS)平台独立模型(PIM)API,简称DDS DCPS PIM,由Fast DDS遵循的数据分发服务1.4版规范定义。本节旨在解释Fast DDS下此API的主要特性和使用模式,并对其分为五个模块进行深入解释:
- Core: 它定义了由其他模块细化的抽象类和接口。它还提供了服务质量(QoS)定义,以及支持中间件的基于通知的交互。
- Domain: 它包含充当服务入口点的DomainParticipant类,以及许多类的工厂。DomainParticipant还充当构成服务的其他对象的容器。
- Publisher: 它描述了发布端使用的类,包括Publisher和DataWriter类,以及PublisherListener和DataWriterListener接口。
-Subscriber: 它描述了订阅端使用的类,包括Subscriber和DataReader类,以及SubscriberListener和DataReaderListener接口。 - Topic: 它描述了用于定义通信主题和数据类型的类,包括Topic和TopicDescription类,以及TypeSupport和TopicListener接口。
3.1 Core
此模块定义其他模块将使用的基础结构类和类型。它包含实体类、QoS策略和状态的定义。
- Entity: 实体是具有状态的DDS通信对象ÿ