RTI Connext Modern C++ API  Version 5.2.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
dds::core::cond::StatusCondition Class Reference

<<reference-type>> A condition associated with each dds::core::Entity More...

#include <dds/core/cond/StatusCondition.hpp>

Inheritance diagram for dds::core::cond::StatusCondition:
dds::core::cond::Condition

Public Member Functions

 StatusCondition (const dds::core::Entity &entity)
 Obtains a reference to the StatusCondition in an entity.
 
void enabled_statuses (const dds::core::status::StatusMask &status)
 Defines the list of communication statuses that determine the trigger_value.
 
const dds::core::status::StatusMask enabled_statuses () const
 Gets the list of enabled statuses.
 
dds::core::Entity entity () const
 Get the dds::core::Entity associated with this StatusCondition.
 
- Public Member Functions inherited from dds::core::cond::Condition
void dispatch ()
 Dispatches the functors that have been registered with the condition.
 
bool trigger_value () const
 This operation retrieves the trigger_value of the Condition.
 

Detailed Description

<<reference-type>> A condition associated with each dds::core::Entity

The trigger_value of the dds::core::cond::StatusCondition depends on the communication status of that entity (e.g., arrival of data, loss of information, etc.), 'filtered' by the set of enabled_statuses on the dds::core::cond::StatusCondition.

See Also
Status Kinds
dds::core::cond::WaitSet, dds::core::cond::Condition
Listener

.

Note
There is exactly one StatusCondition per Entity and one Entity per StatusCondition.
Warning
Destroying an Entity invalidates all references to its StatusCondition. To avoid that, always keep a reference to the Entity while you also have one to its StatusCondition or retain the Entity.

Constructor & Destructor Documentation

dds::core::cond::StatusCondition::StatusCondition ( const dds::core::Entity entity)
inline

Obtains a reference to the StatusCondition in an entity.

Parameters
entityThe Entity whose status condition we're getting a reference to. There is exactly one StatusCondition per Entity and one Entity per StatusCondition.
Note
This constructor doesn't create a new Condition. It obtains a reference to the StatusCondition that each Entity owns. You can use this constructors as many times as needed to obtain a reference to the same StatusCondition.

Member Function Documentation

void dds::core::cond::StatusCondition::enabled_statuses ( const dds::core::status::StatusMask status)
inline

Defines the list of communication statuses that determine the trigger_value.

This operation may change the trigger_value of the dds::core::cond::StatusCondition.

dds::core::cond::WaitSet objects' behavior depends on the changes of the trigger_value of their attached conditions. Therefore, any dds::core::cond::WaitSet to which the dds::core::cond::StatusCondition is attached is potentially affected by this operation.

If this function is not invoked, the default list of enabled statuses includes all the statuses.

Exceptions
Oneof the Standard Exceptions
const dds::core::status::StatusMask dds::core::cond::StatusCondition::enabled_statuses ( ) const
inline

Gets the list of enabled statuses.

See Also
enabled_statuses(const dds::core::status::StatusMask&)
dds::core::Entity dds::core::cond::StatusCondition::entity ( ) const
inline

Get the dds::core::Entity associated with this StatusCondition.

There is exactly one Entity associated with each StatusCondition.


RTI Connext Modern C++ API Version 5.2.0 Copyright © Sun Jun 21 2015 Real-Time Innovations, Inc