|
SObjectizer
5.5
|
Implementation of free functions send/send_delayed. More...
Go to the source code of this file.
Classes | |
| struct | so_5::impl::instantiator_and_sender_base< Message, Is_Signal > |
| struct | so_5::impl::instantiator_and_sender_base< Message, true > |
| struct | so_5::impl::instantiator_and_sender< Message > |
Namespaces | |
| so_5 | |
| Public part of message limit implementation. | |
| so_5::impl | |
| Details of SObjectizer run-time implementations. | |
| so_5::send_functions_details | |
| Implementation details for send-family and request_future/value helper functions. | |
Functions | |
| const so_5::mbox_t & | so_5::send_functions_details::arg_to_mbox (const so_5::mbox_t &mbox) |
| const so_5::mbox_t & | so_5::send_functions_details::arg_to_mbox (const so_5::agent_t &agent) |
| const so_5::mbox_t & | so_5::send_functions_details::arg_to_mbox (const so_5::adhoc_agent_definition_proxy_t &agent) |
| so_5::mbox_t | so_5::send_functions_details::arg_to_mbox (const so_5::mchain_t &chain) |
| so_5::environment_t & | so_5::send_functions_details::arg_to_env (const so_5::agent_t &agent) |
| so_5::environment_t & | so_5::send_functions_details::arg_to_env (const so_5::adhoc_agent_definition_proxy_t &agent) |
| so_5::environment_t & | so_5::send_functions_details::arg_to_env (const so_5::mchain_t &chain) |
| template<typename Message , typename Target , typename... Args> | |
| void | so_5::send (Target &&to, Args &&... args) |
| A utility function for creating and delivering a message or a signal. More... | |
| template<typename Target , typename Message > | |
| std::enable_if< !is_signal< Message >::value >::type | so_5::send (Target &&to, mhood_t< Message > what) |
| A version of send function for redirection of a message from exising message hood. More... | |
| template<typename Target , typename Message > | |
| std::enable_if< is_signal< Message >::value >::type | so_5::send (Target &&to, mhood_t< Message >) |
| A version of send function for redirection of a signal from exising message hood. More... | |
| template<typename Message , typename... Args> | |
| void | so_5::send_to_agent (const so_5::agent_t &receiver, Args &&... args) |
| A utility function for creating and delivering a message to the agent's direct mbox. More... | |
| template<typename Message , typename... Args> | |
| void | so_5::send_to_agent (const so_5::adhoc_agent_definition_proxy_t &receiver, Args &&... args) |
| A utility function for creating and delivering a message to the ad-hoc agent's direct mbox. More... | |
| template<typename Message , typename... Args> | |
| void | so_5::send_delayed (so_5::environment_t &env, const so_5::mbox_t &to, std::chrono::steady_clock::duration pause, Args &&... args) |
| A utility function for creating and delivering a delayed message. More... | |
| template<typename Message , typename Target , typename... Args> | |
| void | so_5::send_delayed (Target &&target, std::chrono::steady_clock::duration pause, Args &&... args) |
| A utility function for creating and delivering a delayed message to the specified destination. More... | |
| template<typename Message , typename... Args> | |
| void | so_5::send_delayed (so_5::agent_t &agent, const so_5::mbox_t &to, std::chrono::steady_clock::duration pause, Args &&... args) |
| A utility function for creating and delivering a delayed message. More... | |
| template<typename Message > | |
| std::enable_if< !message_payload_type< Message >::is_signal >::type | so_5::send_delayed (so_5::environment_t &env, const so_5::mbox_t &to, std::chrono::steady_clock::duration pause, mhood_t< Message > msg) |
| A utility function for delayed redirection of a message from existing message hood. More... | |
| template<typename Message > | |
| std::enable_if< message_payload_type< Message >::is_signal >::type | so_5::send_delayed (so_5::environment_t &env, const so_5::mbox_t &to, std::chrono::steady_clock::duration pause, mhood_t< Message >) |
| A utility function for delayed redirection of a signal from existing message hood. More... | |
| template<typename Message , typename... Args> | |
| void | so_5::send_delayed_to_agent (so_5::agent_t &agent, std::chrono::steady_clock::duration pause, Args &&... args) |
| A utility function for creating and delivering a delayed message to the agent's direct mbox. More... | |
| template<typename Target , typename Message > | |
| void | so_5::send_delayed (Target &&target, std::chrono::steady_clock::duration pause, mhood_t< Message > mhood) |
| A helper function for redirection of a message/signal as a delayed message/signal. More... | |
| template<typename Message , typename... Args> | |
| void | so_5::send_delayed_to_agent (const so_5::adhoc_agent_definition_proxy_t &agent, std::chrono::steady_clock::duration pause, Args &&... args) |
| A utility function for creating and delivering a delayed message to the ad-hoc agent's direct mbox. More... | |
| template<typename Message , typename... Args> | |
| SO_5_NODISCARD timer_id_t | so_5::send_periodic (so_5::environment_t &env, const so_5::mbox_t &to, std::chrono::steady_clock::duration pause, std::chrono::steady_clock::duration period, Args &&... args) |
| A utility function for creating and delivering a periodic message. More... | |
| template<typename Message , typename... Args> | |
| SO_5_NODISCARD timer_id_t | so_5::send_periodic (so_5::agent_t &agent, const so_5::mbox_t &to, std::chrono::steady_clock::duration pause, std::chrono::steady_clock::duration period, Args &&... args) |
| A utility function for creating and delivering a periodic message. More... | |
| template<typename Message , typename Target , typename... Args> | |
| SO_5_NODISCARD timer_id_t | so_5::send_periodic (Target &&target, std::chrono::steady_clock::duration pause, std::chrono::steady_clock::duration period, Args &&... args) |
| A utility function for creating and delivering a periodic message to the specified destination. More... | |
| template<typename Message > | |
| SO_5_NODISCARD std::enable_if< !is_signal< Message >::value, timer_id_t >::type | so_5::send_periodic (so_5::environment_t &env, const so_5::mbox_t &to, std::chrono::steady_clock::duration pause, std::chrono::steady_clock::duration period, mhood_t< Message > mhood) |
| A utility function for delivering a periodic from an existing message hood. More... | |
| template<typename Message > | |
| SO_5_NODISCARD std::enable_if< is_signal< Message >::value, timer_id_t >::type | so_5::send_periodic (so_5::environment_t &env, const so_5::mbox_t &to, std::chrono::steady_clock::duration pause, std::chrono::steady_clock::duration period, mhood_t< Message >) |
| A utility function for periodic redirection of a signal from existing message hood. More... | |
| template<typename Target , typename Message > | |
| SO_5_NODISCARD timer_id_t | so_5::send_periodic (Target &&target, std::chrono::steady_clock::duration pause, std::chrono::steady_clock::duration period, mhood_t< Message > mhood) |
| A helper function for redirection of a message/signal as a periodic message/signal. More... | |
| template<typename Message , typename... Args> | |
| SO_5_NODISCARD timer_id_t | so_5::send_periodic_to_agent (so_5::agent_t &agent, std::chrono::steady_clock::duration pause, std::chrono::steady_clock::duration period, Args &&... args) |
| A utility function for creating and delivering a periodic message to the agent's direct mbox. More... | |
| template<typename Message , typename... Args> | |
| SO_5_NODISCARD timer_id_t | so_5::send_periodic_to_agent (const so_5::adhoc_agent_definition_proxy_t &agent, std::chrono::steady_clock::duration pause, std::chrono::steady_clock::duration period, Args &&... args) |
| A utility function for creating and delivering a periodic message to the agent's direct mbox. More... | |
Helper functions for simplification of synchronous interactions. | |
| template<typename Result , typename Msg , typename Target , typename... Args> | |
| std::future< Result > | so_5::request_future (Target &&who, Args &&... args) |
| Make a synchronous request and receive result in form of a future object. Intended to use with messages. More... | |
| template<typename Result , typename Msg , typename Target > | |
| std::enable_if< !is_signal< Msg >::value, std::future< Result > >::type | so_5::request_future (Target &&who, mhood_t< Msg > mhood) |
| A version of request_future function for initiating of a synchonous request from exising message hood. More... | |
| template<typename Result , typename Msg , typename Target > | |
| std::enable_if< is_signal< Msg >::value, std::future< Result > >::type | so_5::request_future (Target &&who, mhood_t< Msg >) |
| A version of request_future function for initiating of a synchonous request from exising message hood. More... | |
| template<typename Result , typename Signal , typename Target , typename Future_Type = typename std::enable_if< so_5::is_signal< Signal >::value, std::future< Result > >::type> | |
| Future_Type | so_5::request_future (Target &&who) |
| Make a synchronous request and receive result in form of a future object. Intended to use with signals. More... | |
| template<typename Result , typename Msg , typename Target , typename Duration , typename... Args> | |
| Result | so_5::request_value (Target &&who, Duration timeout, Args &&... args) |
| Make a synchronous request and receive result in form of a value with waiting for some time. Intended to use with messages. More... | |
| template<typename Result , typename Target , typename Duration , typename Msg > | |
| std::enable_if< !so_5::is_signal< Msg >::value, Result >::type | so_5::request_value (Target &&who, Duration timeout, mhood_t< Msg > mhood) |
| A version of request_value function for initiating of a synchonous request from exising message hood. More... | |
| template<typename Result , typename Signal , typename Target , typename Duration , typename Result_Type = typename std::enable_if< so_5::is_signal< Signal >::value, Result >::type> | |
| Result_Type | so_5::request_value (Target &&who, Duration timeout) |
| Make a synchronous request and receive result in form of a value with waiting for some time. Intended to use with signals. More... | |
| template<typename Result , typename Target , typename Duration , typename Msg > | |
| std::enable_if< so_5::is_signal< Msg >::value, Result >::type | so_5::request_value (Target &&who, Duration timeout, mhood_t< Msg >) |
| A version of request_value function for initiating of a synchonous request from exising message hood. More... | |
Implementation of free functions send/send_delayed.
1.8.14