mirror of
https://github.com/ETLCPP/etl.git
synced 2026-04-30 19:09:10 +08:00
39 lines
1.9 KiB
Plaintext
39 lines
1.9 KiB
Plaintext
Shared Messages
|
|
|
|
The type used to encapsulate reference counted messages.
|
|
Shared messages are usually passed by value.
|
|
|
|
See the Shared Message Tutorial
|
|
____________________________________________________________________________________________________
|
|
template <typename TPool, typename TMessage>
|
|
shared_message(TPool& owner, const TMessage& message)
|
|
|
|
Static asserts if TPool is not derived from etl::ireference_counted_message_pool
|
|
Static asserts if TMessage not derived from etl::imessage
|
|
|
|
Requires that TPool implements the following member function to allocate from the pool.
|
|
template <typename TMessage>
|
|
etl::ireference_counted_message* allocate(const TMessage& message)
|
|
____________________________________________________________________________________________________
|
|
explicit shared_message(etl::ireference_coutnted_message& message)
|
|
Construct from a reference counted message.
|
|
____________________________________________________________________________________________________
|
|
shared_message(const etl::shared_message& other)
|
|
Copy constructor.
|
|
____________________________________________________________________________________________________
|
|
shared_message& operator =(const etl::shared_message& other)
|
|
Assignment operator.
|
|
____________________________________________________________________________________________________
|
|
~shared_message()
|
|
Destructor.
|
|
____________________________________________________________________________________________________
|
|
ETL_NODISCARD etl::imessage& get_message()
|
|
Gets a reference to the contained message.
|
|
____________________________________________________________________________________________________
|
|
ETL_NODISCARD const etl::imessage& get_message() const
|
|
Gets a const reference to the contained message.
|
|
____________________________________________________________________________________________________
|
|
ETL_NODISCARD uint32_t get_reference_count() const
|
|
Gets the current reference count for this shared message.
|
|
|