SObjectizer  5.5
Classes | Namespaces | Typedefs | Functions
message_limit_internals.hpp File Reference
#include <so_5/rt/h/message_limit.hpp>
#include <vector>
#include <algorithm>
#include <iterator>
#include <memory>

Go to the source code of this file.

Classes

struct  so_5::message_limit::impl::info_block_t
 Run-time data for limit of one message type. More...
 
class  so_5::message_limit::impl::info_storage_t
 A storage for message limits for one agent. More...
 
struct  so_5::message_limit::impl::anonymous_namespace{message_limit_internals.hpp}::decrement_on_exception_t
 Helper class to rollback message count change in case of an exception. More...
 

Namespaces

 so_5
 Public part of message limit implementation.
 
 so_5::message_limit
 All stuff related to message limits.
 
 so_5::message_limit::impl
 Internal implementation of message limits related stuff.
 
 so_5::message_limit::impl::anonymous_namespace{message_limit_internals.hpp}
 

Typedefs

using so_5::message_limit::impl::info_block_container_t = std::vector< info_block_t >
 Type of container for limits' run-time data. More...
 

Functions

template<typename Lambda >
void so_5::message_limit::impl::try_to_deliver_to_agent (mbox_id_t mbox_id, invocation_type_t invocation_type, const agent_t &receiver, const control_block_t *limit, const std::type_index &msg_type, const message_ref_t &what_to_deliver, unsigned int overlimit_reaction_deep, const message_limit::impl::action_msg_tracer_t *tracer, Lambda delivery_action)
 A helper function for pushing a message or a service request to agent with respect to message limit. More...