Fast DDS 官方--C++ API Reference

Fast DDS 官方--C++ API Reference

1 介绍

数据分发服务DDS(DataDistributionService)是OMG对象管理组织在HLA及CORBA等标准的基础上制定的新一代分布式实时通信中间件技术规范,DDS采用发布/订阅体系架构,强调以数据为中心,提供丰富的QoS服务质量策略,能保障数据进行实时、高效、灵活地分发,可满足各种分布式实时通信应用需求。
在这里插入图片描述

2 接口

2.1 DDS DCPS PIM

2.1.1 Core

2.1.1.1 Entity 【基类】
class eprosima::fastdds::dds::Entity

The Entity class is the abstract base class for all the objects that support QoS policies, a listener and a status condition.

Subclassed by eprosima::fastdds::dds::DomainEntity, eprosima::fastdds::dds::DomainParticipant

eprosima::fastdds::dds::DomainEntity
eprosima::fastdds::dds::DomainParticipant
2.1.1.2 DomainEntity
class eprosima::fastdds::dds::DomainEntity : public eprosima::fastdds::dds::Entity

The DomainEntity class is a subclass of Entity created in order to differentiate between DomainParticipants and the rest of Entities.

Subclassed by eprosima::fastdds::dds::DataReader, eprosima::fastdds::dds::DataWriter, eprosima::fastdds::dds::Publisher, eprosima::fastdds::dds::Subscriber, eprosima::fastdds::dds::Topic

eprosima::fastdds::dds::DataReader
eprosima::fastdds::dds::DataWriter
eprosima::fastdds::dds::Publisher
eprosima::fastdds::dds::Subscriber
eprosima::fastdds::dds::Topic
2.1.1.3 Policy 【枚举】
2.1.1.3.1 DataRepresentationId
enum eprosima::fastdds::dds::DataRepresentationId
2.1.1.3.2 DataRepresentationQosPolicy
2.1.1.3.3 DataSharingQosPolicy
2.1.1.3.4 DataSharingKind
2.1.1.3.5 DeadlineQosPolicy
2.1.1.3.6 DestinationOrderQosPolicy
2.1.1.3.7 DestinationOrderQosPolicyKind
2.1.1.3.8 DisablePositiveACKsQosPolicy
2.1.1.3.9 DurabilityQosPolicy
2.1.1.3.10 DurabilityQosPolicyKind
2.1.1.3.11 DurabilityServiceQosPolicy
2.1.1.3.12 EntityFactoryQosPolicy
2.1.1.3.13 GenericDataQosPolicy
2.1.1.3.14 GroupDataQosPolicy
2.1.1.3.15 HistoryQosPolicy
2.1.1.3.16 HistoryQosPolicyKind
2.1.1.3.17 LatencyBudgetQosPolicy
2.1.1.3.18 LifespanQosPolicy
2.1.1.3.19 LivelinessQosPolicy
2.1.1.3.20 LivelinessQosPolicyKind
2.1.1.3.21 OwnershipQosPolicy
2.1.1.3.22 OwnershipQosPolicyKind
2.1.1.3.23 OwnershipStrengthQosPolicy
2.1.1.3.24 ParticipantResourceLimitsQos
2.1.1.3.25 Partition_t
2.1.1.3.26 PartitionQosPolicy
2.1.1.3.27 PresentationQosPolicy
2.1.1.3.28 PresentationQosPolicyAccessScopeKind
2.1.1.3.29 PropertyPolicyQos
2.1.1.3.30 PublishModeQosPolicy
2.1.1.3.31 PublishModeQosPolicyKind
2.1.1.3.32 QosPolicy
2.1.1.3.33 QosPolicyId_t
2.1.1.3.34 ReaderDataLifecycleQosPolicy
2.1.1.3.35 ReliabilityQosPolicy
2.1.1.3.36 ReliabilityQosPolicyKind
2.1.1.3.37 ResourceLimitsQosPolicy
2.1.1.3.38 RTPSEndpointQos
2.1.1.3.39 TimeBasedFilterQosPolicy
2.1.1.3.40 TopicDataQosPolicy
2.1.1.3.41 TransportConfigQos
2.1.1.3.42 TransportPriorityQosPolicy
2.1.1.3.43 TypeConsistencyEnforcementQosPolicy
2.1.1.3.44 TypeConsistencyKind
2.1.1.3.45 UserDataQosPolicy
2.1.1.3.46 WireProtocolConfigQos
2.1.1.3.47 WriterDataLifecycleQosPolicy
2.1.1.3.48 WriterResourceLimitsQos
2.1.1.4 Status 【状态】
2.1.1.4.1 BaseStatus
struct eprosima::fastdds::dds::BaseStatus
2.1.1.4.2 DeadlineMissedStatus
2.1.1.4.3 IncompatibleQosStatus
2.1.1.4.4 InconsistentTopicStatus
2.1.1.4.5 LivelinessChangedStatus
2.1.1.4.6 MatchedStatus
2.1.1.4.7 OfferedDeadlineMissedStatus
2.1.1.4.8 OfferedIncompatibleQosStatus
2.1.1.4.9 PublicationMatchedStatus
2.1.1.4.10 QosPolicyCount
2.1.1.4.11 QosPolicyCountSeq
2.1.1.4.12 RequestedDeadlineMissedStatus
2.1.1.4.13 RequestedIncompatibleQosStatus
2.1.1.4.14 LivelinessLostStatus
2.1.1.4.15 SampleLostStatus
2.1.1.4.16 SampleRejectedStatus
2.1.1.4.17 SampleRejectedStatusKind
2.1.1.4.18 StatusMask
2.1.1.4.19 SubscriptionMatchedStatus
2.1.1.5 Condition
2.1.1.5.1 Condition
class eprosima::fastdds::dds::Condition

