SObjectizer
5.5
|
Public part of message chain related stuff. More...
#include <so_5/mbox.hpp>
#include <so_5/handler_makers.hpp>
#include <so_5/fwd.hpp>
#include <so_5/details/invoke_noexcept_code.hpp>
#include <so_5/details/remaining_time_counter.hpp>
#include <chrono>
#include <functional>
Go to the source code of this file.
Namespaces | |
so_5 | |
Public part of message limit implementation. | |
so_5::mchain_props | |
Various properties and parameters of message chains. | |
so_5::mchain_props::details | |
Implementation details. | |
Typedefs | |
using | so_5::mchain_props::duration_t = std::chrono::high_resolution_clock::duration |
An alias for type for repesenting timeout values. More... | |
using | so_5::mchain_props::not_empty_notification_func_t = std::function< void() > |
Type of functor for notifies about arrival of a message to the empty chain. More... | |
using | so_5::mchain_t = intrusive_ptr_t< abstract_message_chain_t > |
Short name for smart pointer to message chain. More... | |
Functions | |
duration_t | so_5::mchain_props::details::no_wait_special_timevalue () |
Special value of duration to indicate 'no_wait' case. More... | |
duration_t | so_5::mchain_props::details::infinite_wait_special_timevalue () |
Special value of duration to indicate 'infinite_wait' case. More... | |
bool | so_5::mchain_props::details::is_no_wait_timevalue (duration_t v) |
Is time value means 'no_wait'? More... | |
bool | so_5::mchain_props::details::is_infinite_wait_timevalue (duration_t v) |
Is time value means 'infinite_wait'? More... | |
duration_t | so_5::mchain_props::details::actual_timeout (infinite_wait_indication) |
Helper function for detection of actual value for waiting timeout. More... | |
duration_t | so_5::mchain_props::details::actual_timeout (no_wait_indication) |
Helper function for detection of actual value for waiting timeout. More... | |
template<typename V > | |
duration_t | so_5::mchain_props::details::actual_timeout (V value) |
Helper function for detection of actual value for waiting timeout. More... | |
void | so_5::close_drop_content (const mchain_t &ch) |
Helper function for closing a message chain with dropping all its content. More... | |
void | so_5::close_retain_content (const mchain_t &ch) |
Helper function for closing a message chain with retaining all its content. More... | |
mchain_receive_params_t< mchain_props::msg_count_status_t::undefined > | so_5::from (mchain_t chain) |
A helper function for simplification of creation of mchain_receive_params instance. More... | |
template<typename Bunch > | |
mchain_receive_result_t | so_5::mchain_props::details::receive_with_finite_total_time (const mchain_receive_params_t< msg_count_status_t::defined > ¶ms, const Bunch &bunch) |
An implementation of advanced receive when a limit for total operation time is defined. More... | |
template<typename Bunch > | |
mchain_receive_result_t | so_5::mchain_props::details::receive_without_total_time (const mchain_receive_params_t< msg_count_status_t::defined > ¶ms, const Bunch &bunch) |
An implementation of advanced receive when there is no limit for total operation time is defined. More... | |
template<typename Bunch > | |
mchain_receive_result_t | so_5::mchain_props::details::perform_receive (const mchain_receive_params_t< msg_count_status_t::defined > ¶ms, const Bunch &bunch) |
An implementation of main receive actions. More... | |
template<mchain_props::msg_count_status_t Msg_Count_Status, typename... Handlers> | |
mchain_receive_result_t | so_5::receive (const mchain_receive_params_t< Msg_Count_Status > ¶ms, Handlers &&... handlers) |
Advanced version of receive from mchain. More... | |
template<mchain_props::msg_count_status_t Msg_Count_Status, typename... Handlers> | |
prepared_receive_t< sizeof...(Handlers) > | so_5::prepare_receive (const mchain_receive_params_t< Msg_Count_Status > ¶ms, Handlers &&... handlers) |
Create parameters for receive function to be used later. More... | |
template<std::size_t Handlers_Count> | |
mchain_receive_result_t | so_5::receive (const prepared_receive_t< Handlers_Count > &prepared) |
A receive operation to be done on previously prepared receive params. More... | |
Helper functions for creating parameters for mchain. | |
mchain_params_t | so_5::make_unlimited_mchain_params () |
Create parameters for size-unlimited mchain. More... | |
mchain_params_t | so_5::make_limited_without_waiting_mchain_params (std::size_t max_size, mchain_props::memory_usage_t memory_usage, mchain_props::overflow_reaction_t overflow_reaction) |
Create parameters for size-limited mchain without waiting on overflow. More... | |
mchain_params_t | so_5::make_limited_with_waiting_mchain_params (std::size_t max_size, mchain_props::memory_usage_t memory_usage, mchain_props::overflow_reaction_t overflow_reaction, mchain_props::duration_t wait_timeout) |
Create parameters for size-limited mchain with waiting on overflow. More... | |
Public part of message chain related stuff.