Topic is the basic description of data to be published or subscribed. More...
Public Member Functions | |
const char * | get_type_name () |
This operation returns type_name of the provided Topic. | |
const char * | get_name () |
This operation returns topic name of the provided Topic. | |
DomainParticipant * | get_participant () |
This operation returns DomainParticipant that owns the Topic. | |
StatusMask | get_status_changes () |
This returns the list of triggered communication statuses in the Topic. | |
ReturnCode_t | enable () |
Enables the Topic. | |
ReturnCode_t | set_qos (TopicQos &qos) |
Sets the TopicQos values. | |
ReturnCode_t | get_qos (TopicQos *qos) |
Returns the current TopicQos settings held in the Topic t. | |
ReturnCode_t | set_listener (TopicListener *a_listener, StatusMask mask) |
Installs a TopicListener on Topic t. | |
TopicListener * | get_listener () |
This operation returns the currently installed TopicListener. | |
ReturnCode_t | get_inconsistent_topic_status (InconsistentTopicStatus *a_status) |
Provides access to the InconsistentTopicStatus of the Topic. |
Topic is the basic description of data to be published or subscribed.
A topic is identified by a name and a type. A Topic is created by calling DomainParticipant::create_topic(). Prior to creating a Topic, the associated data type must be registered with the DomainParticipant via a call to the TypeSupport::register_type() function. [The register_type() function is auto-generated 'type-specific' code.]
ReturnCode_t DDS::Topic::enable | ( | ) | [virtual] |
Enables the Topic.
A Topic is created either enabled or not based on the DomainParticipantQos setting entity_factory. When a Topic is not enabled, only the following sub-set of all Topic operations are legal:
Any other operation may return the NOT_ENABLED error. Topic::enable() may be called on an already enabled Topic [it will have no effect].
Reimplemented from DDS::Entity.
ReturnCode_t DDS::Topic::get_inconsistent_topic_status | ( | InconsistentTopicStatus * | a_status | ) |
Provides access to the InconsistentTopicStatus of the Topic.
As a side-effect, this routine will reset the total_count_change status field to zero.
TopicListener* DDS::Topic::get_listener | ( | ) |
This operation returns the currently installed TopicListener.
ReturnCode_t DDS::Topic::get_qos | ( | TopicQos * | qos | ) |
Returns the current TopicQos settings held in the Topic t.
This routine copies the Topic QoS properites into qos.
StatusMask DDS::Topic::get_status_changes | ( | ) | [virtual] |
This returns the list of triggered communication statuses in the Topic.
If the Topic is not enabled, all statuses will be untriggered.
Implements DDS::Entity.
ReturnCode_t DDS::Topic::set_listener | ( | TopicListener * | a_listener, | |
StatusMask | mask | |||
) |
Installs a TopicListener on Topic t.
Only one listener may be attached to a Topic at a time. A call to set_listener() will replace any current listener with a_listener.
a_listener can be NULL, which indicates a listener that does nothing.
The infrastructure will make an internal copy of the listener structure so that it need not be persisted by the application.