SObjectizer  5.7
Classes | Enumerations | Functions
timertt::details Namespace Reference

An internal namespace with implementation details. More...

Classes

class  basic_methods_impl_mixin
 A implementation of basic methods for timer managers and timer threads. More...
 
class  buffer_allocated_object
 A special storage to be used for holding non-default constructible objects which are created by demand. More...
 
struct  consumer_type
 A type-container for types of engine-consumers. More...
 
class  engine_common
 A common part for all timer engines. More...
 
class  manager_impl_template
 Template-based implementation of timer manager. More...
 
struct  mixin_selector
 A selector of actual mixin type for timer manager or timer thread. More...
 
struct  mixin_selector< thread_safety::safe, consumer_type::manager >
 A selector of actual mixin type for thread-safe timer manager. More...
 
struct  mixin_selector< thread_safety::safe, consumer_type::thread >
 A selector of actual mixin type for timer thread. More...
 
struct  mixin_selector< thread_safety::unsafe, consumer_type::manager >
 A selector of actual mixin type for not-thread-safe timer manager. More...
 
class  thread_impl_template
 Template-based implementation of timer thread. More...
 
struct  thread_mixin
 A mixin which must be used as base class for timer threads. More...
 
struct  thread_safe_manager_mixin
 A mixin which must be used as base class for thread-safe timer managers. More...
 
struct  thread_unsafe_manager_mixin
 A mixin which must be used as base class for not-thread-safe timer managers. More...
 
class  timer_action_holder
 A special storage for holding timer actions. More...
 
class  timer_action_holder< default_timer_action_type >
 
class  timer_heap_engine
 An engine for timer heap mechanism. More...
 
struct  timer_heap_engine_defaults
 Container for static method with default values for timer_heap engine. More...
 
class  timer_list_engine
 An engine for timer list mechanism. More...
 
struct  timer_list_engine_defaults
 Container for static method with default values for timer_list engine. More...
 
class  timer_wheel_engine
 A engine for timer wheel mechanism. More...
 
struct  timer_wheel_engine_defaults
 Container for static method with default values for timer_wheel engine. More...
 

Enumerations

enum  timer_status : unsigned int { timer_status::deactivated, timer_status::active, timer_status::wait_for_execution, timer_status::wait_for_deactivation }
 Status of timer. More...
 
enum  timer_kind { timer_kind::single_shot, timer_kind::periodic }
 Type of the timer (single-shot or periodic). More...
 

Functions

template<typename Lambda >
void invoke_noexcept_code_block (Lambda &&lambda) noexcept
 

Detailed Description

An internal namespace with implementation details.

Enumeration Type Documentation

◆ timer_kind

Type of the timer (single-shot or periodic).

Since
v.1.1.1
Enumerator
single_shot 

Timer is a single-shot timer.

periodic 

Timer is a periodic timer.

◆ timer_status

enum timertt::details::timer_status : unsigned int
strong

Status of timer.

Enumerator
deactivated 

Timer is deactivated.

It can be activated or destroyed safely.

active 

Timer is activated.

It can be safely deactivated and destroyed.

wait_for_execution 

Timer is in execution list and is waiting for execution.

It cannot be deactivated and destroyed right now. Status of timer can only be changed to wait_for_deactivation. And actual deactivation will be performed later, after processing of execution list.

wait_for_deactivation 

Timer must be deactivated after processing of execution list.

The only possible switch for the timer is to deactivated status.

Function Documentation

◆ invoke_noexcept_code_block()

template<typename Lambda >
void timertt::details::invoke_noexcept_code_block ( Lambda &&  lambda)
noexcept