|
SObjectizer-5 Extra
|
Implementation of proxy mbox with inflight limit. More...
#include <so_5_extra/mboxes/proxy.hpp>#include <so_5_extra/error_ranges.hpp>#include <so_5_extra/enveloped_msg/just_envelope.hpp>#include <so_5/impl/msg_tracing_helpers.hpp>#include <so_5/environment.hpp>#include <atomic>Go to the source code of this file.
Classes | |
| struct | so_5::impl::msg_tracing_helpers::details::extra_inflight_limit_specifics::limit_info |
| struct | so_5::extra::mboxes::inflight_limit::impl::instances_counter_t |
| Separate type for holding inflight message counter as a separate object. More... | |
| class | so_5::extra::mboxes::inflight_limit::impl::counter_incrementer_t |
| Helper class for incrementing/decrementing number of messages in RAII style. More... | |
| class | so_5::extra::mboxes::inflight_limit::impl::special_envelope_t |
| Type of envelope to be used by inflight_limit_mbox. More... | |
| class | so_5::extra::mboxes::inflight_limit::impl::not_null_underlying_mbox_t |
| Helper type that tells that underlying mbox isn't nullptr. More... | |
| class | so_5::extra::mboxes::inflight_limit::impl::actual_mbox_t< Tracing_Base > |
| Actual implementation of inflight_limit_mbox. More... | |
Namespaces | |
| namespace | so_5 |
| Ranges for error codes of each submodules. | |
| namespace | so_5::extra |
| namespace | so_5::extra::mboxes |
| namespace | so_5::extra::mboxes::inflight_limit |
| namespace | so_5::impl |
| namespace | so_5::impl::msg_tracing_helpers |
| namespace | so_5::impl::msg_tracing_helpers::details |
| namespace | so_5::impl::msg_tracing_helpers::details::extra_inflight_limit_specifics |
| namespace | so_5::extra::mboxes::inflight_limit::errors |
| namespace | so_5::extra::mboxes::inflight_limit::impl |
Typedefs | |
| using | so_5::extra::mboxes::inflight_limit::underlying_counter_t = unsigned int |
| Type to be used for limit and counter of inflight messages. | |
| using | so_5::extra::mboxes::inflight_limit::impl::instances_counter_shptr_t = std::shared_ptr< instances_counter_t > |
| An alias for shared_ptr to instances_counter. | |
Functions | |
| void | so_5::impl::msg_tracing_helpers::details::extra_inflight_limit_specifics::make_trace_to_1 (std::ostream &s, extra_inflight_limit_specifics::limit_info info) |
| void | so_5::impl::msg_tracing_helpers::details::extra_inflight_limit_specifics::fill_trace_data_1 (actual_trace_data_t &, extra_inflight_limit_specifics::limit_info) |
| not_null_underlying_mbox_t | so_5::extra::mboxes::inflight_limit::impl::ensure_underlying_mbox_not_null (so_5::mbox_t mbox) |
| Ensure that underlying mbox is not nullptr. | |
| template<typename Msg_Type > | |
| void | so_5::extra::mboxes::inflight_limit::impl::ensure_valid_message_type_for_underlying_mbox (const so_5::mbox_t &underlying_mbox) |
| Check for compatibility between mbox type and message type. | |
| template<typename Msg_Type > | |
| mbox_t | so_5::extra::mboxes::inflight_limit::make_mbox (mbox_t dest_mbox, underlying_counter_t inflight_limit) |
| Create an instance of inflight_limit_mbox. | |
Variables | |
| const int | so_5::extra::mboxes::inflight_limit::errors::rc_different_message_type |
| An attempt to use a message type that differs from mbox's message type. | |
| const int | so_5::extra::mboxes::inflight_limit::errors::rc_nullptr_as_underlying_mbox |
| Null pointer to underlying mbox. | |
Implementation of proxy mbox with inflight limit.
Definition in file inflight_limit.hpp.