11 #include <so_5/version.hpp> 13 #include <so_5_extra/revocable_msg/pub.hpp> 15 #include <so_5_extra/error_ranges.hpp> 17 #include <so_5/timers.hpp> 18 #include <so_5/enveloped_msg.hpp> 19 #include <so_5/send_functions.hpp> 106 class timer_id_t
final 121 ::so_5::intrusive_ptr_t< details::envelope_t > envelope,
122 ::so_5::timer_id_t actual_id )
140 timer_id_t &
operator=(
const timer_id_t & ) =
delete;
143 timer_id_t( timer_id_t && )
noexcept =
default;
144 timer_id_t &
operator=( timer_id_t && )
noexcept =
default;
147 swap( timer_id_t & a, timer_id_t & b )
noexcept 149 a.m_envelope.swap( b.m_envelope );
150 a.m_actual_id.swap( b.m_actual_id );
182 return m_actual_id.is_active();
195 m_envelope->revoke();
196 m_actual_id.release();
217 template<
typename...
Args >
258 template<
class Message,
bool Is_Signal >
261 template<
typename...
Args >
285 template<
class Message >
306 template<
class Message >
376 template<
typename Message,
typename Target,
typename... Args >
377 SO_5_NODISCARD timer_id_t
388 return impl::instantiator_and_sender< Message >::send_periodic(
389 ::so_5::send_functions_details::arg_to_mbox( target ),
392 std::forward< Args >( args )... );
static SO_5_NODISCARD ::so_5::extra::revocable_timer::timer_id_t send_periodic(const ::so_5::mbox_t &to, std::chrono::steady_clock::duration pause, std::chrono::steady_clock::duration period, Args &&... args)
Ranges for error codes of each submodules.