SObjectizer  5.5
Classes | Namespaces | Typedefs | Enumerations | Functions
mbox.hpp File Reference

Mbox definition. More...

#include <string>
#include <memory>
#include <typeindex>
#include <utility>
#include <so_5/h/declspec.hpp>
#include <so_5/h/compiler_features.hpp>
#include <so_5/h/exception.hpp>
#include <so_5/h/wait_indication.hpp>
#include <so_5/rt/h/mbox_fwd.hpp>
#include <so_5/rt/h/message.hpp>
#include <so_5/rt/h/event_data.hpp>

Go to the source code of this file.

Classes

class  so_5::service_invoke_proxy_t< Result >
 A special proxy for service request invocation. More...
 
class  so_5::infinite_wait_service_invoke_proxy_t< Result >
 A special helper class for infinite waiting of service call. More...
 
class  so_5::wait_for_service_invoke_proxy_t< Result, Duration >
 A special helper class for waiting of service call for the specified timeout. More...
 
class  so_5::service_invoke_proxy_t< Result >
 A special proxy for service request invocation. More...
 
class  so_5::delivery_filter_t
 An interface of delivery filter object. More...
 
class  so_5::abstract_message_box_t
 Mail box class. More...
 

Namespaces

 so_5
 Public part of message limit implementation.
 
 so_5::wait_for_service_invoke_proxy_details
 Helper functions for implementation of wait_for_service_invoke_proxy_t class.
 
 so_5::rt
 All code related to implementation of SObjectizer run-time.
 

Typedefs

using so_5::delivery_filter_unique_ptr_t = std::unique_ptr< delivery_filter_t >
 An alias of unique_ptr for delivery_filter. More...
 
using so_5::rt::delivery_possibility_t = so_5::delivery_possibility_t
 
template<class Result >
using so_5::rt::service_invoke_proxy_t = so_5::service_invoke_proxy_t< Result >
 
template<class Result >
using so_5::rt::infinite_wait_service_invoke_proxy_t = so_5::infinite_wait_service_invoke_proxy_t< Result >
 
template<class Result , class Duration >
using so_5::rt::wait_for_service_invoke_proxy_t = so_5::wait_for_service_invoke_proxy_t< Result, Duration >
 
using so_5::rt::delivery_filter_t = so_5::delivery_filter_t
 
using so_5::rt::delivery_filter_unique_ptr_t = so_5::delivery_filter_unique_ptr_t
 
using so_5::rt::mbox_type_t = so_5::mbox_type_t
 
using so_5::rt::abstract_message_box_t = so_5::abstract_message_box_t
 

Enumerations

enum  so_5::delivery_possibility_t { so_5::delivery_possibility_t::must_be_delivered, so_5::delivery_possibility_t::no_subscription, so_5::delivery_possibility_t::disabled_by_delivery_filter, so_5::delivery_possibility_t::hidden_by_envelope }
 Result of checking delivery posibility. More...
 
enum  so_5::mbox_type_t { so_5::mbox_type_t::multi_producer_multi_consumer, so_5::mbox_type_t::multi_producer_single_consumer }
 Type of the message box. More...
 

Functions

template<class Result , class Duration , class Future >
Result so_5::wait_for_service_invoke_proxy_details::wait_and_return (const Duration &timeout, Future &f)
 

Detailed Description

Mbox definition.