|
SObjectizer 5.8
|
A base class for the agent messages definition. More...
#include <so_5/declspec.hpp>#include <so_5/exception.hpp>#include <so_5/atomic_refcounted.hpp>#include <so_5/types.hpp>#include <so_5/agent_ref_fwd.hpp>#include <type_traits>#include <typeindex>#include <functional>#include <future>#include <atomic>Go to the source code of this file.
Classes | |
| class | so_5::message_t |
| A base class for agent messages. More... | |
| class | so_5::signal_t |
| A base class for agent signals. More... | |
| struct | so_5::user_type_message_t< T > |
| Template class for representing object of user type as a message. More... | |
| struct | so_5::immutable_msg< M > |
| A special marker for immutable message. More... | |
| struct | so_5::mutable_msg< M > |
| A special marker for mutable message. More... | |
| struct | so_5::details::message_mutability_traits< T > |
| Detector of message type traits in dependency of message immutability or mutability. More... | |
| struct | so_5::details::message_mutability_traits< immutable_msg< T > > |
| struct | so_5::details::message_mutability_traits< mutable_msg< T > > |
| struct | so_5::is_user_type_message< M > |
| A helper for detection presence of message of user type. More... | |
| struct | so_5::is_user_type_message< user_type_message_t< M > > |
| struct | so_5::is_signal< T > |
| A helper class for checking that message is a signal. More... | |
| struct | so_5::is_classical_message< T > |
| A helper class for checking that message is a classical message derived from message_t class. More... | |
| struct | so_5::is_mutable_message< T > |
| A helper class for checking that message is a mutable message. More... | |
| struct | so_5::is_mutable_message< mutable_msg< T > > |
| struct | so_5::message_payload_type_impl< T, is_classical_message > |
| Implementation details for message_payload_type. More... | |
| struct | so_5::message_payload_type_impl< T, false > |
| Implementation details for message_payload_type. More... | |
| struct | so_5::message_payload_type< T > |
| A helper class for detection of payload type of message. More... | |
| struct | so_5::message_payload_type< user_type_message_t< T > > |
| struct | so_5::details::make_message_instance_impl< is_signal, Msg > |
| struct | so_5::details::make_message_instance_impl< true, Msg > |
| struct | so_5::details::msg_state_timeout |
| A signal to be used for switching to another state by timeout. More... | |
| class | so_5::message_limit::any_unspecified_message |
| A special mark to be used for default limits. More... | |
| struct | so_5::message_limit::overlimit_context_t |
| Description of context for overlimit action. More... | |
| struct | so_5::message_limit::control_block_t |
| A control block for one message limit. More... | |
Namespaces | |
| namespace | so_5 |
| Private part of message limit implementation. | |
| namespace | so_5::details |
| Some reusable and low-level classes/functions which can be used in public header files. | |
| namespace | so_5::message_limit |
| namespace | so_5::message_limit::impl |
Typedefs | |
| using | so_5::message_ref_t = intrusive_ptr_t< message_t > |
| A smart reference to the message. | |
| using | so_5::message_limit::action_t = std::function< void(const overlimit_context_t&) > |
| A type for reaction of message overlimit. | |
Functions | |
| template<class Msg > | |
| void | so_5::ensure_not_signal () |
| A special compile-time checker to guarantee that the message class is not a signal class. | |
| template<class Msg > | |
| void | so_5::ensure_message_with_actual_data (const Msg *m) |
| A special checker to guarantee that the message is an instance of the message_t (not signal_t) and has a not-null pointer to the message data. | |
| template<class S > | |
| void | so_5::ensure_not_mutable_signal () |
| A special compile-time checker to guarantee that S is not a mutable signal. | |
| template<class Msg > | |
| void | so_5::ensure_signal () |
| A special compile-time checker to guarantee that the Msg is derived from the signal_t. | |
| template<typename Msg > | |
| void | so_5::ensure_classical_message () |
| A special compile-time checker to guarantee that Msg is derived from message_t. | |
| template<typename Msg , typename... Args> | |
| auto | so_5::details::make_message_instance (Args &&... args) -> std::unique_ptr< typename message_payload_type< Msg >::envelope_type > |
| A helper for allocate instance of a message. | |
A base class for the agent messages definition.
Definition in file message.hpp.