CoreDX DDS
C# Reference Manual

Publisher Class Reference
[DDS Entities]

The Publisher configures, creates, manages and destroys DataWriters. More...

Inheritance diagram for Publisher:
DomainEntity Entity

List of all members.

Public Member Functions

override ReturnCode_t enable ()
override InstanceHandle_t get_instance_handle ()
DomainParticipant get_participant ()
DataWriter create_datawriter (Topic topic, DataWriterQos dw_qos, DataWriterListener listener, uint mask)
ReturnCode_t delete_datawriter (DataWriter datawriter)
ReturnCode_t delete_contained_entities ()
DataWriter lookup_datawriter (String topic_name)
ReturnCode_t set_qos (PublisherQos qos)
ReturnCode_t get_qos (PublisherQos qos)
ReturnCode_t set_listener (PublisherListener new_listener, uint mask)
PublisherListener get_listener ()
ReturnCode_t suspend_publications ()
ReturnCode_t resume_publications ()
ReturnCode_t begin_coherent_changes ()
ReturnCode_t end_coherent_changes ()
ReturnCode_t wait_for_acknowledgments (Duration_t max_wait)
 Block until all writers contained by this publisher have received acknowledgements.
ReturnCode_t set_default_datawriter_qos (DataWriterQos qos)
ReturnCode_t get_default_datawriter_qos (DataWriterQos qos)
ReturnCode_t copy_from_topic_qos (DataWriterQos qos, TopicQos topic_qos)

Detailed Description

The Publisher configures, creates, manages and destroys DataWriters.


Member Function Documentation

ReturnCode_t begin_coherent_changes (  )  [inline]
Not Yet Supported:
This operation is not yet implemented.
ReturnCode_t copy_from_topic_qos ( DataWriterQos  qos,
TopicQos  topic_qos 
) [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.

DataWriter create_datawriter ( Topic  topic,
DataWriterQos  dw_qos,
DataWriterListener  listener,
uint  mask 
) [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.

ReturnCode_t delete_contained_entities (  )  [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.

ReturnCode_t delete_datawriter ( DataWriter  datawriter  )  [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.

override ReturnCode_t enable (  )  [inline, virtual]

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.

ReturnCode_t end_coherent_changes (  )  [inline]
Not Yet Supported:
This operation is not yet implemented.
ReturnCode_t get_default_datawriter_qos ( DataWriterQos  qos  )  [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.

override InstanceHandle_t get_instance_handle (  )  [inline, virtual]

Gets the handle that locally identifies this Entity.

Reimplemented from Entity.

PublisherListener get_listener (  )  [inline]

This operation returns the currently installed PublisherListener.

DomainParticipant get_participant (  )  [inline]

This operation returns the DomainParticipant this Publisher belongs to.

ReturnCode_t get_qos ( PublisherQos  qos  )  [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.

DataWriter lookup_datawriter ( String  topic_name  )  [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.

ReturnCode_t resume_publications (  )  [inline]
Not Yet Supported:
This operation is not yet implemented.
ReturnCode_t set_default_datawriter_qos ( DataWriterQos  qos  )  [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.

ReturnCode_t set_listener ( PublisherListener  new_listener,
uint  mask 
) [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.

ReturnCode_t set_qos ( PublisherQos  qos  )  [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.

ReturnCode_t suspend_publications (  )  [inline]
Not Yet Supported:
This operation is not yet implemented.
ReturnCode_t wait_for_acknowledgments ( Duration_t  max_wait  )  [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.

Return values:
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'
 All Classes Functions Variables Properties

© 2009-2013 Twin Oaks Computing, Inc
Castle Rock, CO 80108
All rights reserved.