The Condition class is the root base class for all the conditions that may be attached to a WaitSet.

Subclassed by eprosima::fastdds::dds::GuardCondition, eprosima::fastdds::dds::ReadCondition, eprosima::fastdds::dds::StatusCondition

eprosima::fastdds::dds::GuardCondition
eprosima::fastdds::dds::ReadCondition
eprosima::fastdds::dds::StatusCondition
2.1.1.5.2 ConditionSeq
2.1.1.5.3 GuardCondition
2.1.1.5.4 StatusCondition
2.1.1.5.5 Wait-set
2.1.1.6 LoanableArray
template<typename T, std::size_t num_items>
struct eprosima::fastdds::dds::LoanableArray : public std::array<T, num_items>

A type-safe, ordered collection of elements allocated on the stack, which can be loaned to a LoanableCollection.

2.1.1.7 LoanableCollection
class eprosima::fastdds::dds::LoanableCollection

A collection of generic opaque pointers that can receive the buffer from outside (loan).

This is an abstract class. See LoanableSequence for details.

2.1.1.8 LoanableSequence
2.1.1.9 StackAllocatedSequence

2.1.2 Domain

2.1.2.1 DomainParticipant【域参与者】
class eprosima::fastdds::dds::DomainParticipant : public eprosima::fastdds::dds::Entity

Class DomainParticipant used to group Publishers and Subscribers into a single working unit.

Subclassed by eprosima::fastdds::statistics::dds::DomainParticipant

2.1.2.2 DomainParticipantFactory
class eprosima::fastdds::dds::DomainParticipantFactory
create_participant()
delete_participant()
...
2.1.2.3 DomainParticipantFactoryQos 【配置 Qos 策略】
class eprosima::fastdds::dds::DomainParticipantFactoryQos

Class DomainParticipantFactoryQos, contains all the possible Qos that can be set for a determined participant. Please consult each of them to check for implementation details and default values.

2.1.2.4 DomainParticipantListener
class eprosima::fastdds::dds::DomainParticipantListener : public eprosima::fastdds::dds::PublisherListener, public eprosima::fastdds::dds::SubscriberListener, public eprosima::fastdds::dds::TopicListener

Class DomainParticipantListener, overrides behaviour towards certain events.

2.1.2.5 DomainParticipantQos
class eprosima::fastdds::dds::DomainParticipantQos

Class DomainParticipantQos, contains all the possible Qos that can be set for a determined participant. Please consult each of them to check for implementation details and default values.

