|
SObjectizer
5.8
|
Public part of message delivery tracing mechanism. More...
Namespaces | |
| namespace | impl |
| Implementation details of message delivery tracing mechanism. | |
Classes | |
| struct | compound_action_description_t |
| An information about compound description of message-related action. More... | |
| class | filter_t |
| An interface of filter for trace messages. More... | |
| class | holder_t |
| Interface of holder of message tracer and message trace filter objects. More... | |
| struct | message_instance_info_t |
| An information about a message instance. More... | |
| struct | msg_source_t |
| An information about message source. More... | |
| class | trace_data_t |
| An interface of object for accessing trace details. More... | |
| class | tracer_t |
| Interface of tracer object. More... | |
Typedefs | |
| using | tracer_unique_ptr_t = std::unique_ptr< tracer_t > |
| A short alias for unique_ptr to tracer. | |
| using | filter_shptr_t = intrusive_ptr_t< filter_t > |
| An alias for smart pointer to filter. | |
Enumerations | |
| enum class | status_t { disabled , enabled } |
| Status of message delivery tracing. More... | |
| enum class | message_or_signal_flag_t { message , signal } |
| A flag for message/signal dichotomy. More... | |
| enum class | msg_source_type_t { mbox , mchain , unknown } |
| Type of message source. More... | |
Functions | |
| SO_5_FUNC tracer_unique_ptr_t | std_cout_tracer () |
| Factory for tracer which uses std::cout stream. | |
| SO_5_FUNC tracer_unique_ptr_t | std_cerr_tracer () |
| Factory for tracer which uses std::cerr stream. | |
| SO_5_FUNC tracer_unique_ptr_t | std_clog_tracer () |
| Factory for tracer which uses std::clog stream. | |
| template<typename L > | |
| filter_shptr_t | make_filter (L &&lambda) |
| A helper function for creation of new filter from lambda-function. | |
| filter_shptr_t | make_enable_all_filter () |
| A helper function for creation of filter that enables all messages. | |
| filter_shptr_t | make_disable_all_filter () |
| A helper function for creation of filter that disables all messages. | |
| filter_shptr_t | no_filter () |
| A helper function to be used when it is necessary to remove msg_tracing's filter. | |
| SO_5_FUNC filter_shptr_t | make_individual_trace_filter () |
| Factory for special message tracing filter for individual tracing. | |
| template<typename Dest > | |
| so_5::mbox_t | individual_trace (Dest &&dest) |
| Indicator that tells that delivery of the message/signal should be traced. | |
Public part of message delivery tracing mechanism.
| using so_5::msg_tracing::tracer_unique_ptr_t = std::unique_ptr< tracer_t > |
|
strong |
A flag for message/signal dichotomy.
| Enumerator | |
|---|---|
| message | |
| signal | |
Definition at line 114 of file msg_tracing.hpp.
|
strong |
Type of message source.
Message can be sent to a mbox or to a mchain. This mbox/mchain will be a message source for a subscriber. Sometimes it is necessary to know what is actual type of message source: mbox or mchain.
Definition at line 129 of file msg_tracing.hpp.
|
strong |
Status of message delivery tracing.
| Enumerator | |
|---|---|
| disabled | Message delivery tracing is disabled. |
| enabled | Message delivery tracing is enabled. |
Definition at line 36 of file msg_tracing.hpp.
|
nodiscard |
Indicator that tells that delivery of the message/signal should be traced.
This indicator has to be used with send(), send_delayed() and send_periodic() functions. It allows to trace only actions related to a message/signal sent by using individual_trace().
Usage example:
| dest | Actual destination for the message/signal. It can be a reference to the agent (direct mbox of that agent will be used), a mbox, a mchain. |
Definition at line 227 of file msg_tracing_individual.hpp.
|
inline |
A helper function for creation of filter that disables all messages.
Usage example:
Definition at line 463 of file msg_tracing.hpp.
|
inline |
A helper function for creation of filter that enables all messages.
Usage example:
Definition at line 434 of file msg_tracing.hpp.
| filter_shptr_t so_5::msg_tracing::make_filter | ( | L && | lambda | ) |
A helper function for creation of new filter from lambda-function.
In most cases usage of that function must easier than implementation of a new class derived from filter_t interface.
Usage example:
Definition at line 404 of file msg_tracing.hpp.
|
nodiscard |
Factory for special message tracing filter for individual tracing.
This filter allows to trace only actions related to messages/signal sent by using individual_trace().
Usage example:
Definition at line 129 of file msg_tracing_individual.cpp.
|
inline |
A helper function to be used when it is necessary to remove msg_tracing's filter.
Usage example:
Definition at line 500 of file msg_tracing.hpp.
| SO_5_FUNC tracer_unique_ptr_t so_5::msg_tracing::std_cerr_tracer | ( | ) |
Factory for tracer which uses std::cerr stream.
Definition at line 68 of file msg_tracing.cpp.
| SO_5_FUNC tracer_unique_ptr_t so_5::msg_tracing::std_clog_tracer | ( | ) |
Factory for tracer which uses std::clog stream.
Definition at line 74 of file msg_tracing.cpp.
| SO_5_FUNC tracer_unique_ptr_t so_5::msg_tracing::std_cout_tracer | ( | ) |
Factory for tracer which uses std::cout stream.
Definition at line 62 of file msg_tracing.cpp.