22 inline bool operator() (
const char* lhs,
const char* rhs)
const {
23 return strcmp(lhs, rhs) < 0;
56 enum { POST_WEIGHT = 2000 };
72 const std::string&
id_on_off()
const {
return p_on_off->
id(); }
75 inline int position_weight() {
return get_effect_post_pre() ? get_position() : get_position() + POST_WEIGHT; }
77 void copy_position(
const Plugin& plugin);
80 friend void printlist(
const char *title,
const list<Plugin*>& modules,
bool header);
89 virtual bool load(
Plugin *p) = 0;
99 static float *registerVar_(
const char*
id,
const char* name,
const char* tp,
100 const char* tooltip,
float* var,
float val,
101 float low,
float up,
float step);
102 static void registerBoolVar_(
const char*
id,
const char* name,
const char* tp,
103 const char* tooltip,
bool* var,
bool val);
104 static void registerNonMidiVar_(
const char *
id,
bool*var,
bool preset,
bool nosave);
105 static void registerNonMidiFloatVar_(
const char *
id,
float *var,
bool preset,
bool nosave,
106 float val,
float low,
float up,
float step);
107 static void registerEnumVar_(
const char *
id,
const char* name,
const char* tp,
108 const char* tooltip,
const value_pair* values,
float *var,
float val,
109 float low,
float up,
float step);
110 static float *registerSharedEnumVar_(
const char *
id,
const char* name,
const char* tp,
111 const char* tooltip,
const value_pair* values,
float *var,
float val,
112 float low,
float up,
float step);
113 static void registerIEnumVar_(
const char *
id,
const char* name,
const char* tp,
114 const char* tooltip,
const value_pair* values,
int *var,
int val);
147 Plugin *find_plugin(
const std::string&
id)
const;
148 Plugin *lookup_plugin(
const std::string&
id)
const;
152 pluginmap::iterator
begin() {
return pmap.begin(); }
153 pluginmap::iterator
end() {
return pmap.end(); }
154 int insert_plugin(
Plugin *pvars);
155 void update_plugin(
Plugin *pvars);
156 void delete_module(
Plugin *pl);
161 int plugin_pos[PLUGIN_POS_COUNT];
166 void set_samplerate(
int samplerate);
182 void ordered_mono_list(list<Plugin*>& mono,
int mode);
183 void ordered_stereo_list(list<Plugin*>& stereo,
int mode);
184 void ordered_list(list<Plugin*>& l,
bool stereo,
int flagmask,
int flagvalue);
192 void printlist(
const char *title,
const list<Plugin*>& modules,
bool header=
true);
194 inline void printlist(
const char *,
const list<Plugin*>&,
bool=
true) {}
const std::string & id_on_off() const
sigc::signal< void, const char *, bool > insert_remove
bool get_plug_visible() const
void set_pdef(PluginDef *p)
void printlist(const char *title, const list< Plugin *> &modules, bool header=true)
const std::string & id_plug_visible() const
bool get_box_visible() const
bool operator()(const char *lhs, const char *rhs) const
const std::string & id_box_visible() const
const std::string & id_position() const
int get_effect_post_pre() const
PluginDef *(* plugindef_creator)()
const std::string & id_effect_post_pre() const
void set_effect_post_pre(int v) const
void set_position(int v) const
map< const std::string, Plugin * > pluginmap
void set_plug_visible(bool v) const
pluginmap::iterator begin()
void set_box_visible(bool v) const
void set_on_off(bool v) const
const string & id() const
pair< const std::string, Plugin * > map_pair
sigc::signal< void, const char *, bool > & signal_insert_remove()
pluginmap::iterator end()