Class template implementing an extended OS Timer with 64-bit microsecond times and delegate callback support. More...

#include <Timer.h>

Inheritance diagram for OsTimer64Api< TimerClass >:
Collaboration diagram for OsTimer64Api< TimerClass >:

Public Types

using Clock = OsTimerApi::Clock
 
using TickType = uint64_t
 
using TimeType = uint64_t
 

Public Member Functions

 OsTimer64Api ()
 
 ~OsTimer64Api ()
 
bool isArmed () const
 
TickType ticks () const
 
void setCallback (TimerCallback callback, void *arg)
 
void setCallback (TimerDelegate delegateFunction)
 
void setInterval (TickType interval)
 
TickType getInterval () const
 
void arm (bool repeating)
 
void disarm ()
 
- Public Member Functions inherited from CallbackTimerApi< OsTimer64Api< TimerClass > >
 CallbackTimerApi ()
 
 CallbackTimerApi (const CallbackTimerApi &)=delete
 
String name () const
 
String toString () const
 
 operator String () const
 

Static Public Member Functions

static constexpr const char * typeName ()
 
static constexpr TickType minTicks ()
 
static constexpr TickType maxTicks ()
 
- Static Public Member Functions inherited from CallbackTimerApi< OsTimer64Api< TimerClass > >
static constexpr const char * typeName ()
 

Protected Member Functions

void longTick ()
 

Detailed Description

template<class TimerClass>
class OsTimer64Api< TimerClass >

Class template implementing an extended OS Timer with 64-bit microsecond times and delegate callback support.

Member Typedef Documentation

◆ Clock

template<class TimerClass >
using OsTimer64Api< TimerClass >::Clock = OsTimerApi::Clock

◆ TickType

template<class TimerClass >
using OsTimer64Api< TimerClass >::TickType = uint64_t

◆ TimeType

template<class TimerClass >
using OsTimer64Api< TimerClass >::TimeType = uint64_t

Constructor & Destructor Documentation

◆ OsTimer64Api()

template<class TimerClass >
OsTimer64Api< TimerClass >::OsTimer64Api ( )
inline

◆ ~OsTimer64Api()

template<class TimerClass >
OsTimer64Api< TimerClass >::~OsTimer64Api ( )
inline

Member Function Documentation

◆ arm()

template<class TimerClass >
void OsTimer64Api< TimerClass >::arm ( bool  repeating)
inline

◆ disarm()

template<class TimerClass >
void OsTimer64Api< TimerClass >::disarm ( )
inline

◆ getInterval()

template<class TimerClass >
TickType OsTimer64Api< TimerClass >::getInterval ( ) const
inline

◆ isArmed()

template<class TimerClass >
bool OsTimer64Api< TimerClass >::isArmed ( ) const
inline

◆ maxTicks()

template<class TimerClass >
static constexpr TickType OsTimer64Api< TimerClass >::maxTicks ( )
inlinestaticconstexpr

◆ minTicks()

template<class TimerClass >
static constexpr TickType OsTimer64Api< TimerClass >::minTicks ( )
inlinestaticconstexpr

◆ setCallback() [1/2]

template<class TimerClass >
void OsTimer64Api< TimerClass >::setCallback ( TimerCallback  callback,
void *  arg 
)
inline

◆ setCallback() [2/2]

template<class TimerClass >
void OsTimer64Api< TimerClass >::setCallback ( TimerDelegate  delegateFunction)
inline

◆ ticks()

template<class TimerClass >
TickType OsTimer64Api< TimerClass >::ticks ( ) const
inline

◆ typeName()

template<class TimerClass >
static constexpr const char* OsTimer64Api< TimerClass >::typeName ( )
inlinestaticconstexpr

Member Data Documentation

◆ arg

template<class TimerClass >
void* OsTimer64Api< TimerClass >::arg = nullptr

◆ func

template<class TimerClass >
TimerCallback OsTimer64Api< TimerClass >::func = nullptr

The documentation for this class was generated from the following file: