28#ifndef CMSIS_PLUS_RTOS_OS_TIMER_H_
29#define CMSIS_PLUS_RTOS_OS_TIMER_H_
33#if defined(__cplusplus)
41#pragma GCC diagnostic push
44#pragma clang diagnostic ignored "-Wc++98-compat"
45#pragma clang diagnostic ignored "-Wdocumentation-unknown-command"
56#pragma GCC diagnostic push
57#pragma GCC diagnostic ignored "-Wpadded"
296 operator= (
const timer&) =
delete;
298 operator= (
timer&&) =
delete;
395#if !defined(OS_USE_RTOS_PORT_TIMER)
398 internal_interrupt_service_routine (
void);
424#if !defined(OS_USE_RTOS_PORT_TIMER)
425 clock* clock_ =
nullptr;
431#if defined(OS_USE_RTOS_PORT_TIMER)
432 friend class port::timer;
433 os_timer_port_data_t port_;
451#pragma GCC diagnostic pop
507#pragma GCC diagnostic pop
Base class for attributes.
Base class for named system objects.
const char * name(void) const
Get object name.
Double linked list node, with time stamp and timer.
Periodic timer attributes.
attributes_periodic & operator=(const attributes_periodic &)=default
attributes_periodic(const attributes_periodic &)=default
~attributes_periodic()=default
Destruct the periodic timer attributes object instance.
constexpr attributes_periodic()
Construct periodic timer attributes object instance.
attributes_periodic(attributes_periodic &&)=default
type_t tm_type
Timer type attribute.
constexpr attributes()
Construct a timer attributes object instance.
attributes & operator=(const attributes &)=default
attributes(attributes &&)=default
~attributes()=default
Destruct the timer attributes object instance.
attributes(const attributes &)=default
User single-shot or periodic timer.
bool operator==(const timer &rhs) const
Compare timers.
~timer()
Destruct the timer object instance.
static const attributes once_initializer
Default one shot timer initialiser.
result_t stop(void)
Stop the timer.
result_t start(clock::duration_t period)
Start or restart the timer.
port::clock::duration_t duration_t
Type of variables holding clock durations.
void * func_args_t
Timer call back function arguments.
void(*)(func_args_t args) func_t
Entry point of a timer call back function.
uint8_t type_t
Type of of variables holding timer run types.
uint8_t state_t
Type of of variables holding timer states.
static const attributes_periodic periodic_initializer
Default periodic timer initialiser.
uint32_t result_t
Type of values returned by RTOS functions.
@ periodic
Run periodically.
@ undefined
Used to catch uninitialised threads.