2.1.3 Publisher

2.1.3.1 DataWriter 【发布数据】
class eprosima::fastdds::dds::DataWriter : public eprosima::fastdds::dds::DomainEntity

Class DataWriter, contains the actual implementation of the behaviour of the DataWriter.

2.1.3.2 DataWriterListener 【监听】
class eprosima::fastdds::dds::DataWriterListener

Class DataWriterListener, allows the end user to implement callbacks triggered by certain events.

Subclassed by eprosima::fastdds::dds::PublisherListener

eprosima::fastdds::dds::PublisherListener
# 端点匹配回调此函数
inline virtual void on_publication_matched(DataWriter *writer, const PublicationMatchedStatus &info)
This method is called when the Publisher is matched (or unmatched) against an endpoint.

# 错过截止日期时回调此函数
inline virtual void on_offered_deadline_missed(DataWriter *writer, const OfferedDeadlineMissedStatus &status)
A method called when a deadline is missed

# Qos不兼容回调此函数
inline virtual void on_offered_incompatible_qos(DataWriter *writer, const OfferedIncompatibleQosStatus &status)
A method called when an incompatible QoS is offered

# 发布者不活跃时回调此函数
inline virtual void on_liveliness_lost(DataWriter *writer, const LivelinessLostStatus &status)
Method called when the liveliness of a publisher is lost.
2.1.3.3 DataWriterQos 【DataWriter的Qos策略】
class eprosima::fastdds::dds::DataWriterQos

Class DataWriterQos, containing all the possible Qos that can be set for a determined DataWriter. Although these values can be and are transmitted during the Endpoint Discovery Protocol, not all of the behaviour associated with them has been implemented in the library. Please consult each of them to check for implementation details and default values.

2.1.3.4 Publisher 【给订阅者发布数据】
class eprosima::fastdds::dds::Publisher : public eprosima::fastdds::dds::DomainEntity

Class Publisher, used to send data to associated subscribers.

2.1.3.5 PublisherListener
class eprosima::fastdds::dds::PublisherListener : public eprosima::fastdds::dds::DataWriterListener

eprosima::fastdds::dds::DomainParticipantListener

Subclassed by eprosima::fastdds::dds::DomainParticipantListener

Class PublisherListener, allows the end user to implement callbacks triggered by certain events. It inherits all the DataWriterListener callbacks.

2.1.3.6 PublisherQos
class eprosima::fastdds::dds::PublisherQos

Class PublisherQos, containing all the possible Qos that can be set for a determined Publisher. Although these values can be set and are transmitted during the Endpoint Discovery Protocol, not all of the behaviour associated with them has been implemented in the library. Please consult each of them to check for implementation details and default values.

2.1.3.7 RTPSReliableWriterQos
class eprosima::fastdds::dds::RTPSReliableWriterQos

2.1.4 Subscriber

2.1.4.1 DataReader【订阅数据】
class eprosima::fastdds::dds::DataReader : public eprosima::fastdds::dds::DomainEntity

Class DataReader, contains the actual implementation of the behaviour of the Subscriber.

2.1.4.2 DataReaderListener【监听】
class eprosima::fastdds::dds::DataReaderListener

Class DataReaderListener, it should be used by the end user to implement specific callbacks to certain actions.

Subclassed by eprosima::fastdds::dds::SubscriberListener
# 收到消息回调此函数
inline virtual void on_data_available(DataReader *reader)
Virtual function to be implemented by the user containing the actions to be performed when new Data Messages are received.

# 端点匹配回调此函数
inline virtual void on_subscription_matched(DataReader *reader, const fastdds::dds::SubscriptionMatchedStatus &info)
Virtual method to be called when the subscriber is matched with a new Writer (or unmatched); i.e., when a writer publishing in the same topic is discovered.

# 错过截止日期时回调此函数
inline virtual void on_requested_deadline_missed(DataReader *reader, const fastrtps::RequestedDeadlineMissedStatus &status)
Virtual method to be called when a topic misses the deadline period

