Guitarix
gx_engine::ProcessingChainBase Class Reference

#include <gx_modulesequencer.h>

Inheritance diagram for gx_engine::ProcessingChainBase:
gx_engine::ThreadSafeChainPointer< monochain_data > gx_engine::ThreadSafeChainPointer< stereochain_data > gx_engine::ThreadSafeChainPointer< F > gx_engine::MonoModuleChain gx_engine::StereoModuleChain

Public Types

enum  RampMode {
  ramp_mode_down_dead , ramp_mode_down , ramp_mode_up_dead , ramp_mode_up ,
  ramp_mode_off
}
 

Public Member Functions

 ProcessingChainBase ()
 
RampMode get_ramp_mode ()
 
int get_ramp_value ()
 
void set_samplerate (int samplerate)
 
bool set_plugin_list (const list< Plugin * > &p)
 
void clear_module_states ()
 
void post_rt_finished ()
 
bool wait_rt_finished ()
 
void set_latch ()
 
void wait_latch ()
 
void sync ()
 
bool check_release ()
 
void release ()
 
void wait_ramp_down_finished ()
 
void start_ramp_up ()
 
void start_ramp_down ()
 
void set_down_dead ()
 
bool is_down_dead ()
 
void set_stopped (bool v)
 
bool is_stopped ()
 
void print_chain_state (const char *title)
 

Public Attributes

bool next_commit_needs_ramp
 

Protected Member Functions

void set_ramp_value (int n)
 
void set_ramp_mode (RampMode n)
 
void try_set_ramp_mode (RampMode oldmode, RampMode newmode, int oldrv, int newrv)
 

Protected Attributes

int steps_up
 
int steps_up_dead
 
int steps_down
 
list< Plugin * > modules
 

Private Attributes

sem_t sync_sem
 
list< Plugin * > to_release
 
int ramp_value
 
int ramp_mode
 
volatile bool stopped
 

Detailed Description

Definition at line 45 of file gx_modulesequencer.h.

Member Enumeration Documentation

◆ RampMode

Enumerator
ramp_mode_down_dead 
ramp_mode_down 
ramp_mode_up_dead 
ramp_mode_up 
ramp_mode_off 

Definition at line 47 of file gx_modulesequencer.h.

Constructor & Destructor Documentation

◆ ProcessingChainBase()

gx_engine::ProcessingChainBase::ProcessingChainBase ( )

Member Function Documentation

◆ check_release()

bool gx_engine::ProcessingChainBase::check_release ( )
inline

Definition at line 83 of file gx_modulesequencer.h.

◆ clear_module_states()

void gx_engine::ProcessingChainBase::clear_module_states ( )

◆ get_ramp_mode()

RampMode gx_engine::ProcessingChainBase::get_ramp_mode ( )
inline

Definition at line 65 of file gx_modulesequencer.h.

Referenced by is_down_dead().

◆ get_ramp_value()

int gx_engine::ProcessingChainBase::get_ramp_value ( )
inline

Definition at line 68 of file gx_modulesequencer.h.

◆ is_down_dead()

bool gx_engine::ProcessingChainBase::is_down_dead ( )
inline

Definition at line 89 of file gx_modulesequencer.h.

◆ is_stopped()

bool gx_engine::ProcessingChainBase::is_stopped ( )
inline

Definition at line 91 of file gx_modulesequencer.h.

◆ post_rt_finished()

void gx_engine::ProcessingChainBase::post_rt_finished ( )
inline

Definition at line 72 of file gx_modulesequencer.h.

◆ print_chain_state()

void gx_engine::ProcessingChainBase::print_chain_state ( const char *  title)

◆ release()

void gx_engine::ProcessingChainBase::release ( )

◆ set_down_dead()

void gx_engine::ProcessingChainBase::set_down_dead ( )
inline

Definition at line 88 of file gx_modulesequencer.h.

Referenced by gx_engine::ModuleSequencer::set_down_dead().

◆ set_latch()

void gx_engine::ProcessingChainBase::set_latch ( )

Referenced by sync().

◆ set_plugin_list()

bool gx_engine::ProcessingChainBase::set_plugin_list ( const list< Plugin * > &  p)

◆ set_ramp_mode()

void gx_engine::ProcessingChainBase::set_ramp_mode ( RampMode  n)
inlineprotected

Definition at line 60 of file gx_modulesequencer.h.

Referenced by set_down_dead().

◆ set_ramp_value()

void gx_engine::ProcessingChainBase::set_ramp_value ( int  n)
inlineprotected

Definition at line 59 of file gx_modulesequencer.h.

◆ set_samplerate()

void gx_engine::ProcessingChainBase::set_samplerate ( int  samplerate)

◆ set_stopped()

void gx_engine::ProcessingChainBase::set_stopped ( bool  v)

◆ start_ramp_down()

void gx_engine::ProcessingChainBase::start_ramp_down ( )

◆ start_ramp_up()

void gx_engine::ProcessingChainBase::start_ramp_up ( )

◆ sync()

void gx_engine::ProcessingChainBase::sync ( )
inline

Definition at line 82 of file gx_modulesequencer.h.

◆ try_set_ramp_mode()

void gx_engine::ProcessingChainBase::try_set_ramp_mode ( RampMode  oldmode,
RampMode  newmode,
int  oldrv,
int  newrv 
)
protected

◆ wait_latch()

void gx_engine::ProcessingChainBase::wait_latch ( )
inline

Definition at line 81 of file gx_modulesequencer.h.

Referenced by sync().

◆ wait_ramp_down_finished()

void gx_engine::ProcessingChainBase::wait_ramp_down_finished ( )

◆ wait_rt_finished()

bool gx_engine::ProcessingChainBase::wait_rt_finished ( )

Referenced by wait_latch().

Member Data Documentation

◆ modules

list<Plugin*> gx_engine::ProcessingChainBase::modules
protected

◆ next_commit_needs_ramp

bool gx_engine::ProcessingChainBase::next_commit_needs_ramp

Definition at line 63 of file gx_modulesequencer.h.

◆ ramp_mode

int gx_engine::ProcessingChainBase::ramp_mode
private

Definition at line 52 of file gx_modulesequencer.h.

Referenced by get_ramp_mode(), and set_ramp_mode().

◆ ramp_value

int gx_engine::ProcessingChainBase::ramp_value
private

Definition at line 51 of file gx_modulesequencer.h.

Referenced by get_ramp_value(), and set_ramp_value().

◆ steps_down

int gx_engine::ProcessingChainBase::steps_down
protected

Definition at line 57 of file gx_modulesequencer.h.

◆ steps_up

int gx_engine::ProcessingChainBase::steps_up
protected

Definition at line 55 of file gx_modulesequencer.h.

◆ steps_up_dead

int gx_engine::ProcessingChainBase::steps_up_dead
protected

Definition at line 56 of file gx_modulesequencer.h.

◆ stopped

volatile bool gx_engine::ProcessingChainBase::stopped
private

Definition at line 53 of file gx_modulesequencer.h.

Referenced by is_stopped().

◆ sync_sem

sem_t gx_engine::ProcessingChainBase::sync_sem
private

Definition at line 49 of file gx_modulesequencer.h.

Referenced by post_rt_finished().

◆ to_release

list<Plugin*> gx_engine::ProcessingChainBase::to_release
private

Definition at line 50 of file gx_modulesequencer.h.

Referenced by check_release().


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