clock_driver Class Reference

#include <clock-drivers.h>

List of all members.

Public Member Functions

 clock_driver ()
virtual void init ()
void shift_metarate (signed4 direction_metarate)
virtual void shift_playrate (signed4 direction_playrate)
virtual void changetempo (signed8 period)
virtual void set_normalperiod_metarate (quad_period_type newnormalperiod_metarate)

Constructor & Destructor Documentation

clock_driver::clock_driver (  )  [inline]

Member Function Documentation

void clock_driver::changetempo ( signed8  period  )  [virtual]

Change tempo to period

  • the current x should remain the same x = y * normalperiod / currentperiod y = x * currentperiod / normalperiod

References assert(), diskrate, dsp, dsp_driver::playrate, x_diskrate, and y_playrate.

Referenced by BpmAnalyzerDialog::tap().

virtual void clock_driver::init (  )  [inline, virtual]

Initialize the driver by allocating necessary threads and data structures.

Referenced by main(), and InitAndStart::run().

virtual void clock_driver::set_normalperiod_metarate ( quad_period_type  newnormalperiod_metarate  )  [inline, virtual]

This function is called by the routines that can detect or modify the native tempo. When overriding this function, you should call the super class Beware: this method does not update the playing file and can be used for instance by the jack clock driver. The global set_normalperiod_metarate on the other hand will update the index file; which might not be wanted.

References diskrate, dsp, dsp_driver::playrate, x_diskrate, and y_playrate.

Referenced by set_normalperiod_metarate().

void clock_driver::shift_metarate ( signed4  direction_metarate  )  [inline]
virtual void clock_driver::shift_playrate ( signed4  direction_playrate  )  [inline, virtual]

References y_playrate.

Referenced by shift_metarate().


The documentation for this class was generated from the following files:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated by  doxygen 1.6.2