SObjectizer  5.8
Loading...
Searching...
No Matches
msg_tracing.hpp File Reference

Stuff related to message delivery tracing. More...

#include <so_5/declspec.hpp>
#include <so_5/compiler_features.hpp>
#include <so_5/atomic_refcounted.hpp>
#include <so_5/current_thread_id.hpp>
#include <so_5/optional.hpp>
#include <so_5/types.hpp>
#include <so_5/fwd.hpp>
#include <string>
#include <memory>
#include <typeindex>

Go to the source code of this file.

Classes

class  so_5::msg_tracing::tracer_t
 Interface of tracer object. More...
 
struct  so_5::msg_tracing::msg_source_t
 An information about message source. More...
 
struct  so_5::msg_tracing::message_instance_info_t
 An information about a message instance. More...
 
struct  so_5::msg_tracing::compound_action_description_t
 An information about compound description of message-related action. More...
 
class  so_5::msg_tracing::trace_data_t
 An interface of object for accessing trace details. More...
 
class  so_5::msg_tracing::filter_t
 An interface of filter for trace messages. More...
 
class  so_5::msg_tracing::impl::filter_from_lambda_t< L >
 A type of implementation of filters created from lambda function. More...
 
class  so_5::msg_tracing::holder_t
 Interface of holder of message tracer and message trace filter objects. More...
 

Namespaces

namespace  so_5
 Private part of message limit implementation.
 
namespace  so_5::msg_tracing
 Public part of message delivery tracing mechanism.
 
namespace  so_5::msg_tracing::impl
 Implementation details of message delivery tracing mechanism.
 

Typedefs

using so_5::msg_tracing::tracer_unique_ptr_t = std::unique_ptr< tracer_t >
 A short alias for unique_ptr to tracer.
 
using so_5::msg_tracing::filter_shptr_t = intrusive_ptr_t< filter_t >
 An alias for smart pointer to filter.
 

Enumerations

enum class  so_5::msg_tracing::status_t { so_5::msg_tracing::disabled , so_5::msg_tracing::enabled }
 Status of message delivery tracing. More...
 
enum class  so_5::msg_tracing::message_or_signal_flag_t { so_5::msg_tracing::message , so_5::msg_tracing::signal }
 A flag for message/signal dichotomy. More...
 
enum class  so_5::msg_tracing::msg_source_type_t { so_5::msg_tracing::mbox , so_5::msg_tracing::mchain , so_5::msg_tracing::unknown }
 Type of message source. More...
 

Functions

SO_5_FUNC tracer_unique_ptr_t so_5::msg_tracing::std_cout_tracer ()
 Factory for tracer which uses std::cout stream.
 
SO_5_FUNC tracer_unique_ptr_t so_5::msg_tracing::std_cerr_tracer ()
 Factory for tracer which uses std::cerr stream.
 
SO_5_FUNC tracer_unique_ptr_t so_5::msg_tracing::std_clog_tracer ()
 Factory for tracer which uses std::clog stream.
 
template<typename L >
filter_shptr_t so_5::msg_tracing::make_filter (L &&lambda)
 A helper function for creation of new filter from lambda-function.
 
filter_shptr_t so_5::msg_tracing::make_enable_all_filter ()
 A helper function for creation of filter that enables all messages.
 
filter_shptr_t so_5::msg_tracing::make_disable_all_filter ()
 A helper function for creation of filter that disables all messages.
 
filter_shptr_t so_5::msg_tracing::no_filter ()
 A helper function to be used when it is necessary to remove msg_tracing's filter.
 

Detailed Description

Stuff related to message delivery tracing.

Since
v.5.5.9

Definition in file msg_tracing.hpp.