RTI Connext .Net APIs
Version 6.0.0
|
<<interface>> The most basic description of the data to be published and subscribed. More...
#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. More... | |
void | set_qos (TopicQos^ qos) |
Set the topic QoS. More... | |
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. More... | |
void | get_qos (TopicQos^ qos) |
Get the topic QoS. More... | |
void | set_listener (TopicListener^ l, StatusMask mask) |
Set the topic listener. More... | |
TopicListener ^ | get_listener () |
Get the topic listener. More... | |
virtual System::String ^ | get_type_name () |
Get the associated type_name . More... | |
virtual System::String ^ | get_name () |
Get the name used to create this ITopicDescription . More... | |
virtual DomainParticipant ^ | get_participant () |
Get the DDS::DomainParticipant to which the ITopicDescription belongs. More... | |
virtual void | enable () override |
Enables the DDS::Entity. More... | |
virtual StatusCondition ^ | get_statuscondition () override |
Allows access to the DDS::StatusCondition associated with the DDS::Entity. More... | |
virtual StatusMask | get_status_changes () override |
Retrieves the list of communication statuses in the DDS::Entity that are triggered. More... | |
virtual InstanceHandle_t | get_instance_handle () override |
Allows access to the DDS::InstanceHandle_t associated with the DDS::Entity. More... | |
Static Public Member Functions | |
static Topic ^ | narrow (ITopicDescription^ topic_description) |
Narrow the given ITopicDescription pointer to a DDS::Topic pointer. More... | |
<<interface>> The most basic description of the data to be published and subscribed.
A DDS::Topic is identified by its name, which must be unique in the whole domain. In addition (by virtue of extending ITopicDescription) it fully specifies the type of the data that can be communicated when publishing or subscribing to the DDS::Topic.
DDS::Topic is the only ITopicDescription 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 |
Narrow the given ITopicDescription 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. |
Policies must be consistent. Immutable policies cannot be changed after DDS::Topic is enabled. The special value DDS::DomainParticipant::TOPIC_QOS_DEFAULT can be used to indicate that the QoS of the DDS::Topic should be changed to match the current default DDS::TopicQos set in the DDS::DomainParticipant. Cannot be NULL.
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 Connext will use the default library (see DDS::DomainParticipant::set_default_library). |
profile_name | <<in>> XML QoS Profile name. If profile_name is null RTI Connext 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. See DDS::StatusMask. |
One | of the Standard Return Codes |
TopicListener ^ DDS::Topic::get_listener | ( | ) |
Get the topic listener.
|
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 ITopicDescription.
Implements DDS::ITopicDescription.
|
virtual |
Get the name used to create this ITopicDescription .
Implements DDS::ITopicDescription.
|
virtual |
Get the DDS::DomainParticipant to which the ITopicDescription belongs.
Implements DDS::ITopicDescription.
|
overridevirtual |
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:
Other operations may explicitly state that they may be called on disabled entities; those that do not will return the error DDS::Retcode_NotEnabled.
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 Entity that is disabled are created disabled, regardless of the setting of the DDS::EntityFactoryQosPolicy.
Calling enable on an Entity whose factory Entity 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 (for example, enabling a DDS::Publisher will enable all its contained DDS::DataWriter objects)
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.
|
overridevirtual |
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.
|
overridevirtual |
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.
|
overridevirtual |
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.