# 订阅者状态改变时回调此函数
inline virtual void on_liveliness_changed(DataReader *reader, const fastrtps::LivelinessChangedStatus &status)
Method called when the liveliness status associated to a subscriber changes.

# 接收到的数据样本被拒绝时回调此函数
inline virtual void on_sample_rejected(DataReader *reader, const fastrtps::SampleRejectedStatus &status)
Method called when a sample was rejected.

# Qos不兼容回调此函数
inline virtual void on_requested_incompatible_qos(DataReader *reader, const RequestedIncompatibleQosStatus &status)
Method called an incompatible QoS was requested.

# 数据样本丢失时回调此函数
inline virtual void on_sample_lost(DataReader *reader, const SampleLostStatus &status)
Method called when a sample was lost.
2.1.4.3 DataReaderQos 【DataReader的Qos策略】
class eprosima::fastdds::dds::DataReaderQos

Class DataReaderQos, containing all the possible Qos that can be set for a determined DataReader. Although these values can be set and are transmitted during the Endpoint Discovery Protocol, not all of the behaviour associated with them has been implemented in the library. Please consult each of them to check for implementation details and default values.

Subclassed by eprosima::fastdds::statistics::dds::DataReaderQos

2.1.4.4 InstanceStateKind
enum eprosima::fastdds::dds::InstanceStateKind

Indicates if the samples are from an alive DataWriter or not.

2.1.4.5 ReadCondition
class eprosima::fastdds::dds::ReadCondition : public eprosima::fastdds::dds::Condition

A Condition specifically dedicated to read operations and attached to one DataReader.

2.1.4.6 ReaderResourceLimitsQos
class eprosima::fastdds::dds::ReaderResourceLimitsQos

Qos Policy to configure the limit of the reader resources.

2.1.4.7 RTPSReliableReaderQos
class eprosima::fastdds::dds::RTPSReliableReaderQos

Qos Policy to configure the DisablePositiveACKsQos and the reader attributes.

2.1.4.8 SampleInfo
struct eprosima::fastdds::dds::SampleInfo

SampleInfo is the information that accompanies each sample that is ‘read’ or ‘taken.

2.1.4.9 SampleStateKind
enum eprosima::fastdds::dds::SampleStateKind

Indicates whether or not a sample has ever been read.

2.1.4.10 Subscriber
class eprosima::fastdds::dds::Subscriber : public eprosima::fastdds::dds::DomainEntity

Class Subscriber, contains the public API that allows the user to control the reception of messages. This class should not be instantiated directly. DomainRTPSParticipant class should be used to correctly create this element.

2.1.4.11 SubscriberListener
class eprosima::fastdds::dds::SubscriberListener : public eprosima::fastdds::dds::DataReaderListener

Class SubscriberListener, it should be used by the end user to implement specific callbacks to certain actions. It also inherits all DataReaderListener callbacks.

Subclassed by eprosima::fastdds::dds::DomainParticipantListener

2.1.4.12 SubscriberQos
class eprosima::fastdds::dds::SubscriberQos

Class SubscriberQos, contains all the possible Qos that can be set for a determined Subscriber. Although these values can be set and are transmitted during the Endpoint Discovery Protocol, not all of the behaviour associated with them has been implemented in the library. Please consult each of them to check for implementation details and default values.

2.1.4.13 TypeConsistencyQos
class eprosima::fastdds::dds::TypeConsistencyQos : public eprosima::fastdds::dds::QosPolicy

Qos Policy to configure the XTypes Qos associated to the DataReader.

2.1.4.14 ViewStateKind
enum eprosima::fastdds::dds::ViewStateKind

Indicates whether or not an instance is new.

2.1.5 Topic

2.1.5.1 TopicDataType
class eprosima::fastdds::dds::TopicDataType

Class TopicDataType used to provide the DomainRTPSParticipant with the methods to serialize, deserialize and get the key of a specific data type. The user should created a class that inherits from this one, where Serialize and deserialize methods MUST be implemented. ,

Subclassed by eprosima::fastdds::dds::builtin::TypeLookup_ReplyPubSubType, eprosima::fastdds::dds::builtin::TypeLookup_RequestPubSubType

