MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
MayaFlux::Vruta::CustomClock Class Reference

Configurable timing system for custom processing domains. More...

#include <Clock.hpp>

+ Inheritance diagram for MayaFlux::Vruta::CustomClock:
+ Collaboration diagram for MayaFlux::Vruta::CustomClock:

Public Member Functions

 CustomClock (uint64_t processing_rate=1000, const std::string &unit_name="units")
 Constructs a CustomClock with configurable parameters.
 
void tick (uint64_t units=1) override
 Advances the clock by the specified number of custom units.
 
uint64_t current_position () const override
 Get current position in the domain's timeline.
 
double current_time () const override
 Converts current position to seconds using custom rate.
 
uint32_t rate () const override
 Get the processing rate for this timing domain.
 
const std::string & unit_name () const
 Gets the name of the processing units.
 
void reset () override
 Reset clock to initial state (position 0)
 
- Public Member Functions inherited from MayaFlux::Vruta::IClock
virtual ~IClock ()=default
 

Private Attributes

uint64_t m_processing_rate
 Custom processing rate in units per second.
 
uint64_t m_current_position
 Current position in custom units.
 
std::string m_unit_name
 Name describing the custom units.
 

Detailed Description

Configurable timing system for custom processing domains.

CustomClock provides a flexible timing implementation for arbitrary processing domains that don't fit standard audio/visual patterns. It can be configured with any processing rate and unit name for specialized scheduling needs.

Use Cases:

  • Custom processing pipelines with specific timing requirements
  • Integration with external systems that have unique timing patterns
  • Experimental processing domains during development
  • On-demand processing that doesn't follow regular timing patterns

Definition at line 323 of file Clock.hpp.


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