CoreDX Data Distribution Service
The High Performance, Small Footprint DDS from Twin Oaks Computing, Inc
|
The Publisher configures, creates, manages and destroys DataWriters.
|
inline |
|
inline |
This operation copies the QoS settings in a_topic_qos to the corresponding settings in a_datawriter_qos. The a_datawriter_qos parameter is populated with a copy of the QoS policies from the a_topic_qos structure. QoS entries in the datawriter qos structure will be overwritten with the values from the topic.
|
inline |
This operation creates a DataWriter. The created DataWriter is contained within the Publisher p. It is associated with the Topic, ContentFilteredTopic, or MultiTopic indicated by a_topic, and has the DataWriterQos indicated by qos. The qos argument may be passed DDS.DATAWRITER_QOS_DEFAULT, which indicates that the Publisher should use its currently configured default data writer QoS values. The DataWriterListener a_listener, is installed at creation time.
The created DataWriter (if not NULL) must be destroyed by a call to Publisher.delete_datawriter().
This routine will fail if the provided QoS settings are internally inconsistent. In this case, the routine will return NULL.
|
inline |
This operation deletes all the DataWriters created by means of the Publisher.create_datawriter() operation on the Publisher p. This routine will recursively call the corresponding delete_contained_entities() operation on each of the contained DataWriter objects. After successful execution, the application may delete the Publisher by calling DomainParticipant.delete_publisher().
If any of the objects cannot be deleted, this routine will return ReturnCode_t.RETCODE_PRECONDITION_NOT_MET.
|
inline |
This operation deletes a DataWriter. If the provided DataWriter a_datawriter was not created by Publisher p, the routine will fail and will return ReturnCode_t.RETCODE_PRECONDITION_NOT_MET.
|
inlinevirtual |
Enables the Publisher. A Publisher is created either enabled or not based on the DomainParticipantQos setting entity_factory. When a Publisher is not enabled, only the following sub-set of all Publisher operations are legal:
Any other operation may return the ReturnCode_t.RETCODE_NOT_ENABLED error. Publisher_enable() may be called on an already enabled Subscriber [it will have no effect].
Reimplemented from Entity.
|
inline |
|
inline |
Provides access to the default DataWriterQos settings held in the Publisher p. The provided qos argument is populated with the current default qos settings.
|
inlinevirtual |
|
inline |
This operation returns the currently installed PublisherListener.
|
inline |
This operation returns the DomainParticipant this Publisher belongs to.
|
inline |
Returns the current PublisherQos settings held in the Publisher p. The qos parameter is populated with a copy of the current Publisher QoS properties.
|
inline |
This operation retrieves a previously-created DataWriter contained in the Publisher, attached to a Topic named topic_name. If multiple DataWriters are found, one of them will be returned. If no matching DataWriter is found, this routine will return NULL.
|
inline |
|
inline |
Sets the default DataWriterQos held in the Publisher. This default qos will be used during subsequent calls to Publisher.create_datawriter() if the special DDS.DATAWRITER_QOS_DEFAULT value is provided for qos. This routine may fail if the provided qos argument is not internally consistent. In this case, ReturnCode_t.RETCODE_INCONSISTENT_POLICY will be returned, and no changes will be made to the Publisher.
|
inline |
Installs a PublisherListener on Publisher p. Only one listener may be attached to a Publisher 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.
|
inline |
Sets the PublisherQos values. These QoS values affect the behavior of the Publisher. This routine may fail if the provided qos argument is not internally consistent. In this case, ReturnCode_t.RETCODE_INCONSISTENT_POLICY will be returned, and no changes will be made to the Publisher QoS.
|
inline |
|
inline |
Block until all writers contained by this publisher have received acknowledgements.
This routine will block until all data written by contained writers has been acknowledged, or until the 'max_wait' duration has passed. 'max_wait' can be set to INFINITE, in which case this routine may block indefinitely.
DDS_RETCODE_TIME_OUT | returned if 'max_wait' passes before all acks are received |
DDS_RETCODE_OK | returned if all acks have been received before 'max_wait' |