2.1.5.2 TypeSupport
class eprosima::fastdds::dds::TypeSupport : public std::shared_ptr<fastdds::dds::TopicDataType>

Class TypeSupport used to provide the DomainRTPSParticipant with the methods to serialize, deserialize and get the key of a specific data type. The user should created a class that inherits from this one, where Serialize and deserialize methods MUST be implemented.

2.1.5.3 TopicDescription
class eprosima::fastdds::dds::TopicDescription

Class TopicDescription, represents the fact that both publications and subscriptions are tied to a single data-type

Subclassed by eprosima::fastdds::dds::ContentFilteredTopic, eprosima::fastdds::dds::Topic

2.1.5.4 Topic
class eprosima::fastdds::dds::Topic : public eprosima::fastdds::dds::DomainEntity, public eprosima::fastdds::dds::TopicDescription

Class Topic, represents the fact that both publications and subscriptions are tied to a single data-type

2.1.5.5 ContentFilteredTopic
class eprosima::fastdds::dds::ContentFilteredTopic : public eprosima::fastdds::dds::TopicDescription

Specialization of TopicDescription that allows for content-based subscriptions.

2.1.5.6 IContentFilter
struct eprosima::fastdds::dds::IContentFilter

The interface that content filter objects should implement.

2.1.5.7 IContentFilterFactory
struct eprosima::fastdds::dds::IContentFilterFactory

The interface that a factory of IContentFilter objects should implement.

2.1.5.8 TopicListener
class eprosima::fastdds::dds::TopicListener

Class TopicListener, it should be used by the end user to implement specific callbacks to certain actions.

Subclassed by eprosima::fastdds::dds::DomainParticipantListener

2.1.5.9 TopicQos
class eprosima::fastdds::dds::TopicQos

Class TopicQos, containing all the possible Qos that can be set for a determined Topic. Although these values can be set and are transmitted during the Endpoint Discovery Protocol, not all of the behaviour associated with them has been implemented in the library. Please consult each of them to check for implementation details and default values.

2.1.5.10 TypeIdV1
class eprosima::fastdds::dds::TypeIdV1 : public eprosima::fastdds::dds::Parameter_t, public eprosima::fastdds::dds::QosPolicy
2.1.5.11 TypeInformation
class eprosima::fastdds::dds::xtypes::TypeInformation : public eprosima::fastdds::dds::Parameter_t, public eprosima::fastdds::dds::QosPolicy
2.1.5.12 TypeObjectV1
class eprosima::fastdds::dds::TypeObjectV1 : public eprosima::fastdds::dds::Parameter_t, public eprosima::fastdds::dds::QosPolicy

2.2 RTPS

2.2.1 Attributes

2.2.1.1 BuiltinAttributes
class eprosima::fastrtps::rtps::BuiltinAttributes

Class BuiltinAttributes, to define the behavior of the RTPSParticipant builtin protocols.

2.2.1.2 c_default_RTPSParticipantAllocationAttributes
2.2.1.3 DiscoveryProtocol
2.2.1.4 DiscoverySettings
2.2.1.5 EndpointAttributes
2.2.1.6 ExternalLocators
2.2.1.7 HistoryAttributes
2.2.1.8 InitialAnnouncementConfig
2.2.1.9 ParticipantFilteringFlags
2.2.1.10 PropertyPolicy
2.2.1.11 PropertyPolicyHelper
2.2.1.12 ReaderAttributes
2.2.1.13 ReaderTimes
2.2.1.14 RemoteLocatorsAllocationAttributes
2.2.1.15 RemoteServerAttributes
2.2.1.16 RemoteServerList_t
2.2.1.17 RTPSParticipantAllocationAttributes
2.2.1.18 RTPSParticipantAttributes
2.2.1.19 RTPSWriterPublishMode
2.2.1.20 SendBuffersAllocationAttributes
2.2.1.21 SimpleEDPAttributes
2.2.1.22 TypeLookupSettings
2.2.1.23 VariableLengthDataLimits
2.2.1.24 WriterAttributes
2.2.1.25 WriterTimes
2.2.2 Builtin data
2.2.2.1 ContentFilterProperty
class eprosima::fastdds::rtps::ContentFilterProperty

