Safe DDS
eprosima::safedds::dds::Entity Class Referenceabstract

The Entity base class. More...

#include <Entity.hpp>

Public Member Functions

virtual ReturnCode enable () noexcept=0
 Enables the entity. More...
 
virtual bool is_enabled () const noexcept=0
 Check if the entity and its hierarchically ascending entities are enabled. More...
 
virtual StatusConditionget_statuscondition () &noexcept=0
 Retrieves entity status condition. Can only be used on lvalue objects. More...
 
virtual StatusMask get_status_changes () const noexcept=0
 Retrieves the set of triggered statuses in the Entity. More...
 
virtual InstanceHandle get_instance_handle () const noexcept=0
 Retrieves the instance handler that represents the Entity. More...
 
execution::ISpinnableget_spinnable () &&noexcept=delete
 Deletes get_spinnable for rvalue objects to avoid usage of a dangling pointer (Helix Rule-6.4.2) More...
 
virtual execution::ISpinnableget_spinnable () &noexcept=0
 Retrieves the spinnable interface of the entity in case it has one, otherwise returns nullptr. More...
 

Protected Member Functions

 ~Entity () noexcept=default
 Protected destructor ownership defined on creation. More...
 
 Entity () noexcept=default
 Default creation. More...
 
 Entity (const Entity &) noexcept=default
 Copy allowed. More...
 
 Entity (Entity &&) noexcept=default
 Movement allowed. More...
 
Entityoperator= (const Entity &) noexcept=default
 Copy operator allowed. More...
 
Entityoperator= (Entity &&) noexcept=default
 Movement operator allowed. More...
 

Detailed Description

The Entity base class.

Constructor & Destructor Documentation

◆ ~Entity()

eprosima::safedds::dds::Entity::~Entity ( )
protecteddefaultnoexcept

Protected destructor ownership defined on creation.

◆ Entity() [1/3]

eprosima::safedds::dds::Entity::Entity ( )
protecteddefaultnoexcept

Default creation.

◆ Entity() [2/3]

eprosima::safedds::dds::Entity::Entity ( const Entity )
protecteddefaultnoexcept

Copy allowed.

◆ Entity() [3/3]

eprosima::safedds::dds::Entity::Entity ( Entity &&  )
protecteddefaultnoexcept

Movement allowed.

Member Function Documentation

◆ enable()

virtual ReturnCode eprosima::safedds::dds::Entity::enable ( )
pure virtualnoexcept

Enables the entity.

Returns
ReturnCode

◆ get_instance_handle()

virtual InstanceHandle eprosima::safedds::dds::Entity::get_instance_handle ( ) const
pure virtualnoexcept

Retrieves the instance handler that represents the Entity.

Returns
Reference to the InstanceHandle

◆ get_spinnable() [1/2]

execution::ISpinnable* eprosima::safedds::dds::Entity::get_spinnable ( ) &&
deletenoexcept

Deletes get_spinnable for rvalue objects to avoid usage of a dangling pointer (Helix Rule-6.4.2)

Returns
Pointer to the ISpinnable interface

◆ get_spinnable() [2/2]

virtual execution::ISpinnable* eprosima::safedds::dds::Entity::get_spinnable ( ) &
pure virtualnoexcept

Retrieves the spinnable interface of the entity in case it has one, otherwise returns nullptr.

Returns
Pointer to the ISpinnable interface

◆ get_status_changes()

virtual StatusMask eprosima::safedds::dds::Entity::get_status_changes ( ) const
pure virtualnoexcept

Retrieves the set of triggered statuses in the Entity.

Returns
StatusMask with the triggered statuses set to 1

◆ get_statuscondition()

virtual StatusCondition* eprosima::safedds::dds::Entity::get_statuscondition ( ) &
pure virtualnoexcept

Retrieves entity status condition. Can only be used on lvalue objects.

Returns
StatusCondition pointer

◆ is_enabled()

virtual bool eprosima::safedds::dds::Entity::is_enabled ( ) const
pure virtualnoexcept

Check if the entity and its hierarchically ascending entities are enabled.

Returns
true if the entity and its hierarchically ascending entities are enabled, false otherwise

◆ operator=() [1/2]

Entity& eprosima::safedds::dds::Entity::operator= ( const Entity )
protecteddefaultnoexcept

Copy operator allowed.

Returns
Entity&.

◆ operator=() [2/2]

Entity& eprosima::safedds::dds::Entity::operator= ( Entity &&  )
protecteddefaultnoexcept

Movement operator allowed.

Returns
Entity&.

The documentation for this class was generated from the following file: