#include <managed_topic.h>
Public Member Functions | |
void | get_inconsistent_topic_status (InconsistentTopicStatus% status) |
Allows the application to retrieve the DDS::StatusKind::INCONSISTENT_TOPIC_STATUS status of a DDS::Topic. | |
void | set_qos (TopicQos^ qos) |
Set the topic QoS. | |
void | set_qos_with_profile (System::String^ library_name, System::String^ profile_name) |
<<eXtension>> Change the QoS of this topic using the input XML QoS profile. | |
void | get_qos (TopicQos^ qos) |
Get the topic QoS. | |
void | set_listener (TopicListener^ l, StatusMask mask) |
Set the topic listener. | |
TopicListener^ | get_listener () |
Get the topic listener. | |
virtual System::String^ | get_type_name () |
Get the associated type_name . | |
virtual System::String^ | get_name () |
Get the name used to create this DDS::TopicDescription . | |
virtual DomainParticipant^ | get_participant () |
Get the DDS::DomainParticipant to which the DDS::TopicDescription belongs. | |
virtual void | enable () override |
Enables the DDS::Entity. | |
virtual StatusCondition^ | get_statuscondition () override |
Allows access to the DDS::StatusCondition associated with the DDS::Entity. | |
virtual StatusMask | get_status_changes () override |
Retrieves the list of communication statuses in the DDS::Entity that are triggered. | |
virtual InstanceHandle_t | get_instance_handle () override |
Allows access to the DDS::InstanceHandle_t associated with the DDS::Entity. | |
Static Public Member Functions | |
static Topic^ | narrow (ITopicDescription^ topic_description) |
Narrow the given DDS::TopicDescription pointer to a DDS::Topic pointer. |
DDS::Topic is the only DDS::TopicDescription that can be used for publications and therefore associated with a DDS::DataWriter.
The following operations may be called even if the DDS::Topic is not enabled. Other operations will fail with the value DDS::Retcode_NotEnabled if called on a disabled DDS::Topic:
static Topic ^ DDS::Topic::narrow | ( | ITopicDescription^ | topic_description | ) | [static] |
Narrow the given DDS::TopicDescription pointer to a DDS::Topic pointer.
void DDS::Topic::get_inconsistent_topic_status | ( | InconsistentTopicStatus% | status | ) |
Allows the application to retrieve the DDS::StatusKind::INCONSISTENT_TOPIC_STATUS status of a DDS::Topic.
Retrieve the current DDS::InconsistentTopicStatus
status | <<inout>> Status to be retrieved. Cannot be NULL. |
One | of the Standard Return Codes |
void DDS::Topic::set_qos | ( | TopicQos^ | qos | ) |
Set the topic QoS.
The DDS::TopicQos::topic_data and DDS::TopicQos::deadline, DDS::TopicQos::latency_budget, DDS::TopicQos::transport_priority and DDS::TopicQos::lifespan can be changed. The other policies are immutable.
qos | <<in>> Set of policies to be applied to DDS::Topic. |
One | of the Standard Return Codes, DDS::Retcode_ImmutablePolicy if immutable policy is changed, or DDS::Retcode_InconsistentPolicy if policies are inconsistent |
void DDS::Topic::set_qos_with_profile | ( | System::String^ | library_name, | |
System::String^ | profile_name | |||
) |
<<eXtension>> Change the QoS of this topic using the input XML QoS profile.
The DDS::TopicQos::topic_data and DDS::TopicQos::deadline, DDS::TopicQos::latency_budget, DDS::TopicQos::transport_priority and DDS::TopicQos::lifespan can be changed. The other policies are immutable.
library_name | <<in>> Library name containing the XML QoS profile. If library_name is null RTI Data Distribution Service will use the default library (see DDS::DomainParticipant::set_default_library). | |
profile_name | <<in>> XML QoS Profile name. If profile_name is null RTI Data Distribution Service will use the default profile (see DDS::DomainParticipant::set_default_profile). |
One | of the Standard Return Codes, DDS::Retcode_ImmutablePolicy if immutable policy is changed, or DDS::Retcode_InconsistentPolicy if policies are inconsistent |
void DDS::Topic::get_qos | ( | TopicQos^ | qos | ) |
Get the topic QoS.
This method may potentially allocate memory depending on the sequences contained in some QoS policies.
qos | <<inout>> QoS to be filled up. Cannot be NULL. |
One | of the Standard Return Codes |
void DDS::Topic::set_listener | ( | TopicListener^ | l, | |
StatusMask | mask | |||
) |
Set the topic listener.
l | <<in>> Listener to be installed on entity. | |
mask | <<in>> Changes of communication status to be invoked on the listener. |
One | of the Standard Return Codes |
TopicListener ^ DDS::Topic::get_listener | ( | ) |
Get the topic listener.
virtual System::String ^ DDS::Topic::get_type_name | ( | ) | [virtual] |
Get the associated type_name
.
The type name defines a locally unique type for the publication or the subscription.
The type_name
corresponds to a unique string used to register a type via the FooTypeSupport::register_type method.
Thus, the type_name
implies an association with a corresponding DDS::TypeSupport and this DDS::TopicDescription.
Implements DDS::ITopicDescription.
virtual System::String ^ DDS::Topic::get_name | ( | ) | [virtual] |
Get the name used to create this DDS::TopicDescription .
Implements DDS::ITopicDescription.
virtual DomainParticipant ^ DDS::Topic::get_participant | ( | ) | [virtual] |
Get the DDS::DomainParticipant to which the DDS::TopicDescription belongs.
Implements DDS::ITopicDescription.
virtual void DDS::Topic::enable | ( | ) | [override, virtual] |
Enables the DDS::Entity.
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 DDS::Entity.
By default, ENTITY_FACTORY is set so that it is not necessary to explicitly call DDS::Entity::enable on newly created entities.
The DDS::Entity::enable operation is idempotent. Calling enable on an already enabled Entity returns OK and has no effect.
If a DDS::Entity has not yet been enabled, the following kinds of operations may be invoked on it:
It is legal to delete an DDS::Entity 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_PreconditionNotMet.
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.
One | of the Standard Return Codes, Standard Return Codes or DDS::Retcode_PreconditionNotMet. |
Implements DDS::Entity.
virtual StatusCondition ^ DDS::Topic::get_statuscondition | ( | ) | [override, virtual] |
Allows access to the DDS::StatusCondition associated with the DDS::Entity.
The returned condition can then be added to a DDS::WaitSet so that the application can wait for specific status changes that affect the DDS::Entity.
Implements DDS::Entity.
virtual StatusMask DDS::Topic::get_status_changes | ( | ) | [override, virtual] |
Retrieves the list of communication statuses in the DDS::Entity 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.
Implements DDS::Entity.
virtual InstanceHandle_t DDS::Topic::get_instance_handle | ( | ) | [override, virtual] |
Allows access to the DDS::InstanceHandle_t associated with the DDS::Entity.
This operation returns the DDS::InstanceHandle_t that represents the DDS::Entity.
Implements DDS::Entity.