11 #include <so_5_extra/error_ranges.hpp> 13 #include <so_5/rt/h/mbox.hpp> 15 #if defined(SO_5_VERSION) 16 #if (SO_5_VERSION < SO_5_VERSION_MAKE(5
, 23
, 0
)) 17 #error "SObjectizer v.5.5.23 or above is required" 20 #error "SObjectizer v.5.5.23 or above is required" 153 SO_5_THROW_EXCEPTION(
154 errors::rc_nullptr_as_underlying_mbox,
155 "nullptr is used as underlying mbox" );
184 return *m_underlying_mbox;
192 ::so_5::mbox_t underlying_mbox )
204 return underlying_mbox().id();
209 const std::type_index & type_index,
210 const ::so_5::message_limit::control_block_t * limit,
211 ::so_5::agent_t * subscriber )
override 213 underlying_mbox().subscribe_event_handler(
221 const std::type_index & type_index,
222 ::so_5::agent_t * subscriber )
override 224 underlying_mbox().unsubscribe_event_handlers(
232 return underlying_mbox().query_name();
238 return underlying_mbox().type();
243 const std::type_index & msg_type,
244 const ::so_5::message_ref_t & message,
245 unsigned int overlimit_reaction_deep )
const override 247 underlying_mbox().do_deliver_message(
250 overlimit_reaction_deep );
255 const std::type_index & msg_type,
256 const ::so_5::message_ref_t & message,
257 unsigned int overlimit_reaction_deep )
const override 259 underlying_mbox().do_deliver_service_request(
262 overlimit_reaction_deep );
267 const std::type_index & msg_type,
268 const ::so_5::message_ref_t & message,
269 unsigned int overlimit_reaction_deep )
override 271 underlying_mbox().do_deliver_enveloped_msg(
274 overlimit_reaction_deep );
279 const std::type_index & msg_type,
280 const ::so_5::delivery_filter_t & filter,
281 ::so_5::agent_t & subscriber )
override 283 underlying_mbox().set_delivery_filter(
291 const std::type_index & msg_type,
292 ::so_5::agent_t & subscriber )
noexcept override 294 underlying_mbox().drop_delivery_filter(
302 const std::type_index & msg_type,
303 const ::so_5::message_ref_t & message )
override 305 delegate_deliver_message_from_timer(
Ranges for error codes of each submodules.