SObjectizer  5.5
Classes | Namespaces | Typedefs | Enumerations | Functions
mhood.hpp File Reference

Definition of the template class mhood. More...

#include <so_5/message.hpp>
#include <so_5/message_holder.hpp>
#include <so_5/compiler_features.hpp>
#include <type_traits>

Go to the source code of this file.

Classes

class  so_5::mhood_t< M >
 A message wrapped to be used as type of argument for event handlers. More...
 
class  so_5::details::mhood_base_t< M, T, Mut >
 A type to be used as a base for mhood_t implementation. More...
 
class  so_5::details::mhood_base_t< M, mhood_type_t::classical_message, message_mutability_t::immutable_message >
 A special base for the case when message type is derived from message_t. More...
 
class  so_5::details::mhood_base_t< M, mhood_type_t::classical_message, message_mutability_t::mutable_message >
 A special base for the case when message type is derived from message_t. More...
 
class  so_5::details::mhood_base_t< M, mhood_type_t::classical_signal, message_mutability_t::immutable_message >
 A special base for the case when message type is derived from message_t. More...
 
class  so_5::details::mhood_base_t< M, mhood_type_t::classical_signal, message_mutability_t::mutable_message >
 A special base for the case when message type is derived from message_t. More...
 
class  so_5::details::mhood_base_t< M, mhood_type_t::user_type_message, message_mutability_t::immutable_message >
 A special base for the case when message type is not related to message_t. More...
 
class  so_5::details::mhood_base_t< M, mhood_type_t::user_type_message, message_mutability_t::mutable_message >
 A special base for the case when message type is not related to message_t. More...
 
struct  so_5::details::mhood_type_detector< T >
 A special selector of message hood type. More...
 
struct  so_5::details::mhood_mutability_detector< T >
 A special detector of message immutability/mutability. More...
 
class  so_5::mhood_t< M >
 A message wrapped to be used as type of argument for event handlers. More...
 

Namespaces

 so_5
 Public part of message limit implementation.
 
 so_5::details
 Some reusable and low-level classes/functions which can be used in public header files.
 

Typedefs

template<typename Msg >
using so_5::details::actual_mhood_base_type = mhood_base_t< Msg, mhood_type_detector< Msg >::mhood_type, mhood_mutability_detector< Msg >::mutability >
 Just a useful typename for base type of mhood implementation. More...
 
template<typename M >
using so_5::mutable_mhood_t = mhood_t< mutable_msg< M > >
 A short name for message hood for mutable message. More...
 

Enumerations

enum  so_5::details::mhood_type_t { so_5::details::mhood_type_t::classical_message, so_5::details::mhood_type_t::classical_signal, so_5::details::mhood_type_t::user_type_message }
 A special selector for mhood_t implementations. More...
 

Functions

template<typename M >
std::enable_if< !is_signal< M >::value, mhood_t< immutable_msg< M > > >::type so_5::to_immutable (mhood_t< mutable_msg< M > > msg)
 Transform mutable message instance into immutable. More...
 
template<typename M >
std::enable_if< is_signal< M >::value, mhood_t< immutable_msg< M > > >::type so_5::to_immutable (mhood_t< mutable_msg< M > >)
 

Detailed Description

Definition of the template class mhood.