130 float *output,
float *output1,
PluginDef *plugin);
164 processing_pointer() {
174 delete[] rack_order_ptr[0];
175 delete[] rack_order_ptr[1];
181 if (n <= size[current_index]) {
184 delete[] rack_order_ptr[current_index];
185 rack_order_ptr[current_index] =
new F[n];
186 size[current_index] = n;
187 current_pointer = rack_order_ptr[current_index];
192 setsize(modules.size()+1);
193 int active_counter = 0;
194 for (list<Plugin*>::const_iterator p = modules.begin(); p != modules.end(); p++) {
198 (*p)->set_on_off(
false);
206 current_pointer[active_counter++] = f;
208 current_pointer[active_counter].func = 0;
211 current_index = (current_index+1) % 2;
212 current_pointer = rack_order_ptr[current_index];
222 void process(
int count,
float *input,
float *output);
229 void process(
int count,
float *input1,
float *input2,
float *output1,
float *output2);
virtual void overload(OverloadType tp, const char *reason)=0
void get_sched_priority(int &policy, int &priority, int prio_dim=0)
void add_selector(ModuleSelector &sel)
sigc::signal< void, unsigned int > & signal_buffersize_change()
void init(unsigned int samplerate, unsigned int buffersize, int policy, int priority)
unsigned int get_samplerate()
list< ModuleSelector * > selectors
unsigned int get_buffersize()
sigc::signal< void, unsigned int > & signal_samplerate_change()
void registerParameter(ParameterGroups &groups)
virtual bool update_module_lists()=0
virtual void set_rack_changed()=0
void set_buffersize(unsigned int buffersize_)
void clear_rack_changed()
virtual void wait_ramp_down_finished()=0
sigc::signal< void, unsigned int > samplerate_change
virtual void start_ramp_down()=0
sigc::connection rack_changed
sigc::signal< void, unsigned int > buffersize_change
void set_samplerate(unsigned int samplerate_)
virtual void start_ramp_up()=0
ModuleSelector(EngineControl &seq_)
virtual ~ModuleSelector()
virtual void set_module()=0
virtual void overload(OverloadType tp, const char *reason)
sigc::signal< void, GxEngineState > state_change
void print_engine_state()
virtual void set_samplerate(unsigned int samplerate)
bool prepare_module_lists()
const char * overload_reason
bool check_module_lists()
virtual void start_ramp_up()
virtual void start_ramp_down()
static int sporadic_interval
GxEngineState get_state()
virtual void set_rack_changed()
void set_stateflag(StateFlag flag)
StereoModuleChain stereo_chain
sigc::signal< void, GxEngineState > & signal_state_change()
MonoModuleChain mono_chain
void set_state(GxEngineState state)
void clear_stateflag(StateFlag flag)
static void set_overload_interval(int i)
virtual void wait_ramp_down_finished()
Glib::Dispatcher overload_detected
boost::mutex stateflags_mutex
void clear_module_states()
void commit_module_lists()
virtual bool update_module_lists()
void process(int count, float *input, float *output)
void set_samplerate(int samplerate)
bool next_commit_needs_ramp
void clear_module_states()
void set_ramp_mode(RampMode n)
void try_set_ramp_mode(RampMode oldmode, RampMode newmode, int oldrv, int newrv)
void wait_ramp_down_finished()
void set_ramp_value(int n)
list< Plugin * > to_release
void print_chain_state(const char *title)
bool set_plugin_list(const list< Plugin * > &p)
void process(int count, float *input1, float *input2, float *output1, float *output2)
void commit(bool clear, ParamMap &pmap)
~ThreadSafeChainPointer()
F get_audio(PluginDef *p)
void empty_chain(ParamMap &pmap)
void printlist(const char *title, const list< Plugin * > &modules, bool header=true)
void(* monochainorder)(int count, float *output, float *output1, PluginDef *plugin)
void(* stereochainorder)(int count, float *input, float *input1, float *output, float *output1, PluginDef *plugin)
int atomic_get(volatile int &p)
void atomic_set(volatile int *p, int v)
clearstatefunc clear_state
process_mono_audio mono_audio
process_stereo_audio stereo_audio
activatefunc activate_plugin
monochain_data(monochainorder func_, PluginDef *plugin_)
stereochain_data(stereochainorder func_, PluginDef *plugin_)