Public Member Functions
|virtual DDS_ReturnCode_t||enable ()=0|
|Enables the DDSEntity. |
|virtual DDSStatusCondition *||get_statuscondition ()=0|
|Allows access to the DDSStatusCondition associated with the DDSEntity. |
|virtual DDS_StatusMask||get_status_changes ()=0|
|Retrieves the list of communication statuses in the DDSEntity that are triggered. |
|virtual DDS_InstanceHandle_t||get_instance_handle ()=0|
|Allows access to the DDS_InstanceHandle_t associated with the DDSEntity. |
This operation must be provided by each of the derived DDSEntity classes (DDSDomainParticipant, DDSTopic, DDSPublisher, DDSDataWriter, DDSSubscriber, and DDSDataReader) so that the policies that are meaningful to each DDSEntity can be set.
set_qos()is invoked after the DDSEntity is enabled and it attempts to change the value of an immutable policy, the operation will fail and return DDS_RETCODE_IMMUTABLE_POLICY.
Certain values of QoS policies can be incompatible with the settings of the other policies. The
set_qos() operation will also fail if it specifies a set of values that, once combined with the existing values, would result in an inconsistent set of policies. In this case, the operation will fail and return DDS_RETCODE_INCONSISTENT_POLICY.
If the application supplies a non-default value for a QoS policy that is not supported by the implementation of the service, the set_qos operation will fail and return DDS_RETCODE_UNSUPPORTED.
set_qos()operation succeeds. This is indicated by a return code of DDS_RETCODE_OK. In all other cases, none of the policies are modified.
set_qosoperation to indicate that the QoS of the DDSEntity should be changed to match the current default QoS set in the DDSEntity's factory. The operation set_qos cannot modify the immutable QoS, so a successful return of the operation indicates that the mutable QoS for the Entity has been modified to match the current default for the DDSEntity's factory.
The set of policies specified in the
qos parameter are applied on top of the existing QoS, replacing the values of any policies previously set.
Possible error codes are Standard Return Codes.DDSListener on the DDSEntity. The listener will only be invoked on the changes of communication status indicated by the specified
This operation must be provided by each of the derived DDSEntity classes (DDSDomainParticipant, DDSTopic, DDSPublisher, DDSDataWriter, DDSSubscriber, and DDSDataReader), so that the listener is of the concrete type suitable to the particular DDSEntity.
It is permitted to use NULL as the value of the listener. The NULL listener behaves as if the
mask is DDS_STATUS_MASK_NONE.
set_listener()will replace it with the new one. Consequently, if the value NULL is passed for the listener parameter to the set_listener operation, any existing listener will be removed.
This operation must be provided by each of the derived DDSEntity classes (DDSDomainParticipant, DDSTopic, DDSPublisher, DDSDataWriter, DDSSubscriber, and DDSDataReader) so that the listener is of the concrete type suitable to the particular DDSEntity.
If no listener is installed on the DDSEntity, this operation will return NULL.
|virtual DDS_ReturnCode_t DDSEntity::enable||(||)||
Enables the DDSEntity.
This operation enables the Entity. Entity objects can be created either enabled or disabled. This is controlled by the value of the ENTITY_FACTORY QoS policy on the corresponding factory for the DDSEntity.
The DDSEntity::enable operation is idempotent. Calling enable on an already enabled Entity returns OK and has no effect.
If a DDSEntity has not yet been enabled, the following kinds of operations may be invoked on it:
It is legal to delete an DDSEntity that has not been enabled by calling the proper operation on its factory.
Entities created from a factory that is disabled are created disabled, regardless of the setting of the DDS_EntityFactoryQosPolicy.
Calling enable on an Entity whose factory is not enabled will fail and return DDS_RETCODE_PRECONDITION_NOT_MET.
If DDS_EntityFactoryQosPolicy::autoenable_created_entities is TRUE, the enable operation on a factory will automatically enable all entities created from that factory.
Listeners associated with an entity are not called until the entity is enabled.
Conditions associated with a disabled entity are "inactive," that is, they have a
trigger_value == FALSE.
|virtual DDSStatusCondition* DDSEntity::get_statuscondition||(||)||
|virtual DDS_StatusMask DDSEntity::get_status_changes||(||)||
Retrieves the list of communication statuses in the DDSEntity that are triggered.
That is, the list of statuses whose value has changed since the last time the application read the status using the get_*_status() method.
When the entity is first created or if the entity is not enabled, all communication statuses are in the "untriggered" state so the list returned by the get_status_changes operation will be empty.
The list of statuses returned by the get_status_changes operation refers to the status that are triggered on the Entity itself and does not include statuses that apply to contained entities.
|virtual DDS_InstanceHandle_t DDSEntity::get_instance_handle||(||)||