Ardour  9.0-pre0-2100-ga56b4e5aeb
CycleTimer Class Reference

#include <cycle_timer.h>

Public Member Functions

 CycleTimer ()
 
void set_samplerate (double samplerate)
 
double get_samplerate () const
 
double get_sample_length_us () const
 
double get_length_us () const
 
void set_samples_per_cycle (uint32_t samples)
 
uint32_t get_samples_per_cycle () const
 
uint32_t samples_since_cycle_start (int64_t timer_val) const
 
int64_t timestamp_from_sample_offset (uint32_t sample_offset)
 
bool valid () const
 
bool in_cycle (int64_t timer_value_us) const
 
void reset_start (int64_t timestamp)
 
int64_t get_start () const
 
int64_t microseconds_since_start (int64_t timestamp) const
 
int64_t microseconds_since_start (uint32_t samples) const
 
int64_t get_next_start () const
 

Private Attributes

int64_t m_cycle_start
 
uint32_t m_samplerate
 
uint32_t m_samples_per_cycle
 

Detailed Description

Definition at line 29 of file cycle_timer.h.

Constructor & Destructor Documentation

◆ CycleTimer()

CycleTimer::CycleTimer ( )
inline

Definition at line 31 of file cycle_timer.h.

Member Function Documentation

◆ get_length_us()

double CycleTimer::get_length_us ( ) const
inline

Definition at line 44 of file cycle_timer.h.

◆ get_next_start()

int64_t CycleTimer::get_next_start ( ) const
inline

Definition at line 92 of file cycle_timer.h.

◆ get_sample_length_us()

double CycleTimer::get_sample_length_us ( ) const
inline

Definition at line 42 of file cycle_timer.h.

◆ get_samplerate()

double CycleTimer::get_samplerate ( ) const
inline

Definition at line 40 of file cycle_timer.h.

◆ get_samples_per_cycle()

uint32_t CycleTimer::get_samples_per_cycle ( ) const
inline

Definition at line 54 of file cycle_timer.h.

◆ get_start()

int64_t CycleTimer::get_start ( ) const
inline

Definition at line 80 of file cycle_timer.h.

◆ in_cycle()

bool CycleTimer::in_cycle ( int64_t  timer_value_us) const
inline

Definition at line 73 of file cycle_timer.h.

◆ microseconds_since_start() [1/2]

int64_t CycleTimer::microseconds_since_start ( int64_t  timestamp) const
inline

Definition at line 82 of file cycle_timer.h.

◆ microseconds_since_start() [2/2]

int64_t CycleTimer::microseconds_since_start ( uint32_t  samples) const
inline

Definition at line 87 of file cycle_timer.h.

◆ reset_start()

void CycleTimer::reset_start ( int64_t  timestamp)
inline

Definition at line 78 of file cycle_timer.h.

◆ samples_since_cycle_start()

uint32_t CycleTimer::samples_since_cycle_start ( int64_t  timer_val) const
inline

Definition at line 58 of file cycle_timer.h.

◆ set_samplerate()

void CycleTimer::set_samplerate ( double  samplerate)
inline

Definition at line 38 of file cycle_timer.h.

◆ set_samples_per_cycle()

void CycleTimer::set_samples_per_cycle ( uint32_t  samples)
inline

Definition at line 49 of file cycle_timer.h.

◆ timestamp_from_sample_offset()

int64_t CycleTimer::timestamp_from_sample_offset ( uint32_t  sample_offset)
inline

Definition at line 66 of file cycle_timer.h.

◆ valid()

bool CycleTimer::valid ( ) const
inline

Definition at line 71 of file cycle_timer.h.

Member Data Documentation

◆ m_cycle_start

int64_t CycleTimer::m_cycle_start
private

Definition at line 98 of file cycle_timer.h.

◆ m_samplerate

uint32_t CycleTimer::m_samplerate
private

Definition at line 100 of file cycle_timer.h.

◆ m_samples_per_cycle

uint32_t CycleTimer::m_samples_per_cycle
private

Definition at line 101 of file cycle_timer.h.


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