Information about the content filter being applied by a reader.

2.2.3 Common

2.2.3.1 BinaryProperty
2.2.3.1.1 BinaryProperty
2.2.3.1.2 BinaryPropertyHelper
2.2.3.1.3 BinaryPropertySeq
2.2.3.2 CacheChange
2.2.3.2.1 CacheChange_t
2.2.3.2.2 ChangeForReader_t
2.2.3.2.3 ChangeForReaderCmp
2.2.3.2.4 ChangeForReaderStatus_t
2.2.3.2.5 ChangeKind_t
2.2.3.3 CDRMessage
2.2.3.3.1 CDRMessage_t
2.2.3.3.2 Macro definitions (#define)
2.2.3.4 EntityId
2.2.3.4.1 Const values
2.2.3.4.2 Macro definitions (#define)
2.2.3.4.3 EntityId_t
2.2.3.4.4 EntityId_t Operators
2.2.3.5 FragmentNumber
2.2.3.5.1 FragmentNumber_t
2.2.3.5.2 FragmentNumberSet_t
2.2.3.6 Guid
2.2.3.6.1 c_Guid_Unknown
2.2.3.6.2 GUID_t
2.2.3.6.3 GUID_t Operators
2.2.3.7 GuidPrefix
2.2.3.7.1 c_GuidPrefix_Unknown
2.2.3.7.2 GuidPrefix_t
2.2.3.7.3 GuidPrefix_t Operators
2.2.3.8 InstanceHandle
2.2.3.8.1 c_InstanceHandle_Unknown
2.2.3.8.2 InstanceHandle_t
2.2.3.8.3 InstanceHandle_t Operators
2.2.3.9 Locator
2.2.3.9.1 Macro definitions (#define)
2.2.3.9.2 IsAddressDefined
2.2.3.9.3 IsLocatorValid
2.2.3.9.4 Locator_t
2.2.3.9.5 LocatorList
2.2.3.9.6 LocatorListConstIterator
2.2.3.9.7 LocatorListIterator
2.2.3.9.8 LocatorsIterator
2.2.3.9.9 Locators
2.2.3.9.10 Locator Operators
2.2.3.10 LocatorSelectorEntry
2.2.3.11 LocatorSelector
2.2.3.12 LocatorWithMask
2.2.3.13 MatchingInfo
2.2.3.13.1 MatchingInfo
2.2.3.13.2 MatchingStatus
2.2.3.14 PortParameters
2.2.3.15 Property
2.2.3.15.1 Property
2.2.3.15.2 PropertyHelper
2.2.3.15.3 PropertySeq
2.2.3.16 RemoteLocators
2.2.3.16.1 RemoteLocators Operators
2.2.3.16.2 RemoteLocatorList
2.2.3.17 SampleIdentity
2.2.3.18 SequenceNumber
2.2.3.18.1 c_SequenceNumber_Unknown
2.2.3.18.2 SequenceNumber_t Operators
2.2.3.18.3 SequenceNumber_t
2.2.3.18.4 SequenceNumberDiff
2.2.3.18.5 SequenceNumberHash
2.2.3.18.6 SequenceNumberSet_t
2.2.3.18.7 sort_seqNum
2.2.3.19 SerializedPayload
2.2.3.19.1 Macro definitions (#define)
2.2.3.19.2 SerializedPayload_t
2.2.3.20 Time_t
2.2.3.20.1 Const values
2.2.3.20.2 Macro definitions (#define)
2.2.3.20.3 eprosima::fastrtps::Duration_t
2.2.3.20.4 eprosima::fastrtps::Time_t
2.2.3.20.5 Time_t Operators
2.2.3.20.6 Time_t
2.2.3.21 Token
2.2.3.21.1 AuthenticatedPeerCredentialToken
2.2.3.21.2 DataHolder
2.2.3.21.3 DataHolderHelper
2.2.3.21.4 DataHolderSeq
2.2.3.21.5 IdentityStatusToken
2.2.3.21.6 IdentityToken
2.2.3.21.7 PermissionsCredentialToken
2.2.3.21.8 PermissionsToken
2.2.3.21.9 Token
2.2.3.22 Types
2.2.3.22.1 BuiltinEndpointSet_t
2.2.3.22.2 Const values
2.2.3.22.3 Count_t
2.2.3.22.4 Macro definitions (#define)
2.2.3.22.5 DurabilityKind_t
2.2.3.22.6 Endianness_t
2.2.3.22.7 EndpointKind_t
2.2.3.22.8 octet
2.2.3.22.9 ProtocolVersion_t
2.2.3.22.10 ReliabilityKind_t
2.2.3.22.11 SubmessageFlag
2.2.3.22.12 TopicKind_t
2.2.3.22.13 VendorId_t
2.2.3.23 WriteParams

2.2.4 Endpoint

class eprosima::fastrtps::rtps::Endpoint

Class Endpoint, all entities of the RTPS network derive from this class. Although the RTPSParticipant is also defined as an endpoint in the RTPS specification, in this implementation the RTPSParticipant class does not inherit from the endpoint class. Each Endpoint object owns a pointer to the RTPSParticipant it belongs to.

Subclassed by eprosima::fastrtps::rtps::RTPSReader, eprosima::fastrtps::rtps::RTPSWriter

2.2.5 Exceptions

2.2.5.1 Exception
class eprosima::fastrtps::rtps::Exception : public exception

This abstract class is used to create exceptions.

Subclassed by eprosima::fastrtps::rtps::security::SecurityException

2.2.6 Flow control

2.2.6.1 FlowControllerDescriptor
struct eprosima::fastdds::rtps::FlowControllerDescriptor

Configuration values for creating flow controllers.

This descriptor is used to define the configuration applied in the creation of a flow controller.

Since 2.4.0

2.2.6.2 FlowControllerSchedulerPolicy

2.2.7 History

2.2.7.1 History
class eprosima::fastrtps::rtps::History

Class History, container of the different CacheChanges and the methods to access them.

Subclassed by eprosima::fastrtps::rtps::ReaderHistory, eprosima::fastrtps::rtps::WriterHistory

2.2.7.2 IChangePool
2.2.7.3 IPayloadPool
2.2.7.4 ReaderHistory
2.2.7.5 WriterHistory

2.2.8 RTPSParticipant

2.2.8.1 ParticipantDiscoveryInfo
2.2.8.1.1 ParticipantAuthenticationInfo
2.2.8.1.2 ParticipantDiscoveryInfo
2.2.8.1.3 ParticipantProxyData
2.2.8.1.4 ReaderDiscoveryInfo
2.2.8.1.5 ReaderProxyData
2.2.8.1.6 WriterDiscoveryInfo
2.2.8.1.7 WriterProxyData
2.2.8.2 RTPSParticipant
2.2.8.3 RTPSParticipantListener

2.2.9 RTPSReader

2.2.9.1 ReaderListener
2.2.9.2 RTPSReader

2.2.10 Resources

2.2.10.1 MemoryManagementPolicy
enum eprosima::fastrtps::rtps::MemoryManagementPolicy

Enum MemoryuManagementPolicy_t, indicated the way memory is managed in terms of dealing with CacheChanges

2.2.11 RTPSDomain

class eprosima::fastrtps::rtps::RTPSDomain

Class RTPSDomain,it manages the creation and destruction of RTPSParticipant RTPSWriter and RTPSReader. It stores a list of all created RTPSParticipant. It has only static methods.

2.2.12 RTPSWriter

2.2.12.1 LivelinessData
struct eprosima::fastrtps::rtps::LivelinessData

A struct keeping relevant liveliness information of a writer.

2.2.12.2 RTPSWriter
2.2.12.3 WriterListener

2.3 Transport

2.3.1 Transport Generic Interfaces

2.3.1.1 TransportDescriptorInterface
struct eprosima::fastdds::rtps::TransportDescriptorInterface
2.3.1.2 TransportInterface
2.3.1.3 TransportReceiverInterface
2.3.1.4 SocketTransportDescriptor
2.3.2 Chaining of transports
2.3.2.1 ChainingTransportDescriptor
2.3.2.2 ChainingTransport
2.3.3 UDP Transport
2.3.3.1 UDPTransportDescriptor
2.3.3.2 UDPv4TransportDescriptor
2.3.3.3 UDPv6TransportDescriptor
2.3.3.4 test_UDPv4TransportDescriptor
2.3.4 TCP Transport
2.3.4.1 TCPTransportDescriptor
2.3.4.2 TCPv4TransportDescriptor
2.3.4.3 TCPv6TransportDescriptor
2.3.5 Shared Memory Transport
2.3.5.1 SharedMemTransportDescriptor

2.4 LOG

2.4.1 Colors

A collection of macros for ease the stream coloring.

2.4.1.1 Color Blue
C_BLUE"\033[34m"
2.4.1.2 Color Bright
C_BRIGHT"\033[1m"
2.4.1.3 Color Bright Blue
C_B_BLUE"\033[34;1m"
2.4.1.4 Color Bright Cyan
C_B_CYAN"\033[36;1m"
2.4.1.5 Color Bright Green
C_B_GREEN"\033[32;1m"
2.4.1.6 Color Bright Magenta
C_B_MAGENTA"\033[35;1m"
2.4.1.7 Color Bright Red
C_B_RED"\033[31;1m"
2.4.1.8 Color Bright White
C_B_WHITE"\033[37;1m"
2.4.1.9 Color Bright Yellow
C_B_YELLOW"\033[33;1m"
2.4.1.10 Color Cyan
C_CYAN"\033[36m"
2.4.1.11 Color Def
C_DEF"\033[m"
2.4.1.12 Color Green
C_GREEN"\033[32m"
2.4.1.13 Color Magenta
C_MAGENTA"\033[35m"
2.4.1.14 Color Red
C_RED"\033[31m"
2.4.1.15 Color White
C_WHITE"\033[37m"
2.4.1.16 Color Yellow
C_YELLOW"\033[33m"

2.4.2 FileConsumer

class eprosima::fastdds::dds::FileConsumer : public eprosima::fastdds::dds::OStreamConsumer


FileConsumer()
Default constructor: filename = “output.log”, append = false.

FileConsumer(const std::string &filename, bool append = false)
Constructor with parameters.

Parameters:
* filename – path of the output file where the log will be wrote.
* append – indicates if the consumer must append the content in the filename.

2.4.3 Log

class eprosima::fastdds::dds::Log

Logging utilities. Logging is accessed through the three macros above, and configuration on the log output can be achieved through static methods on the class. Logging at various levels can be disabled dynamically (through the Verbosity level) or statically (through the LOG_NO_[VERB] macros) for maximum performance.

2.4.4 LogConsumer

class LogConsumer
Consumes a log entry to output it somewhere.

Subclassed by eprosima::fastdds::dds::OStreamConsumer

2.4.5 EPROSIMA_LOG_ERROR

2.4.6 EPROSIMA_LOG_INFO

2.4.7 EPROSIMA_LOG_WARNING

2.4.8 OStreamConsumer

2.4.9 StdoutConsumer

2.4.10 StdoutErrConsumer

2.5 Statistics

2.5.1 DomainParticipant

class eprosima::fastdds::statistics::dds::DomainParticipant : public eprosima::fastdds::dds::DomainParticipant

Class DomainParticipant: extends standard DDS DomainParticipant class to include specific methods for the Statistics module

2.5.2 DataWriterQos

class eprosima::fastdds::statistics::dds::DataWriterQos : public eprosima::fastdds::dds::DataWriterQos

Class DataWriterQos: extends standard DDS DataWriterQos class to include specific default constructor for the recommended DataWriterQos profile.

2.5.3 DataReaderQos

class eprosima::fastdds::statistics::dds::DataReaderQos : public eprosima::fastdds::dds::DataReaderQos

Class DataReaderQos: extends standard DDS DataReaderQos class to include specific default constructor for the recommended DataReaderQos profile.

2.5.4 Topic names

参考

1、Fast DDS 官方–C++ API Reference
2、Fast DDS 深入理解,吐血整理

猜你喜欢

转载自blog.csdn.net/qq_38880380/article/details/135420850
dds