Embedded Template Library 1.0
etl::persistent_message< TMessage > Class Template Reference

Public Types

typedef TMessage message_type
 
typedef void counter_type
 

Public Member Functions

 ETL_STATIC_ASSERT ((etl::is_base_of< etl::imessage, TMessage >::value), "Not a message type")
 
 persistent_message (const TMessage &msg_)
 
virtual ETL_NODISCARD TMessage & get_message () ETL_OVERRIDE
 
virtual ETL_NODISCARD const TMessage & get_message () const ETL_OVERRIDE
 
virtual ETL_NODISCARD etl::ireference_counterget_reference_counter () ETL_OVERRIDE
 
virtual ETL_NODISCARD const etl::ireference_counterget_reference_counter () const ETL_OVERRIDE
 
virtual void release () ETL_OVERRIDE
 
virtual ETL_NODISCARD etl::imessageget_message ()=0
 Get a reference to the message. More...
 
virtual ETL_NODISCARD const etl::imessageget_message () const =0
 Get a const reference to the message. More...
 
virtual ETL_NODISCARD etl::ireference_counterget_reference_counter ()=0
 Get a reference to the reference counter. More...
 
virtual ETL_NODISCARD const etl::ireference_counterget_reference_counter () const =0
 Get a const reference to the reference counter. More...
 
virtual void release ()=0
 Release back to the owner. More...
 

Constructor & Destructor Documentation

◆ persistent_message()

template<typename TMessage >
etl::persistent_message< TMessage >::persistent_message ( const TMessage &  msg_)
inlineexplicit

Constructor

Parameters
msgThe message to count.

Member Function Documentation

◆ get_message() [1/2]

template<typename TMessage >
virtual ETL_NODISCARD const TMessage & etl::persistent_message< TMessage >::get_message ( ) const
inlinevirtual

Get a const reference to the message.

Returns
A const reference to the message.

Implements etl::ireference_counted_message.

◆ get_message() [2/2]

template<typename TMessage >
virtual ETL_NODISCARD TMessage & etl::persistent_message< TMessage >::get_message ( )
inlinevirtual

Get a reference to the message.

Returns
A reference to the message.

Implements etl::ireference_counted_message.

◆ get_reference_counter() [1/2]

template<typename TMessage >
virtual ETL_NODISCARD const etl::ireference_counter & etl::persistent_message< TMessage >::get_reference_counter ( ) const
inlinevirtual

Get a const reference to the reference counter.

Returns
A const reference to the reference counter.

Implements etl::ireference_counted_message.

◆ get_reference_counter() [2/2]

template<typename TMessage >
virtual ETL_NODISCARD etl::ireference_counter & etl::persistent_message< TMessage >::get_reference_counter ( )
inlinevirtual

Get a reference to the reference counter.

Returns
A reference to the reference counter.

Implements etl::ireference_counted_message.

◆ release()

template<typename TMessage >
virtual void etl::persistent_message< TMessage >::release ( )
inlinevirtual

Does nothing for a persistent message

Returns
A reference to the owner pool.

Implements etl::ireference_counted_message.


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