libNeon
Loading...
Searching...
No Matches
neo::steady_timer Class Reference

#include <timer.hpp>

Inheritance diagram for neo::steady_timer:
Collaboration diagram for neo::steady_timer:

Public Member Functions

 steady_timer ()
 
 steady_timer (std::chrono::milliseconds period, std::function< void(std::chrono::milliseconds)> cbk, BaseType_t core_affinity=tskNO_AFFINITY, timer_idx_t timer_idx=TIMER_0, timer_group_t timer_group=TIMER_GROUP_0)
 
 steady_timer (steady_timer const &)=delete
 
 steady_timer (steady_timer &&) noexcept=default
 
steady_timeroperator= (steady_timer const &)=delete
 
steady_timeroperator= (steady_timer &&) noexcept=default
 
std::chrono::milliseconds elapsed () const
 
void start () override
 
void stop () override
 
void reset () override
 
bool is_active () const
 
std::chrono::milliseconds period () const
 

Private Member Functions

std::chrono::milliseconds elapsed_since_last_start () const
 
- Private Member Functions inherited from neo::generic_timer
 generic_timer ()=default
 
 generic_timer (std::chrono::milliseconds period, std::function< void(generic_timer &)> cbk, BaseType_t core_affinity=tskNO_AFFINITY, timer_idx_t timer_idx=TIMER_0, timer_group_t timer_group=TIMER_GROUP_0)
 
 generic_timer (generic_timer const &)=delete
 
generic_timeroperator= (generic_timer const &)=delete
 
generic_timeroperator= (generic_timer &&t) noexcept
 
 generic_timer (generic_timer &&t) noexcept
 
virtual ~generic_timer ()
 
std::chrono::milliseconds period () const
 
bool is_active () const
 
virtual void start ()
 
virtual void stop ()
 
virtual void reset ()
 
 operator bool () const
 

Static Private Member Functions

static void elapsed_callback (generic_timer &gen_timer)
 

Private Attributes

std::chrono::time_point< std::chrono::steady_clock > _last_start
 
std::chrono::milliseconds _previous_laps_duration
 

Constructor & Destructor Documentation

◆ steady_timer() [1/4]

neo::steady_timer::steady_timer ( )

◆ steady_timer() [2/4]

neo::steady_timer::steady_timer ( std::chrono::milliseconds  period,
std::function< void(std::chrono::milliseconds)>  cbk,
BaseType_t  core_affinity = tskNO_AFFINITY,
timer_idx_t  timer_idx = TIMER_0,
timer_group_t  timer_group = TIMER_GROUP_0 
)

◆ steady_timer() [3/4]

neo::steady_timer::steady_timer ( steady_timer const &  )
delete

◆ steady_timer() [4/4]

neo::steady_timer::steady_timer ( steady_timer &&  )
defaultnoexcept

Member Function Documentation

◆ elapsed()

std::chrono::milliseconds neo::steady_timer::elapsed ( ) const

◆ elapsed_callback()

void neo::steady_timer::elapsed_callback ( generic_timer gen_timer)
staticprivate

◆ elapsed_since_last_start()

std::chrono::milliseconds neo::steady_timer::elapsed_since_last_start ( ) const
private

◆ is_active()

bool neo::generic_timer::is_active ( ) const
inline

◆ operator=() [1/2]

steady_timer & neo::steady_timer::operator= ( steady_timer &&  )
defaultnoexcept

◆ operator=() [2/2]

steady_timer & neo::steady_timer::operator= ( steady_timer const &  )
delete

◆ period()

std::chrono::milliseconds neo::generic_timer::period ( ) const
inline

◆ reset()

void neo::steady_timer::reset ( )
overridevirtual

Reimplemented from neo::generic_timer.

◆ start()

void neo::steady_timer::start ( )
overridevirtual

Reimplemented from neo::generic_timer.

◆ stop()

void neo::steady_timer::stop ( )
overridevirtual

Reimplemented from neo::generic_timer.

Member Data Documentation

◆ _last_start

std::chrono::time_point<std::chrono::steady_clock> neo::steady_timer::_last_start
private

◆ _previous_laps_duration

std::chrono::milliseconds neo::steady_timer::_previous_laps_duration
private

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