#include <Reference.hpp>
Inheritance diagram for Reference< DELEGATE >:Public Types | |
| typedef DELEGATE | DELEGATE_T |
| typedef ::dds::core::smart_ptr_traits < DELEGATE >::ref_type | DELEGATE_REF_T |
| typedef ::dds::core::smart_ptr_traits < DELEGATE >::weak_ref_type | DELEGATE_WEAK_REF_T |
Public Member Functions | |
| ~Reference () | |
| operator DELEGATE_REF_T () const | |
| template<typename R > | |
| bool | operator== (const R &ref) const |
| template<typename R > | |
| bool | operator!= (const R &ref) const |
| template<typename D > | |
| Reference & | operator= (const Reference< D > &that) |
| template<typename R > | |
| Reference & | operator= (const R &rhs) |
| Reference & | operator= (const null_type) |
| bool | is_nil () const |
| bool | operator== (const null_type) const |
| bool | operator!= (const null_type nil) const |
| const DELEGATE_REF_T & | delegate () const |
| DELEGATE_REF_T & | delegate () |
| DELEGATE * | operator-> () |
| const DELEGATE * | operator-> () const |
Protected Member Functions | |
| Reference () | |
| Reference (const Reference &ref) | |
| template<typename D > | |
| Reference (const Reference< D > &ref) | |
| template<typename R > | |
| Reference (const R &that) | |
| Reference (DELEGATE_T *p) | |
| Reference (const DELEGATE_REF_T &ref) | |
Protected Attributes | |
| DELEGATE_REF_T | impl_ |
The Reference class defines the abstract behavior for those type defined as "reference-type" in the DDS-PSM-CXX specification.
Definition at line 37 of file Reference.hpp.
| typedef ::dds::core::smart_ptr_traits< DELEGATE >::ref_type DELEGATE_REF_T |
Reimplemented in StatusCondition< ENTITY, DELEGATE >, DataWriter< T, DELEGATE >, QueryCondition< T, DELEGATE >, ReadCondition< T, DELEGATE >, DataReader< T, DELEGATE >, ContentFilteredTopic< T, DELEGATE >, MultiTopic< T, DELEGATE >, Topic< T, DELEGATE >, TopicDescription< T, DELEGATE >, Condition< DELEGATE >, GuardCondition< DELEGATE >, WaitSet< DELEGATE >, Entity< DELEGATE >, DomainParticipant< DELEGATE >, DomainParticipantFactory< DELEGATE >, Publisher< DELEGATE >, Subscriber< DELEGATE >, DynamicDataFactory< DELEGATE >, DynamicTypeFactory< DELEGATE >, DynamicTypeMember< DELEGATE >, DataWriter< KeyedBytes >, DataWriter< T >, DataWriter< KeyedString >, DataWriter< dds::core::ByteSeq >, ReadCondition< T >, DataReader< KeyedBytes >, DataReader< T >, DataReader< KeyedString >, DataReader< dds::core::ByteSeq >, Topic< T >, Condition< DELEGATE< T > >, Entity< DELEGATE< KeyedString > >, Entity< DELEGATE< dds::core::ByteSeq > >, Entity< DELEGATE< KeyedBytes > >, and Entity< DELEGATE< T > >.
Definition at line 40 of file Reference.hpp.
| typedef DELEGATE DELEGATE_T |
Reimplemented in StatusCondition< ENTITY, DELEGATE >, DataWriter< T, DELEGATE >, QueryCondition< T, DELEGATE >, ReadCondition< T, DELEGATE >, DataReader< T, DELEGATE >, ContentFilteredTopic< T, DELEGATE >, MultiTopic< T, DELEGATE >, Topic< T, DELEGATE >, TopicDescription< T, DELEGATE >, Condition< DELEGATE >, GuardCondition< DELEGATE >, WaitSet< DELEGATE >, Entity< DELEGATE >, DomainParticipant< DELEGATE >, DomainParticipantFactory< DELEGATE >, Publisher< DELEGATE >, Subscriber< DELEGATE >, DynamicDataFactory< DELEGATE >, DynamicTypeFactory< DELEGATE >, DynamicTypeMember< DELEGATE >, DataWriter< KeyedBytes >, DataWriter< T >, DataWriter< KeyedString >, DataWriter< dds::core::ByteSeq >, ReadCondition< T >, DataReader< KeyedBytes >, DataReader< T >, DataReader< KeyedString >, DataReader< dds::core::ByteSeq >, Topic< T >, Condition< DELEGATE< T > >, Entity< DELEGATE< KeyedString > >, Entity< DELEGATE< dds::core::ByteSeq > >, Entity< DELEGATE< KeyedBytes > >, and Entity< DELEGATE< T > >.
Definition at line 40 of file Reference.hpp.
| typedef ::dds::core::smart_ptr_traits< DELEGATE >::weak_ref_type DELEGATE_WEAK_REF_T |
Reimplemented in StatusCondition< ENTITY, DELEGATE >, DataWriter< T, DELEGATE >, QueryCondition< T, DELEGATE >, ReadCondition< T, DELEGATE >, DataReader< T, DELEGATE >, ContentFilteredTopic< T, DELEGATE >, MultiTopic< T, DELEGATE >, Topic< T, DELEGATE >, TopicDescription< T, DELEGATE >, Condition< DELEGATE >, GuardCondition< DELEGATE >, WaitSet< DELEGATE >, Entity< DELEGATE >, DomainParticipant< DELEGATE >, DomainParticipantFactory< DELEGATE >, Publisher< DELEGATE >, Subscriber< DELEGATE >, DynamicDataFactory< DELEGATE >, DynamicTypeFactory< DELEGATE >, DynamicTypeMember< DELEGATE >, DataWriter< KeyedBytes >, DataWriter< T >, DataWriter< KeyedString >, DataWriter< dds::core::ByteSeq >, ReadCondition< T >, DataReader< KeyedBytes >, DataReader< T >, DataReader< KeyedString >, DataReader< dds::core::ByteSeq >, Topic< T >, Condition< DELEGATE< T > >, Entity< DELEGATE< KeyedString > >, Entity< DELEGATE< dds::core::ByteSeq > >, Entity< DELEGATE< KeyedBytes > >, and Entity< DELEGATE< T > >.
Definition at line 40 of file Reference.hpp.
| Reference | ( | ) | [inline, protected] |
Creates a "null" reference.
Definition at line 46 of file Reference.hpp.
Creates a reference from another.
| ref | the other reference |
Definition at line 55 of file Reference.hpp.
Enables safe assignment from other reference types.
| ref | the other reference |
Definition at line 65 of file Reference.hpp.
| Reference | ( | const R & | that | ) | [inline, protected] |
Definition at line 73 of file Reference.hpp.
| Reference | ( | DELEGATE_T * | p | ) | [inline, explicit, protected] |
Definition at line 78 of file Reference.hpp.
| Reference | ( | const DELEGATE_REF_T & | ref | ) | [inline, protected] |
Definition at line 82 of file Reference.hpp.
| ~Reference | ( | ) | [inline] |
Destroys a reference.
Definition at line 90 of file Reference.hpp.
| const DELEGATE_REF_T& delegate | ( | ) | const [inline] |
Returns a reference to the uderlying delegate. This can be used to invoke non-standard extensions provided by the DDS implementor.
Definition at line 210 of file Reference.hpp.
| DELEGATE_REF_T& delegate | ( | ) | [inline] |
Returns a reference to the underlying delegate. This can be used to invoke non-standard extensions provided by the DDS implementor.
Definition at line 220 of file Reference.hpp.
| bool is_nil | ( | ) | const [inline] |
Returns true if this reference object is nil, meaning pointing to null.
Definition at line 160 of file Reference.hpp.
| operator DELEGATE_REF_T | ( | ) | const [inline] |
Definition at line 95 of file Reference.hpp.
| bool operator!= | ( | const null_type | nil | ) | const [inline] |
Special operator!= used to check if this reference object does not equals the null reference. The non-null-check can be done like this: bool is_null = (r != dds::null); If r is a non-null reference the is_null variable will have the false value.
Definition at line 193 of file Reference.hpp.
| bool operator!= | ( | const R & | ref | ) | const [inline] |
Compares two reference objects and returns true if they are not-equal. Inequality is based on the referential inequality of the object being pointed.
| ref | the other reference object |
Definition at line 119 of file Reference.hpp.
| const DELEGATE* operator-> | ( | ) | const [inline] |
The operator->() is provided to be able to directly invoke methods on the delegate. The choice to provide direct access to the delegate was motivated by the need for providing a way that was not invasive with respect to the CXXDDS API and yet would allow for Vendor Specific extension. Thus, vendor specific extensions can be invocked on the Reference and on all its subclasses as follows:
my_dds_entity.standard_method(); my_dds_entity->vendor_specific_extension();
Definition at line 260 of file Reference.hpp.
| DELEGATE* operator-> | ( | ) | [inline] |
The operator->() is provided to be able to directly invoke methods on the delegate. The choice to provide direct access to the delegate was motivated by the need for providing a way that was not invasive with respect to the CXXDDS API and yet would allow for Vendor Specific extension. Thus, vendor specific extensions can be invoked on the Reference and on all its subclasses as follows:
my_dds_entity.standard_method(); my_dds_entity->vendor_specific_extension();
Definition at line 240 of file Reference.hpp.
Definition at line 124 of file Reference.hpp.
| Reference& operator= | ( | const R & | rhs | ) | [inline] |
Definition at line 133 of file Reference.hpp.
| Reference& operator= | ( | const | null_type | ) | [inline] |
Special assignment operators that takes care of assigning null to this reference. When assigning null, there might be an associated garbage collection activity.
In essence this assignment operators takes care of allowing programmers to write: MyRefType my_ref = //... my_ref = dds::null;
Definition at line 151 of file Reference.hpp.
| bool operator== | ( | const | null_type | ) | const [inline] |
Special operator== used to check if this reference object equals the null reference. The null-check can be done like this: bool is_null = (r == dds::null); If r is a null reference the is_null variable will have the true value.
Definition at line 177 of file Reference.hpp.
| bool operator== | ( | const R & | ref | ) | const [inline] |
Compares two reference objects and returns true if they are equal. Equality is based on the referential equality of the object being pointed.
| ref | the other reference object |
Definition at line 107 of file Reference.hpp.
DELEGATE_REF_T impl_ [protected] |
Definition at line 265 of file Reference.hpp.
1.7.1