RTI Connext Modern C++ API  Version 6.0.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
dds::core::policy::GroupData Class Reference

#include <dds/core/policy/CorePolicy.hpp>

Public Member Functions

 GroupData ()
 Create a GroupData instance.
 
 GroupData (const dds::core::ByteSeq &seq)
 Create a GroupData instance with a sequence of bytes.
 
 GroupData (const uint8_t *value_begin, const uint8_t *value_end)
 Create a GroupData instance with a sequence of bytes.
 
template<typename OCTET_ITER >
GroupDatavalue (OCTET_ITER the_begin, OCTET_ITER the_end)
 Sets the value for this GroupData.
 
const dds::core::ByteSeq value () const
 Getter (see setter with the same name)
 
dds::core::ByteSeqvalue (dds::core::ByteSeq &dst) const
 Sets the value for this GroupData.
 
const uint8_t * begin () const
 Beginning of the range of bytes.
 
const uint8_t * end () const
 End of the range of bytes.
 

Detailed Description

Entity:
dds::pub::Publisher, dds::sub::Subscriber
Properties:
RxO = NO
Changeable = YES
See Also
dds::sub::builtin_subscriber

Usage

The additional information is attached to a dds::pub::Publisher or dds::sub::Subscriber. This extra data is not used by RTI Connext itself. When a remote application discovers the dds::pub::Publisher or dds::sub::Subscriber, it can access that information and use it for its own purposes.

Use cases for this QoS policy, as well as the dds::core::policy::TopicData and dds::core::policy::UserData, are often application-to-application identification, authentication, authorization, and encryption purposes. For example, applications can use Group or User Data to send security certificates to each other for RSA-type security.

In combination with dds::sub::DataReaderListener, dds::pub::DataWriterListener and operations such as dds::pub::ignore and dds::sub::ignore, this QoS policy can help an application to define and enforce its own security policies. For example, an application can implement matching policies similar to those of the dds::core::policy::Partition, except the decision can be made based on an application-defined policy.

The use of this QoS is not limited to security; it offers a simple, yet flexible extensibility mechanism.

Important: RTI Connext stores the data placed in this policy in pre-allocated pools. It is therefore necessary to configure RTI Connext with the maximum size of the data that will be stored in policies of this type. This size is configured with rti::core::policy::DomainParticipantResourceLimits::publisher_group_data_max_length and rti::core::policy::DomainParticipantResourceLimits::subscriber_group_data_max_length.

See Also
UserData

Constructor & Destructor Documentation

dds::core::policy::GroupData::GroupData ( )
inline

Create a GroupData instance.

dds::core::policy::GroupData::GroupData ( const dds::core::ByteSeq seq)
inlineexplicit

Create a GroupData instance with a sequence of bytes.

dds::core::policy::GroupData::GroupData ( const uint8_t *  value_begin,
const uint8_t *  value_end 
)
inline

Create a GroupData instance with a sequence of bytes.

Member Function Documentation

template<typename OCTET_ITER >
GroupData& dds::core::policy::GroupData::value ( OCTET_ITER  the_begin,
OCTET_ITER  the_end 
)
inline

Sets the value for this GroupData.

const dds::core::ByteSeq dds::core::policy::GroupData::value ( ) const
inline

Getter (see setter with the same name)

dds::core::ByteSeq& dds::core::policy::GroupData::value ( dds::core::ByteSeq dst) const
inline

Sets the value for this GroupData.

const uint8_t* dds::core::policy::GroupData::begin ( ) const
inline

Beginning of the range of bytes.

const uint8_t* dds::core::policy::GroupData::end ( ) const
inline

End of the range of bytes.


RTI Connext Modern C++ API Version 6.0.0 Copyright © Sun Mar 3 2019 Real-Time Innovations, Inc