1 // generated from file '../src/plugins/mbc.dsp' by dsp2cc:
2 // Code generated with Faust (https://faust.grame.fr)
3 
4 #include "gx_faust_support.h"
5 #include "gx_plugin.h"
6 
7 namespace pluginlib {
8 namespace mbc {
9 
10 class Dsp: public PluginDef {
11 private:
12 	int fSampleRate;
13 	double fConst1;
14 	FAUSTFLOAT fHslider0;
15 	FAUSTFLOAT fHslider1;
16 	FAUSTFLOAT fHslider2;
17 	double fRec3[2];
18 	double fConst2;
19 	FAUSTFLOAT fHslider3;
20 	double fVec0[2];
21 	double fRec8[2];
22 	double fRec7[3];
23 	FAUSTFLOAT fHslider4;
24 	double fRec6[3];
25 	FAUSTFLOAT fHslider5;
26 	double fRec5[3];
27 	FAUSTFLOAT fHslider6;
28 	double fRec4[3];
29 	FAUSTFLOAT fHslider7;
30 	FAUSTFLOAT fHslider8;
31 	FAUSTFLOAT fHslider9;
32 	double fRec11[2];
33 	double fRec10[2];
34 	double fRec9[2];
35 	double fRec0[2];
36 	int iRec1[2];
37 	double fRec2[2];
38 	FAUSTFLOAT fVbargraph0;
39 	FAUSTFLOAT fHslider10;
40 	FAUSTFLOAT fHslider11;
41 	FAUSTFLOAT fHslider12;
42 	double fRec15[2];
43 	double fRec21[2];
44 	double fRec20[3];
45 	double fVec1[2];
46 	double fRec19[2];
47 	double fRec18[3];
48 	double fRec17[3];
49 	double fRec16[3];
50 	FAUSTFLOAT fHslider13;
51 	FAUSTFLOAT fHslider14;
52 	FAUSTFLOAT fHslider15;
53 	double fRec24[2];
54 	double fRec23[2];
55 	double fRec22[2];
56 	double fRec12[2];
57 	int iRec13[2];
58 	double fRec14[2];
59 	FAUSTFLOAT fVbargraph1;
60 	FAUSTFLOAT fHslider16;
61 	FAUSTFLOAT fHslider17;
62 	FAUSTFLOAT fHslider18;
63 	double fRec28[2];
64 	double fRec33[2];
65 	double fRec32[3];
66 	double fVec2[2];
67 	double fRec31[2];
68 	double fRec30[3];
69 	double fRec29[3];
70 	FAUSTFLOAT fHslider19;
71 	FAUSTFLOAT fHslider20;
72 	FAUSTFLOAT fHslider21;
73 	double fRec36[2];
74 	double fRec35[2];
75 	double fRec34[2];
76 	double fRec25[2];
77 	int iRec26[2];
78 	double fRec27[2];
79 	FAUSTFLOAT fVbargraph2;
80 	FAUSTFLOAT fHslider22;
81 	FAUSTFLOAT fHslider23;
82 	FAUSTFLOAT fHslider24;
83 	double fRec40[2];
84 	double fRec44[2];
85 	double fRec43[3];
86 	double fVec3[2];
87 	double fRec42[2];
88 	double fRec41[3];
89 	FAUSTFLOAT fHslider25;
90 	FAUSTFLOAT fHslider26;
91 	FAUSTFLOAT fHslider27;
92 	double fRec47[2];
93 	double fRec46[2];
94 	double fRec45[2];
95 	double fRec37[2];
96 	int iRec38[2];
97 	double fRec39[2];
98 	FAUSTFLOAT fVbargraph3;
99 	FAUSTFLOAT fHslider28;
100 	FAUSTFLOAT fHslider29;
101 	FAUSTFLOAT fHslider30;
102 	double fRec51[2];
103 	double fRec53[2];
104 	double fRec52[3];
105 	FAUSTFLOAT fHslider31;
106 	FAUSTFLOAT fHslider32;
107 	FAUSTFLOAT fHslider33;
108 	double fRec56[2];
109 	double fRec55[2];
110 	double fRec54[2];
111 	double fRec48[2];
112 	int iRec49[2];
113 	double fRec50[2];
114 	FAUSTFLOAT fVbargraph4;
115 
116 	void clear_state_f();
117 	int load_ui_f(const UiBuilder& b, int form);
118 	static const char *glade_def;
119 	void init(unsigned int sample_rate);
120 	void compute(int count, FAUSTFLOAT *input0, FAUSTFLOAT *output0);
121 	int register_par(const ParamReg& reg);
122 
123 	static void clear_state_f_static(PluginDef*);
124 	static int load_ui_f_static(const UiBuilder& b, int form);
125 	static void init_static(unsigned int sample_rate, PluginDef*);
126 	static void compute_static(int count, FAUSTFLOAT *input0, FAUSTFLOAT *output0, PluginDef*);
127 	static int register_params_static(const ParamReg& reg);
128 	static void del_instance(PluginDef *p);
129 public:
130 	Dsp();
131 	~Dsp();
132 };
133 
134 
135 
Dsp()136 Dsp::Dsp()
137 	: PluginDef() {
138 	version = PLUGINDEF_VERSION;
139 	flags = 0;
140 	id = "mbc";
141 	name = N_("Multi Band Compressor");
142 	groups = 0;
143 	description = N_("Multi Band Compressor contributed by kokoko3k"); // description (tooltip)
144 	category = N_("Guitar Effects");       // category
145 	shortname = N_("MB Comp");     // shortname
146 	mono_audio = compute_static;
147 	stereo_audio = 0;
148 	set_samplerate = init_static;
149 	activate_plugin = 0;
150 	register_params = register_params_static;
151 	load_ui = load_ui_f_static;
152 	clear_state = clear_state_f_static;
153 	delete_instance = del_instance;
154 }
155 
~Dsp()156 Dsp::~Dsp() {
157 }
158 
clear_state_f()159 inline void Dsp::clear_state_f()
160 {
161 	for (int l0 = 0; (l0 < 2); l0 = (l0 + 1)) fRec3[l0] = 0.0;
162 	for (int l1 = 0; (l1 < 2); l1 = (l1 + 1)) fVec0[l1] = 0.0;
163 	for (int l2 = 0; (l2 < 2); l2 = (l2 + 1)) fRec8[l2] = 0.0;
164 	for (int l3 = 0; (l3 < 3); l3 = (l3 + 1)) fRec7[l3] = 0.0;
165 	for (int l4 = 0; (l4 < 3); l4 = (l4 + 1)) fRec6[l4] = 0.0;
166 	for (int l5 = 0; (l5 < 3); l5 = (l5 + 1)) fRec5[l5] = 0.0;
167 	for (int l6 = 0; (l6 < 3); l6 = (l6 + 1)) fRec4[l6] = 0.0;
168 	for (int l7 = 0; (l7 < 2); l7 = (l7 + 1)) fRec11[l7] = 0.0;
169 	for (int l8 = 0; (l8 < 2); l8 = (l8 + 1)) fRec10[l8] = 0.0;
170 	for (int l9 = 0; (l9 < 2); l9 = (l9 + 1)) fRec9[l9] = 0.0;
171 	for (int l10 = 0; (l10 < 2); l10 = (l10 + 1)) fRec0[l10] = 0.0;
172 	for (int l11 = 0; (l11 < 2); l11 = (l11 + 1)) iRec1[l11] = 0;
173 	for (int l12 = 0; (l12 < 2); l12 = (l12 + 1)) fRec2[l12] = 0.0;
174 	for (int l13 = 0; (l13 < 2); l13 = (l13 + 1)) fRec15[l13] = 0.0;
175 	for (int l14 = 0; (l14 < 2); l14 = (l14 + 1)) fRec21[l14] = 0.0;
176 	for (int l15 = 0; (l15 < 3); l15 = (l15 + 1)) fRec20[l15] = 0.0;
177 	for (int l16 = 0; (l16 < 2); l16 = (l16 + 1)) fVec1[l16] = 0.0;
178 	for (int l17 = 0; (l17 < 2); l17 = (l17 + 1)) fRec19[l17] = 0.0;
179 	for (int l18 = 0; (l18 < 3); l18 = (l18 + 1)) fRec18[l18] = 0.0;
180 	for (int l19 = 0; (l19 < 3); l19 = (l19 + 1)) fRec17[l19] = 0.0;
181 	for (int l20 = 0; (l20 < 3); l20 = (l20 + 1)) fRec16[l20] = 0.0;
182 	for (int l21 = 0; (l21 < 2); l21 = (l21 + 1)) fRec24[l21] = 0.0;
183 	for (int l22 = 0; (l22 < 2); l22 = (l22 + 1)) fRec23[l22] = 0.0;
184 	for (int l23 = 0; (l23 < 2); l23 = (l23 + 1)) fRec22[l23] = 0.0;
185 	for (int l24 = 0; (l24 < 2); l24 = (l24 + 1)) fRec12[l24] = 0.0;
186 	for (int l25 = 0; (l25 < 2); l25 = (l25 + 1)) iRec13[l25] = 0;
187 	for (int l26 = 0; (l26 < 2); l26 = (l26 + 1)) fRec14[l26] = 0.0;
188 	for (int l27 = 0; (l27 < 2); l27 = (l27 + 1)) fRec28[l27] = 0.0;
189 	for (int l28 = 0; (l28 < 2); l28 = (l28 + 1)) fRec33[l28] = 0.0;
190 	for (int l29 = 0; (l29 < 3); l29 = (l29 + 1)) fRec32[l29] = 0.0;
191 	for (int l30 = 0; (l30 < 2); l30 = (l30 + 1)) fVec2[l30] = 0.0;
192 	for (int l31 = 0; (l31 < 2); l31 = (l31 + 1)) fRec31[l31] = 0.0;
193 	for (int l32 = 0; (l32 < 3); l32 = (l32 + 1)) fRec30[l32] = 0.0;
194 	for (int l33 = 0; (l33 < 3); l33 = (l33 + 1)) fRec29[l33] = 0.0;
195 	for (int l34 = 0; (l34 < 2); l34 = (l34 + 1)) fRec36[l34] = 0.0;
196 	for (int l35 = 0; (l35 < 2); l35 = (l35 + 1)) fRec35[l35] = 0.0;
197 	for (int l36 = 0; (l36 < 2); l36 = (l36 + 1)) fRec34[l36] = 0.0;
198 	for (int l37 = 0; (l37 < 2); l37 = (l37 + 1)) fRec25[l37] = 0.0;
199 	for (int l38 = 0; (l38 < 2); l38 = (l38 + 1)) iRec26[l38] = 0;
200 	for (int l39 = 0; (l39 < 2); l39 = (l39 + 1)) fRec27[l39] = 0.0;
201 	for (int l40 = 0; (l40 < 2); l40 = (l40 + 1)) fRec40[l40] = 0.0;
202 	for (int l41 = 0; (l41 < 2); l41 = (l41 + 1)) fRec44[l41] = 0.0;
203 	for (int l42 = 0; (l42 < 3); l42 = (l42 + 1)) fRec43[l42] = 0.0;
204 	for (int l43 = 0; (l43 < 2); l43 = (l43 + 1)) fVec3[l43] = 0.0;
205 	for (int l44 = 0; (l44 < 2); l44 = (l44 + 1)) fRec42[l44] = 0.0;
206 	for (int l45 = 0; (l45 < 3); l45 = (l45 + 1)) fRec41[l45] = 0.0;
207 	for (int l46 = 0; (l46 < 2); l46 = (l46 + 1)) fRec47[l46] = 0.0;
208 	for (int l47 = 0; (l47 < 2); l47 = (l47 + 1)) fRec46[l47] = 0.0;
209 	for (int l48 = 0; (l48 < 2); l48 = (l48 + 1)) fRec45[l48] = 0.0;
210 	for (int l49 = 0; (l49 < 2); l49 = (l49 + 1)) fRec37[l49] = 0.0;
211 	for (int l50 = 0; (l50 < 2); l50 = (l50 + 1)) iRec38[l50] = 0;
212 	for (int l51 = 0; (l51 < 2); l51 = (l51 + 1)) fRec39[l51] = 0.0;
213 	for (int l52 = 0; (l52 < 2); l52 = (l52 + 1)) fRec51[l52] = 0.0;
214 	for (int l53 = 0; (l53 < 2); l53 = (l53 + 1)) fRec53[l53] = 0.0;
215 	for (int l54 = 0; (l54 < 3); l54 = (l54 + 1)) fRec52[l54] = 0.0;
216 	for (int l55 = 0; (l55 < 2); l55 = (l55 + 1)) fRec56[l55] = 0.0;
217 	for (int l56 = 0; (l56 < 2); l56 = (l56 + 1)) fRec55[l56] = 0.0;
218 	for (int l57 = 0; (l57 < 2); l57 = (l57 + 1)) fRec54[l57] = 0.0;
219 	for (int l58 = 0; (l58 < 2); l58 = (l58 + 1)) fRec48[l58] = 0.0;
220 	for (int l59 = 0; (l59 < 2); l59 = (l59 + 1)) iRec49[l59] = 0;
221 	for (int l60 = 0; (l60 < 2); l60 = (l60 + 1)) fRec50[l60] = 0.0;
222 }
223 
clear_state_f_static(PluginDef * p)224 void Dsp::clear_state_f_static(PluginDef *p)
225 {
226 	static_cast<Dsp*>(p)->clear_state_f();
227 }
228 
init(unsigned int sample_rate)229 inline void Dsp::init(unsigned int sample_rate)
230 {
231 	fSampleRate = sample_rate;
232 	double fConst0 = std::min<double>(192000.0, std::max<double>(1.0, double(fSampleRate)));
233 	fConst1 = (1.0 / fConst0);
234 	fConst2 = (3.1415926535897931 / fConst0);
235 	clear_state_f();
236 }
237 
init_static(unsigned int sample_rate,PluginDef * p)238 void Dsp::init_static(unsigned int sample_rate, PluginDef *p)
239 {
240 	static_cast<Dsp*>(p)->init(sample_rate);
241 }
242 
compute(int count,FAUSTFLOAT * input0,FAUSTFLOAT * output0)243 void always_inline Dsp::compute(int count, FAUSTFLOAT *input0, FAUSTFLOAT *output0)
244 {
245 	double fSlow0 = double(fHslider0);
246 	double fSlow1 = std::fabs((std::max<double>(0.0, (fSlow0 + -2.0)) + -1.0));
247 	double fSlow2 = double(fHslider1);
248 	double fSlow3 = std::max<double>(0.0, (fSlow0 + -1.0));
249 	double fSlow4 = (0.0010000000000000009 * std::pow(10.0, (0.050000000000000003 * ((fSlow2 - double(fHslider2)) * std::fabs((fSlow3 + -1.0))))));
250 	int iSlow5 = int(fSlow3);
251 	double fSlow6 = std::tan((fConst2 * double(fHslider3)));
252 	double fSlow7 = (1.0 / fSlow6);
253 	double fSlow8 = (((fSlow7 + 1.0000000000000004) / fSlow6) + 1.0);
254 	double fSlow9 = (1.0 / fSlow8);
255 	double fSlow10 = mydsp_faustpower2_f(fSlow6);
256 	double fSlow11 = (1.0 / fSlow10);
257 	double fSlow12 = (fSlow7 + 1.0);
258 	double fSlow13 = (0.0 - (1.0 / (fSlow6 * fSlow12)));
259 	double fSlow14 = (1.0 / fSlow12);
260 	double fSlow15 = (1.0 - fSlow7);
261 	double fSlow16 = (((fSlow7 + -1.0000000000000004) / fSlow6) + 1.0);
262 	double fSlow17 = (2.0 * (1.0 - fSlow11));
263 	double fSlow18 = (0.0 - (2.0 / fSlow10));
264 	double fSlow19 = std::tan((fConst2 * double(fHslider4)));
265 	double fSlow20 = (1.0 / fSlow19);
266 	double fSlow21 = (fSlow20 + 1.0);
267 	double fSlow22 = (1.0 / ((fSlow21 / fSlow19) + 1.0));
268 	double fSlow23 = (1.0 - fSlow20);
269 	double fSlow24 = (1.0 - (fSlow23 / fSlow19));
270 	double fSlow25 = mydsp_faustpower2_f(fSlow19);
271 	double fSlow26 = (1.0 / fSlow25);
272 	double fSlow27 = (2.0 * (1.0 - fSlow26));
273 	double fSlow28 = std::tan((fConst2 * double(fHslider5)));
274 	double fSlow29 = (1.0 / fSlow28);
275 	double fSlow30 = (fSlow29 + 1.0);
276 	double fSlow31 = (1.0 / ((fSlow30 / fSlow28) + 1.0));
277 	double fSlow32 = (1.0 - fSlow29);
278 	double fSlow33 = (1.0 - (fSlow32 / fSlow28));
279 	double fSlow34 = mydsp_faustpower2_f(fSlow28);
280 	double fSlow35 = (1.0 / fSlow34);
281 	double fSlow36 = (2.0 * (1.0 - fSlow35));
282 	double fSlow37 = std::tan((fConst2 * double(fHslider6)));
283 	double fSlow38 = (1.0 / fSlow37);
284 	double fSlow39 = (fSlow38 + 1.0);
285 	double fSlow40 = (1.0 / ((fSlow39 / fSlow37) + 1.0));
286 	double fSlow41 = (1.0 - fSlow38);
287 	double fSlow42 = (1.0 - (fSlow41 / fSlow37));
288 	double fSlow43 = mydsp_faustpower2_f(fSlow37);
289 	double fSlow44 = (1.0 / fSlow43);
290 	double fSlow45 = (2.0 * (1.0 - fSlow44));
291 	double fSlow46 = double(fHslider7);
292 	double fSlow47 = (0.5 * fSlow46);
293 	int iSlow48 = (std::fabs(fSlow47) < 2.2204460492503131e-16);
294 	double fThen2 = std::exp((0.0 - (fConst1 / (iSlow48 ? 1.0 : fSlow47))));
295 	double fSlow49 = (iSlow48 ? 0.0 : fThen2);
296 	double fSlow50 = ((1.0 / std::max<double>(2.2204460492503131e-16, double(fHslider8))) + -1.0);
297 	int iSlow51 = (std::fabs(fSlow46) < 2.2204460492503131e-16);
298 	double fThen4 = std::exp((0.0 - (fConst1 / (iSlow51 ? 1.0 : fSlow46))));
299 	double fSlow52 = (iSlow51 ? 0.0 : fThen4);
300 	double fSlow53 = double(fHslider9);
301 	int iSlow54 = (std::fabs(fSlow53) < 2.2204460492503131e-16);
302 	double fThen6 = std::exp((0.0 - (fConst1 / (iSlow54 ? 1.0 : fSlow53))));
303 	double fSlow55 = (iSlow54 ? 0.0 : fThen6);
304 	double fSlow56 = (1.0 - fSlow49);
305 	double fSlow57 = double(fHslider10);
306 	double fSlow58 = std::fabs((std::max<double>(0.0, (fSlow57 + -2.0)) + -1.0));
307 	double fSlow59 = double(fHslider11);
308 	double fSlow60 = std::max<double>(0.0, (fSlow57 + -1.0));
309 	double fSlow61 = (0.0010000000000000009 * std::pow(10.0, (0.050000000000000003 * ((fSlow59 - double(fHslider12)) * std::fabs((fSlow60 + -1.0))))));
310 	int iSlow62 = int(fSlow60);
311 	double fSlow63 = (((fSlow20 + 1.0000000000000004) / fSlow19) + 1.0);
312 	double fSlow64 = (1.0 / fSlow63);
313 	double fSlow65 = (0.0 - (1.0 / (fSlow19 * fSlow21)));
314 	double fSlow66 = (1.0 / fSlow21);
315 	double fSlow67 = (1.0 / (fSlow19 * fSlow8));
316 	double fSlow68 = (((fSlow20 + -1.0000000000000004) / fSlow19) + 1.0);
317 	double fSlow69 = (0.0 - (2.0 / fSlow25));
318 	double fSlow70 = double(fHslider13);
319 	double fSlow71 = (0.5 * fSlow70);
320 	int iSlow72 = (std::fabs(fSlow71) < 2.2204460492503131e-16);
321 	double fThen14 = std::exp((0.0 - (fConst1 / (iSlow72 ? 1.0 : fSlow71))));
322 	double fSlow73 = (iSlow72 ? 0.0 : fThen14);
323 	double fSlow74 = ((1.0 / std::max<double>(2.2204460492503131e-16, double(fHslider14))) + -1.0);
324 	int iSlow75 = (std::fabs(fSlow70) < 2.2204460492503131e-16);
325 	double fThen16 = std::exp((0.0 - (fConst1 / (iSlow75 ? 1.0 : fSlow70))));
326 	double fSlow76 = (iSlow75 ? 0.0 : fThen16);
327 	double fSlow77 = double(fHslider15);
328 	int iSlow78 = (std::fabs(fSlow77) < 2.2204460492503131e-16);
329 	double fThen18 = std::exp((0.0 - (fConst1 / (iSlow78 ? 1.0 : fSlow77))));
330 	double fSlow79 = (iSlow78 ? 0.0 : fThen18);
331 	double fSlow80 = (1.0 - fSlow73);
332 	double fSlow81 = double(fHslider16);
333 	double fSlow82 = std::fabs((std::max<double>(0.0, (fSlow81 + -2.0)) + -1.0));
334 	double fSlow83 = double(fHslider17);
335 	double fSlow84 = std::max<double>(0.0, (fSlow81 + -1.0));
336 	double fSlow85 = (0.0010000000000000009 * std::pow(10.0, (0.050000000000000003 * ((fSlow83 - double(fHslider18)) * std::fabs((fSlow84 + -1.0))))));
337 	int iSlow86 = int(fSlow84);
338 	double fSlow87 = (((fSlow29 + 1.0000000000000004) / fSlow28) + 1.0);
339 	double fSlow88 = (1.0 / fSlow87);
340 	double fSlow89 = (0.0 - (1.0 / (fSlow28 * fSlow30)));
341 	double fSlow90 = (1.0 / fSlow30);
342 	double fSlow91 = (1.0 / (fSlow28 * fSlow63));
343 	double fSlow92 = (((fSlow29 + -1.0000000000000004) / fSlow28) + 1.0);
344 	double fSlow93 = (0.0 - (2.0 / fSlow34));
345 	double fSlow94 = double(fHslider19);
346 	double fSlow95 = (0.5 * fSlow94);
347 	int iSlow96 = (std::fabs(fSlow95) < 2.2204460492503131e-16);
348 	double fThen26 = std::exp((0.0 - (fConst1 / (iSlow96 ? 1.0 : fSlow95))));
349 	double fSlow97 = (iSlow96 ? 0.0 : fThen26);
350 	double fSlow98 = ((1.0 / std::max<double>(2.2204460492503131e-16, double(fHslider20))) + -1.0);
351 	int iSlow99 = (std::fabs(fSlow94) < 2.2204460492503131e-16);
352 	double fThen28 = std::exp((0.0 - (fConst1 / (iSlow99 ? 1.0 : fSlow94))));
353 	double fSlow100 = (iSlow99 ? 0.0 : fThen28);
354 	double fSlow101 = double(fHslider21);
355 	int iSlow102 = (std::fabs(fSlow101) < 2.2204460492503131e-16);
356 	double fThen30 = std::exp((0.0 - (fConst1 / (iSlow102 ? 1.0 : fSlow101))));
357 	double fSlow103 = (iSlow102 ? 0.0 : fThen30);
358 	double fSlow104 = (1.0 - fSlow97);
359 	double fSlow105 = double(fHslider22);
360 	double fSlow106 = std::fabs((std::max<double>(0.0, (fSlow105 + -2.0)) + -1.0));
361 	double fSlow107 = double(fHslider23);
362 	double fSlow108 = std::max<double>(0.0, (fSlow105 + -1.0));
363 	double fSlow109 = (0.0010000000000000009 * std::pow(10.0, (0.050000000000000003 * ((fSlow107 - double(fHslider24)) * std::fabs((fSlow108 + -1.0))))));
364 	int iSlow110 = int(fSlow108);
365 	double fSlow111 = (1.0 / (((fSlow38 + 1.0000000000000004) / fSlow37) + 1.0));
366 	double fSlow112 = (0.0 - (1.0 / (fSlow37 * fSlow39)));
367 	double fSlow113 = (1.0 / fSlow39);
368 	double fSlow114 = (1.0 / (fSlow37 * fSlow87));
369 	double fSlow115 = (((fSlow38 + -1.0000000000000004) / fSlow37) + 1.0);
370 	double fSlow116 = (0.0 - (2.0 / fSlow43));
371 	double fSlow117 = double(fHslider25);
372 	double fSlow118 = (0.5 * fSlow117);
373 	int iSlow119 = (std::fabs(fSlow118) < 2.2204460492503131e-16);
374 	double fThen38 = std::exp((0.0 - (fConst1 / (iSlow119 ? 1.0 : fSlow118))));
375 	double fSlow120 = (iSlow119 ? 0.0 : fThen38);
376 	double fSlow121 = ((1.0 / std::max<double>(2.2204460492503131e-16, double(fHslider26))) + -1.0);
377 	int iSlow122 = (std::fabs(fSlow117) < 2.2204460492503131e-16);
378 	double fThen40 = std::exp((0.0 - (fConst1 / (iSlow122 ? 1.0 : fSlow117))));
379 	double fSlow123 = (iSlow122 ? 0.0 : fThen40);
380 	double fSlow124 = double(fHslider27);
381 	int iSlow125 = (std::fabs(fSlow124) < 2.2204460492503131e-16);
382 	double fThen42 = std::exp((0.0 - (fConst1 / (iSlow125 ? 1.0 : fSlow124))));
383 	double fSlow126 = (iSlow125 ? 0.0 : fThen42);
384 	double fSlow127 = (1.0 - fSlow120);
385 	double fSlow128 = double(fHslider28);
386 	double fSlow129 = std::fabs((std::max<double>(0.0, (fSlow128 + -2.0)) + -1.0));
387 	double fSlow130 = double(fHslider29);
388 	double fSlow131 = std::max<double>(0.0, (fSlow128 + -1.0));
389 	double fSlow132 = (0.0010000000000000009 * std::pow(10.0, (0.050000000000000003 * ((fSlow130 - double(fHslider30)) * std::fabs((fSlow131 + -1.0))))));
390 	int iSlow133 = int(fSlow131);
391 	double fSlow134 = double(fHslider31);
392 	double fSlow135 = (0.5 * fSlow134);
393 	int iSlow136 = (std::fabs(fSlow135) < 2.2204460492503131e-16);
394 	double fThen50 = std::exp((0.0 - (fConst1 / (iSlow136 ? 1.0 : fSlow135))));
395 	double fSlow137 = (iSlow136 ? 0.0 : fThen50);
396 	double fSlow138 = ((1.0 / std::max<double>(2.2204460492503131e-16, double(fHslider32))) + -1.0);
397 	int iSlow139 = (std::fabs(fSlow134) < 2.2204460492503131e-16);
398 	double fThen52 = std::exp((0.0 - (fConst1 / (iSlow139 ? 1.0 : fSlow134))));
399 	double fSlow140 = (iSlow139 ? 0.0 : fThen52);
400 	double fSlow141 = double(fHslider33);
401 	int iSlow142 = (std::fabs(fSlow141) < 2.2204460492503131e-16);
402 	double fThen54 = std::exp((0.0 - (fConst1 / (iSlow142 ? 1.0 : fSlow141))));
403 	double fSlow143 = (iSlow142 ? 0.0 : fThen54);
404 	double fSlow144 = (1.0 - fSlow137);
405 	for (int i0 = 0; (i0 < count); i0 = (i0 + 1)) {
406 		int iTemp0 = (iRec1[1] < 4096);
407 		fRec3[0] = (fSlow4 + (0.999 * fRec3[1]));
408 		double fTemp1 = double(input0[i0]);
409 		fVec0[0] = fTemp1;
410 		fRec8[0] = ((fSlow13 * fVec0[1]) - (fSlow14 * ((fSlow15 * fRec8[1]) - (fSlow7 * fTemp1))));
411 		fRec7[0] = (fRec8[0] - (fSlow9 * ((fSlow16 * fRec7[2]) + (fSlow17 * fRec7[1]))));
412 		double fTemp2 = (fSlow27 * fRec6[1]);
413 		fRec6[0] = ((fSlow9 * (((fSlow11 * fRec7[0]) + (fSlow18 * fRec7[1])) + (fSlow11 * fRec7[2]))) - (fSlow22 * ((fSlow24 * fRec6[2]) + fTemp2)));
414 		double fTemp3 = (fSlow36 * fRec5[1]);
415 		fRec5[0] = ((fRec6[2] + (fSlow22 * (fTemp2 + (fSlow24 * fRec6[0])))) - (fSlow31 * ((fSlow33 * fRec5[2]) + fTemp3)));
416 		double fTemp4 = (fSlow45 * fRec4[1]);
417 		fRec4[0] = ((fRec5[2] + (fSlow31 * (fTemp3 + (fSlow33 * fRec5[0])))) - (fSlow40 * ((fSlow42 * fRec4[2]) + fTemp4)));
418 		double fTemp5 = (fRec4[2] + (fSlow40 * (fTemp4 + (fSlow42 * fRec4[0]))));
419 		double fTemp6 = (iSlow5 ? 0.0 : fTemp5);
420 		double fTemp7 = std::fabs(fTemp6);
421 		double fTemp8 = ((fRec10[1] > fTemp7) ? fSlow55 : fSlow52);
422 		fRec11[0] = ((fRec11[1] * fTemp8) + (fTemp7 * (1.0 - fTemp8)));
423 		fRec10[0] = fRec11[0];
424 		fRec9[0] = ((fRec9[1] * fSlow49) + (fSlow50 * (std::max<double>((fSlow2 + (20.0 * std::log10(std::max<double>(2.2250738585072014e-308, fRec10[0])))), 0.0) * fSlow56)));
425 		double fThen8 = (fTemp6 * std::pow(10.0, (0.050000000000000003 * fRec9[0])));
426 		double fTemp9 = (fSlow1 * (fRec3[0] * (iSlow5 ? fTemp5 : fThen8)));
427 		double fTemp10 = std::max<double>(fConst1, std::fabs(fTemp9));
428 		double fElse9 = (fTemp10 + fRec0[1]);
429 		fRec0[0] = (iTemp0 ? fElse9 : fTemp10);
430 		int iElse10 = (iRec1[1] + 1);
431 		iRec1[0] = (iTemp0 ? iElse10 : 1);
432 		double fThen11 = (0.000244140625 * fRec0[1]);
433 		fRec2[0] = (iTemp0 ? fRec2[1] : fThen11);
434 		fVbargraph0 = FAUSTFLOAT(fRec2[0]);
435 		int iTemp11 = (iRec13[1] < 4096);
436 		fRec15[0] = (fSlow61 + (0.999 * fRec15[1]));
437 		fRec21[0] = (0.0 - (fSlow14 * ((fSlow15 * fRec21[1]) - (fTemp1 + fVec0[1]))));
438 		fRec20[0] = (fRec21[0] - (fSlow9 * ((fSlow16 * fRec20[2]) + (fSlow17 * fRec20[1]))));
439 		double fTemp12 = (fRec20[2] + (fRec20[0] + (2.0 * fRec20[1])));
440 		double fTemp13 = (fSlow9 * fTemp12);
441 		fVec1[0] = fTemp13;
442 		fRec19[0] = ((fSlow65 * fVec1[1]) - (fSlow66 * ((fSlow23 * fRec19[1]) - (fSlow67 * fTemp12))));
443 		fRec18[0] = (fRec19[0] - (fSlow64 * ((fSlow68 * fRec18[2]) + (fSlow27 * fRec18[1]))));
444 		double fTemp14 = (fSlow36 * fRec17[1]);
445 		fRec17[0] = ((fSlow64 * (((fSlow26 * fRec18[0]) + (fSlow69 * fRec18[1])) + (fSlow26 * fRec18[2]))) - (fSlow31 * ((fSlow33 * fRec17[2]) + fTemp14)));
446 		double fTemp15 = (fSlow45 * fRec16[1]);
447 		fRec16[0] = ((fRec17[2] + (fSlow31 * (fTemp14 + (fSlow33 * fRec17[0])))) - (fSlow40 * ((fSlow42 * fRec16[2]) + fTemp15)));
448 		double fTemp16 = (fRec16[2] + (fSlow40 * (fTemp15 + (fSlow42 * fRec16[0]))));
449 		double fTemp17 = (iSlow62 ? 0.0 : fTemp16);
450 		double fTemp18 = std::fabs(fTemp17);
451 		double fTemp19 = ((fRec23[1] > fTemp18) ? fSlow79 : fSlow76);
452 		fRec24[0] = ((fRec24[1] * fTemp19) + (fTemp18 * (1.0 - fTemp19)));
453 		fRec23[0] = fRec24[0];
454 		fRec22[0] = ((fRec22[1] * fSlow73) + (fSlow74 * (std::max<double>((fSlow59 + (20.0 * std::log10(std::max<double>(2.2250738585072014e-308, fRec23[0])))), 0.0) * fSlow80)));
455 		double fThen20 = (fTemp17 * std::pow(10.0, (0.050000000000000003 * fRec22[0])));
456 		double fTemp20 = (fSlow58 * (fRec15[0] * (iSlow62 ? fTemp16 : fThen20)));
457 		double fTemp21 = std::max<double>(fConst1, std::fabs(fTemp20));
458 		double fElse21 = (fTemp21 + fRec12[1]);
459 		fRec12[0] = (iTemp11 ? fElse21 : fTemp21);
460 		int iElse22 = (iRec13[1] + 1);
461 		iRec13[0] = (iTemp11 ? iElse22 : 1);
462 		double fThen23 = (0.000244140625 * fRec12[1]);
463 		fRec14[0] = (iTemp11 ? fRec14[1] : fThen23);
464 		fVbargraph1 = FAUSTFLOAT(fRec14[0]);
465 		int iTemp22 = (iRec26[1] < 4096);
466 		fRec28[0] = (fSlow85 + (0.999 * fRec28[1]));
467 		fRec33[0] = (0.0 - (fSlow66 * ((fSlow23 * fRec33[1]) - (fTemp13 + fVec1[1]))));
468 		fRec32[0] = (fRec33[0] - (fSlow64 * ((fSlow68 * fRec32[2]) + (fSlow27 * fRec32[1]))));
469 		double fTemp23 = (fRec32[2] + (fRec32[0] + (2.0 * fRec32[1])));
470 		double fTemp24 = (fSlow64 * fTemp23);
471 		fVec2[0] = fTemp24;
472 		fRec31[0] = ((fSlow89 * fVec2[1]) - (fSlow90 * ((fSlow32 * fRec31[1]) - (fSlow91 * fTemp23))));
473 		fRec30[0] = (fRec31[0] - (fSlow88 * ((fSlow92 * fRec30[2]) + (fSlow36 * fRec30[1]))));
474 		double fTemp25 = (fSlow45 * fRec29[1]);
475 		fRec29[0] = ((fSlow88 * (((fSlow35 * fRec30[0]) + (fSlow93 * fRec30[1])) + (fSlow35 * fRec30[2]))) - (fSlow40 * ((fSlow42 * fRec29[2]) + fTemp25)));
476 		double fTemp26 = (fRec29[2] + (fSlow40 * (fTemp25 + (fSlow42 * fRec29[0]))));
477 		double fTemp27 = (iSlow86 ? 0.0 : fTemp26);
478 		double fTemp28 = std::fabs(fTemp27);
479 		double fTemp29 = ((fRec35[1] > fTemp28) ? fSlow103 : fSlow100);
480 		fRec36[0] = ((fRec36[1] * fTemp29) + (fTemp28 * (1.0 - fTemp29)));
481 		fRec35[0] = fRec36[0];
482 		fRec34[0] = ((fRec34[1] * fSlow97) + (fSlow98 * (std::max<double>((fSlow83 + (20.0 * std::log10(std::max<double>(2.2250738585072014e-308, fRec35[0])))), 0.0) * fSlow104)));
483 		double fThen32 = (fTemp27 * std::pow(10.0, (0.050000000000000003 * fRec34[0])));
484 		double fTemp30 = (fSlow82 * (fRec28[0] * (iSlow86 ? fTemp26 : fThen32)));
485 		double fTemp31 = std::max<double>(fConst1, std::fabs(fTemp30));
486 		double fElse33 = (fTemp31 + fRec25[1]);
487 		fRec25[0] = (iTemp22 ? fElse33 : fTemp31);
488 		int iElse34 = (iRec26[1] + 1);
489 		iRec26[0] = (iTemp22 ? iElse34 : 1);
490 		double fThen35 = (0.000244140625 * fRec25[1]);
491 		fRec27[0] = (iTemp22 ? fRec27[1] : fThen35);
492 		fVbargraph2 = FAUSTFLOAT(fRec27[0]);
493 		int iTemp32 = (iRec38[1] < 4096);
494 		fRec40[0] = (fSlow109 + (0.999 * fRec40[1]));
495 		fRec44[0] = (0.0 - (fSlow90 * ((fSlow32 * fRec44[1]) - (fTemp24 + fVec2[1]))));
496 		fRec43[0] = (fRec44[0] - (fSlow88 * ((fSlow92 * fRec43[2]) + (fSlow36 * fRec43[1]))));
497 		double fTemp33 = (fRec43[2] + (fRec43[0] + (2.0 * fRec43[1])));
498 		double fTemp34 = (fSlow88 * fTemp33);
499 		fVec3[0] = fTemp34;
500 		fRec42[0] = ((fSlow112 * fVec3[1]) - (fSlow113 * ((fSlow41 * fRec42[1]) - (fSlow114 * fTemp33))));
501 		fRec41[0] = (fRec42[0] - (fSlow111 * ((fSlow115 * fRec41[2]) + (fSlow45 * fRec41[1]))));
502 		double fTemp35 = (fSlow111 * (((fSlow44 * fRec41[0]) + (fSlow116 * fRec41[1])) + (fSlow44 * fRec41[2])));
503 		double fTemp36 = (iSlow110 ? 0.0 : fTemp35);
504 		double fTemp37 = std::fabs(fTemp36);
505 		double fTemp38 = ((fRec46[1] > fTemp37) ? fSlow126 : fSlow123);
506 		fRec47[0] = ((fRec47[1] * fTemp38) + (fTemp37 * (1.0 - fTemp38)));
507 		fRec46[0] = fRec47[0];
508 		fRec45[0] = ((fRec45[1] * fSlow120) + (fSlow121 * (std::max<double>((fSlow107 + (20.0 * std::log10(std::max<double>(2.2250738585072014e-308, fRec46[0])))), 0.0) * fSlow127)));
509 		double fThen44 = (fTemp36 * std::pow(10.0, (0.050000000000000003 * fRec45[0])));
510 		double fTemp39 = (fSlow106 * (fRec40[0] * (iSlow110 ? fTemp35 : fThen44)));
511 		double fTemp40 = std::max<double>(fConst1, std::fabs(fTemp39));
512 		double fElse45 = (fTemp40 + fRec37[1]);
513 		fRec37[0] = (iTemp32 ? fElse45 : fTemp40);
514 		int iElse46 = (iRec38[1] + 1);
515 		iRec38[0] = (iTemp32 ? iElse46 : 1);
516 		double fThen47 = (0.000244140625 * fRec37[1]);
517 		fRec39[0] = (iTemp32 ? fRec39[1] : fThen47);
518 		fVbargraph3 = FAUSTFLOAT(fRec39[0]);
519 		int iTemp41 = (iRec49[1] < 4096);
520 		fRec51[0] = (fSlow132 + (0.999 * fRec51[1]));
521 		fRec53[0] = (0.0 - (fSlow113 * ((fSlow41 * fRec53[1]) - (fTemp34 + fVec3[1]))));
522 		fRec52[0] = (fRec53[0] - (fSlow111 * ((fSlow115 * fRec52[2]) + (fSlow45 * fRec52[1]))));
523 		double fTemp42 = (fSlow111 * (fRec52[2] + (fRec52[0] + (2.0 * fRec52[1]))));
524 		double fTemp43 = (iSlow133 ? 0.0 : fTemp42);
525 		double fTemp44 = std::fabs(fTemp43);
526 		double fTemp45 = ((fRec55[1] > fTemp44) ? fSlow143 : fSlow140);
527 		fRec56[0] = ((fRec56[1] * fTemp45) + (fTemp44 * (1.0 - fTemp45)));
528 		fRec55[0] = fRec56[0];
529 		fRec54[0] = ((fRec54[1] * fSlow137) + (fSlow138 * (std::max<double>((fSlow130 + (20.0 * std::log10(std::max<double>(2.2250738585072014e-308, fRec55[0])))), 0.0) * fSlow144)));
530 		double fThen56 = (fTemp43 * std::pow(10.0, (0.050000000000000003 * fRec54[0])));
531 		double fTemp46 = (fSlow129 * (fRec51[0] * (iSlow133 ? fTemp42 : fThen56)));
532 		double fTemp47 = std::max<double>(fConst1, std::fabs(fTemp46));
533 		double fElse57 = (fTemp47 + fRec48[1]);
534 		fRec48[0] = (iTemp41 ? fElse57 : fTemp47);
535 		int iElse58 = (iRec49[1] + 1);
536 		iRec49[0] = (iTemp41 ? iElse58 : 1);
537 		double fThen59 = (0.000244140625 * fRec48[1]);
538 		fRec50[0] = (iTemp41 ? fRec50[1] : fThen59);
539 		fVbargraph4 = FAUSTFLOAT(fRec50[0]);
540 		output0[i0] = FAUSTFLOAT(((((fTemp9 + fTemp20) + fTemp30) + fTemp39) + fTemp46));
541 		fRec3[1] = fRec3[0];
542 		fVec0[1] = fVec0[0];
543 		fRec8[1] = fRec8[0];
544 		fRec7[2] = fRec7[1];
545 		fRec7[1] = fRec7[0];
546 		fRec6[2] = fRec6[1];
547 		fRec6[1] = fRec6[0];
548 		fRec5[2] = fRec5[1];
549 		fRec5[1] = fRec5[0];
550 		fRec4[2] = fRec4[1];
551 		fRec4[1] = fRec4[0];
552 		fRec11[1] = fRec11[0];
553 		fRec10[1] = fRec10[0];
554 		fRec9[1] = fRec9[0];
555 		fRec0[1] = fRec0[0];
556 		iRec1[1] = iRec1[0];
557 		fRec2[1] = fRec2[0];
558 		fRec15[1] = fRec15[0];
559 		fRec21[1] = fRec21[0];
560 		fRec20[2] = fRec20[1];
561 		fRec20[1] = fRec20[0];
562 		fVec1[1] = fVec1[0];
563 		fRec19[1] = fRec19[0];
564 		fRec18[2] = fRec18[1];
565 		fRec18[1] = fRec18[0];
566 		fRec17[2] = fRec17[1];
567 		fRec17[1] = fRec17[0];
568 		fRec16[2] = fRec16[1];
569 		fRec16[1] = fRec16[0];
570 		fRec24[1] = fRec24[0];
571 		fRec23[1] = fRec23[0];
572 		fRec22[1] = fRec22[0];
573 		fRec12[1] = fRec12[0];
574 		iRec13[1] = iRec13[0];
575 		fRec14[1] = fRec14[0];
576 		fRec28[1] = fRec28[0];
577 		fRec33[1] = fRec33[0];
578 		fRec32[2] = fRec32[1];
579 		fRec32[1] = fRec32[0];
580 		fVec2[1] = fVec2[0];
581 		fRec31[1] = fRec31[0];
582 		fRec30[2] = fRec30[1];
583 		fRec30[1] = fRec30[0];
584 		fRec29[2] = fRec29[1];
585 		fRec29[1] = fRec29[0];
586 		fRec36[1] = fRec36[0];
587 		fRec35[1] = fRec35[0];
588 		fRec34[1] = fRec34[0];
589 		fRec25[1] = fRec25[0];
590 		iRec26[1] = iRec26[0];
591 		fRec27[1] = fRec27[0];
592 		fRec40[1] = fRec40[0];
593 		fRec44[1] = fRec44[0];
594 		fRec43[2] = fRec43[1];
595 		fRec43[1] = fRec43[0];
596 		fVec3[1] = fVec3[0];
597 		fRec42[1] = fRec42[0];
598 		fRec41[2] = fRec41[1];
599 		fRec41[1] = fRec41[0];
600 		fRec47[1] = fRec47[0];
601 		fRec46[1] = fRec46[0];
602 		fRec45[1] = fRec45[0];
603 		fRec37[1] = fRec37[0];
604 		iRec38[1] = iRec38[0];
605 		fRec39[1] = fRec39[0];
606 		fRec51[1] = fRec51[0];
607 		fRec53[1] = fRec53[0];
608 		fRec52[2] = fRec52[1];
609 		fRec52[1] = fRec52[0];
610 		fRec56[1] = fRec56[0];
611 		fRec55[1] = fRec55[0];
612 		fRec54[1] = fRec54[0];
613 		fRec48[1] = fRec48[0];
614 		iRec49[1] = iRec49[0];
615 		fRec50[1] = fRec50[0];
616 	}
617 }
618 
compute_static(int count,FAUSTFLOAT * input0,FAUSTFLOAT * output0,PluginDef * p)619 void __rt_func Dsp::compute_static(int count, FAUSTFLOAT *input0, FAUSTFLOAT *output0, PluginDef *p)
620 {
621 	static_cast<Dsp*>(p)->compute(count, input0, output0);
622 }
623 
register_par(const ParamReg & reg)624 int Dsp::register_par(const ParamReg& reg)
625 {
626 	static const value_pair fHslider28_values[] = {{"Compress"},{"Bypass"},{"Mute"},{0}};
627 	reg.registerFloatVar("mbc.Mode1","","S",N_("Compress or Mute the selected band, or Bypass The Compressor"),&fHslider28, 1.0, 1.0, 3.0, 1.0, fHslider28_values);
628 	static const value_pair fHslider22_values[] = {{"Compress"},{"Bypass"},{"Mute"},{0}};
629 	reg.registerFloatVar("mbc.Mode2","","S",N_("Compress or Mute the selected band, or Bypass The Compressor"),&fHslider22, 1.0, 1.0, 3.0, 1.0, fHslider22_values);
630 	static const value_pair fHslider16_values[] = {{"Compress"},{"Bypass"},{"Mute"},{0}};
631 	reg.registerFloatVar("mbc.Mode3","","S",N_("Compress or Mute the selected band, or Bypass The Compressor"),&fHslider16, 1.0, 1.0, 3.0, 1.0, fHslider16_values);
632 	static const value_pair fHslider10_values[] = {{"Compress"},{"Bypass"},{"Mute"},{0}};
633 	reg.registerFloatVar("mbc.Mode4","","S",N_("Compress or Mute the selected band, or Bypass The Compressor"),&fHslider10, 1.0, 1.0, 3.0, 1.0, fHslider10_values);
634 	static const value_pair fHslider0_values[] = {{"Compress"},{"Bypass"},{"Mute"},{0}};
635 	reg.registerFloatVar("mbc.Mode5","","S",N_("Compress or Mute the selected band, or Bypass The Compressor"),&fHslider0, 1.0, 1.0, 3.0, 1.0, fHslider0_values);
636 	reg.registerFloatVar("mbc.Makeup1","","S",N_("Post amplification and threshold"),&fHslider29, 13.0, -50.0, 50.0, 0.10000000000000001, 0);
637 	reg.registerFloatVar("mbc.Makeup2","","S",N_("Post amplification and threshold"),&fHslider23, 10.0, -50.0, 50.0, 0.10000000000000001, 0);
638 	reg.registerFloatVar("mbc.Makeup3","","S",N_("Post amplification and threshold"),&fHslider17, 4.0, -50.0, 50.0, 0.10000000000000001, 0);
639 	reg.registerFloatVar("mbc.Makeup4","","S",N_("Post amplification and threshold"),&fHslider11, 8.0, -50.0, 50.0, 0.10000000000000001, 0);
640 	reg.registerFloatVar("mbc.Makeup5","","S",N_("Post amplification and threshold"),&fHslider1, 11.0, -50.0, 50.0, 0.10000000000000001, 0);
641 	reg.registerFloatVar("mbc.Makeup-Threshold1","","S",N_("Threshold correction, an anticlip measure"),&fHslider30, 2.0, 0.0, 10.0, 0.10000000000000001, 0);
642 	reg.registerFloatVar("mbc.Makeup-Threshold2","","S",N_("Threshold correction, an anticlip measure"),&fHslider24, 2.0, 0.0, 10.0, 0.10000000000000001, 0);
643 	reg.registerFloatVar("mbc.Makeup-Threshold3","","S",N_("Threshold correction, an anticlip measure"),&fHslider18, 2.0, 0.0, 10.0, 0.10000000000000001, 0);
644 	reg.registerFloatVar("mbc.Makeup-Threshold4","","S",N_("Threshold correction, an anticlip measure"),&fHslider12, 2.0, 0.0, 10.0, 0.10000000000000001, 0);
645 	reg.registerFloatVar("mbc.Makeup-Threshold5","","S",N_("Threshold correction, an anticlip measure"),&fHslider2, 2.0, 0.0, 10.0, 0.10000000000000001, 0);
646 	reg.registerFloatVar("mbc.Ratio1","","S",N_("Compression ratio"),&fHslider32, 2.0, 1.0, 100.0, 0.10000000000000001, 0);
647 	reg.registerFloatVar("mbc.Ratio2","","S",N_("Compression ratio"),&fHslider26, 2.0, 1.0, 100.0, 0.10000000000000001, 0);
648 	reg.registerFloatVar("mbc.Ratio3","","S",N_("Compression ratio"),&fHslider20, 2.0, 1.0, 100.0, 0.10000000000000001, 0);
649 	reg.registerFloatVar("mbc.Ratio4","","S",N_("Compression ratio"),&fHslider14, 2.0, 1.0, 100.0, 0.10000000000000001, 0);
650 	reg.registerFloatVar("mbc.Ratio5","","S",N_("Compression ratio"),&fHslider8, 2.0, 1.0, 100.0, 0.10000000000000001, 0);
651 	reg.registerFloatVar("mbc.Attack1","","S",N_("Time before the compressor starts to kick in"),&fHslider31, 0.012, 0.001, 1.0, 0.001, 0);
652 	reg.registerFloatVar("mbc.Attack2","","S",N_("Time before the compressor starts to kick in"),&fHslider25, 0.012, 0.001, 1.0, 0.001, 0);
653 	reg.registerFloatVar("mbc.Attack3","","S",N_("Time before the compressor starts to kick in"),&fHslider19, 0.012, 0.001, 1.0, 0.001, 0);
654 	reg.registerFloatVar("mbc.Attack4","","S",N_("Time before the compressor starts to kick in"),&fHslider13, 0.012, 0.001, 1.0, 0.001, 0);
655 	reg.registerFloatVar("mbc.Attack5","","S",N_("Time before the compressor starts to kick in"),&fHslider7, 0.012, 0.001, 1.0, 0.001, 0);
656 	reg.registerFloatVar("mbc.Release1","","S",N_("Time before the compressor releases the sound"),&fHslider33, 1.25, 0.01, 10.0, 0.01, 0);
657 	reg.registerFloatVar("mbc.Release2","","S",N_("Time before the compressor releases the sound"),&fHslider27, 1.25, 0.01, 10.0, 0.01, 0);
658 	reg.registerFloatVar("mbc.Release3","","S",N_("Time before the compressor releases the sound"),&fHslider21, 1.25, 0.01, 10.0, 0.01, 0);
659 	reg.registerFloatVar("mbc.Release4","","S",N_("Time before the compressor releases the sound"),&fHslider15, 1.25, 0.01, 10.0, 0.01, 0);
660 	reg.registerFloatVar("mbc.Release5","","S",N_("Time before the compressor releases the sound"),&fHslider9, 1.25, 0.01, 10.0, 0.01, 0);
661 	reg.registerFloatVar("mbc.crossover_b1_b2",N_("Crossover B1-B2 (hz)"),"SL",N_("Crossover fi.bandpass frequency"),&fHslider6, 80.0, 20.0, 20000.0, 1.0800000000000001, 0);
662 	reg.registerFloatVar("mbc.crossover_b2_b3",N_("Crossover B2-B3 (hz)"),"SL",N_("Crossover fi.bandpass frequency"),&fHslider5, 210.0, 20.0, 20000.0, 1.0800000000000001, 0);
663 	reg.registerFloatVar("mbc.crossover_b3_b4",N_("Crossover B3-B4 (hz)"),"SL",N_("Crossover fi.bandpass frequency"),&fHslider4, 1700.0, 20.0, 20000.0, 1.0800000000000001, 0);
664 	reg.registerFloatVar("mbc.crossover_b4_b5",N_("Crossover B4-B5 (hz)"),"SL",N_("Crossover fi.bandpass frequency"),&fHslider3, 5000.0, 20.0, 20000.0, 1.0800000000000001, 0);
665 	reg.registerFloatVar("mbc.v1","","SOLN","",&fVbargraph4, 0, -70.0, 5.0, 0, 0);
666 	reg.registerFloatVar("mbc.v2","","SOLN","",&fVbargraph3, 0, -70.0, 5.0, 0, 0);
667 	reg.registerFloatVar("mbc.v3","","SOLN","",&fVbargraph2, 0, -70.0, 5.0, 0, 0);
668 	reg.registerFloatVar("mbc.v4","","SOLN","",&fVbargraph1, 0, -70.0, 5.0, 0, 0);
669 	reg.registerFloatVar("mbc.v5","","SOLN","",&fVbargraph0, 0, -70.0, 5.0, 0, 0);
670 	return 0;
671 }
672 
register_params_static(const ParamReg & reg)673 int Dsp::register_params_static(const ParamReg& reg)
674 {
675 	return static_cast<Dsp*>(reg.plugin)->register_par(reg);
676 }
677 
678 const char *Dsp::glade_def = "\
679 <?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\
680 <!-- Generated with glade 3.22.1 -->\n\
681 <interface>\n\
682   <requires lib=\"gtk+\" version=\"3.20\"/>\n\
683   <requires lib=\"gxwidgets\" version=\"0.0\"/>\n\
684   <object class=\"GtkWindow\" id=\"window1\">\n\
685     <property name=\"can_focus\">False</property>\n\
686     <child>\n\
687       <placeholder/>\n\
688     </child>\n\
689     <child>\n\
690       <object class=\"GtkBox\" id=\"vbox1\">\n\
691         <property name=\"visible\">True</property>\n\
692         <property name=\"can_focus\">False</property>\n\
693         <property name=\"orientation\">vertical</property>\n\
694         <child>\n\
695           <object class=\"GtkBox\" id=\"rackbox\">\n\
696             <property name=\"visible\">True</property>\n\
697             <property name=\"can_focus\">False</property>\n\
698             <property name=\"spacing\">4</property>\n\
699             <child>\n\
700               <object class=\"GtkBox\" id=\"hbox1\">\n\
701                 <property name=\"visible\">True</property>\n\
702                 <property name=\"can_focus\">False</property>\n\
703                 <property name=\"spacing\">8</property>\n\
704                 <child>\n\
705                   <object class=\"GtkNotebook\" id=\"notebook\">\n\
706                     <property name=\"visible\">True</property>\n\
707                     <property name=\"can_focus\">True</property>\n\
708                     <child>\n\
709                       <object class=\"GtkBox\" id=\"hbox2\">\n\
710                         <property name=\"visible\">True</property>\n\
711                         <property name=\"can_focus\">False</property>\n\
712                         <child>\n\
713                           <object class=\"GtkBox\" id=\"vbox3\">\n\
714                             <property name=\"visible\">True</property>\n\
715                             <property name=\"can_focus\">False</property>\n\
716                             <property name=\"orientation\">vertical</property>\n\
717                             <property name=\"spacing\">4</property>\n\
718                             <child>\n\
719                               <object class=\"GtkBox\" id=\"hbox4\">\n\
720                                 <property name=\"visible\">True</property>\n\
721                                 <property name=\"can_focus\">False</property>\n\
722                                 <property name=\"spacing\">15</property>\n\
723                                 <child>\n\
724                                   <object class=\"GtkBox\" id=\"vbox4\">\n\
725                                     <property name=\"visible\">True</property>\n\
726                                     <property name=\"can_focus\">False</property>\n\
727                                     <property name=\"orientation\">vertical</property>\n\
728                                     <child>\n\
729                                       <object class=\"GtkLabel\" id=\"label_1:rack_label\">\n\
730                                         <property name=\"visible\">True</property>\n\
731                                         <property name=\"can_focus\">False</property>\n\
732                                         <property name=\"label\" translatable=\"yes\">Ratio</property>\n\
733                                       </object>\n\
734                                       <packing>\n\
735                                         <property name=\"expand\">False</property>\n\
736                                         <property name=\"fill\">False</property>\n\
737                                         <property name=\"position\">0</property>\n\
738                                       </packing>\n\
739                                     </child>\n\
740                                     <child>\n\
741                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob1\">\n\
742                                         <property name=\"visible\">True</property>\n\
743                                         <property name=\"can_focus\">True</property>\n\
744                                         <property name=\"receives_default\">True</property>\n\
745                                         <property name=\"var_id\">mbc.Ratio1</property>\n\
746                                       </object>\n\
747                                       <packing>\n\
748                                         <property name=\"expand\">True</property>\n\
749                                         <property name=\"fill\">True</property>\n\
750                                         <property name=\"position\">1</property>\n\
751                                       </packing>\n\
752                                     </child>\n\
753                                   </object>\n\
754                                   <packing>\n\
755                                     <property name=\"expand\">True</property>\n\
756                                     <property name=\"fill\">True</property>\n\
757                                     <property name=\"position\">0</property>\n\
758                                   </packing>\n\
759                                 </child>\n\
760                                 <child>\n\
761                                   <object class=\"GtkBox\" id=\"vbox5\">\n\
762                                     <property name=\"visible\">True</property>\n\
763                                     <property name=\"can_focus\">False</property>\n\
764                                     <property name=\"orientation\">vertical</property>\n\
765                                     <child>\n\
766                                       <object class=\"GtkLabel\" id=\"label_2:rack_label\">\n\
767                                         <property name=\"visible\">True</property>\n\
768                                         <property name=\"can_focus\">False</property>\n\
769                                         <property name=\"label\" translatable=\"yes\">Makeup</property>\n\
770                                       </object>\n\
771                                       <packing>\n\
772                                         <property name=\"expand\">False</property>\n\
773                                         <property name=\"fill\">False</property>\n\
774                                         <property name=\"position\">0</property>\n\
775                                       </packing>\n\
776                                     </child>\n\
777                                     <child>\n\
778                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob2\">\n\
779                                         <property name=\"visible\">True</property>\n\
780                                         <property name=\"can_focus\">True</property>\n\
781                                         <property name=\"receives_default\">True</property>\n\
782                                         <property name=\"var_id\">mbc.Makeup1</property>\n\
783                                       </object>\n\
784                                       <packing>\n\
785                                         <property name=\"expand\">True</property>\n\
786                                         <property name=\"fill\">True</property>\n\
787                                         <property name=\"position\">1</property>\n\
788                                       </packing>\n\
789                                     </child>\n\
790                                   </object>\n\
791                                   <packing>\n\
792                                     <property name=\"expand\">True</property>\n\
793                                     <property name=\"fill\">True</property>\n\
794                                     <property name=\"position\">1</property>\n\
795                                   </packing>\n\
796                                 </child>\n\
797                                 <child>\n\
798                                   <object class=\"GtkBox\" id=\"vbox6\">\n\
799                                     <property name=\"visible\">True</property>\n\
800                                     <property name=\"can_focus\">False</property>\n\
801                                     <property name=\"orientation\">vertical</property>\n\
802                                     <child>\n\
803                                       <object class=\"GtkLabel\" id=\"label_3:rack_label\">\n\
804                                         <property name=\"visible\">True</property>\n\
805                                         <property name=\"can_focus\">False</property>\n\
806                                         <property name=\"label\" translatable=\"yes\">Anticlip</property>\n\
807                                       </object>\n\
808                                       <packing>\n\
809                                         <property name=\"expand\">False</property>\n\
810                                         <property name=\"fill\">False</property>\n\
811                                         <property name=\"position\">0</property>\n\
812                                       </packing>\n\
813                                     </child>\n\
814                                     <child>\n\
815                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob3\">\n\
816                                         <property name=\"visible\">True</property>\n\
817                                         <property name=\"can_focus\">True</property>\n\
818                                         <property name=\"receives_default\">True</property>\n\
819                                         <property name=\"var_id\">mbc.Makeup-Threshold1</property>\n\
820                                       </object>\n\
821                                       <packing>\n\
822                                         <property name=\"expand\">True</property>\n\
823                                         <property name=\"fill\">True</property>\n\
824                                         <property name=\"position\">1</property>\n\
825                                       </packing>\n\
826                                     </child>\n\
827                                   </object>\n\
828                                   <packing>\n\
829                                     <property name=\"expand\">True</property>\n\
830                                     <property name=\"fill\">True</property>\n\
831                                     <property name=\"position\">2</property>\n\
832                                   </packing>\n\
833                                 </child>\n\
834                               </object>\n\
835                               <packing>\n\
836                                 <property name=\"expand\">True</property>\n\
837                                 <property name=\"fill\">True</property>\n\
838                                 <property name=\"position\">0</property>\n\
839                               </packing>\n\
840                             </child>\n\
841                             <child>\n\
842                               <object class=\"GxSelector\" id=\"gxselector1\">\n\
843                                 <property name=\"visible\">True</property>\n\
844                                 <property name=\"can_focus\">True</property>\n\
845                                 <property name=\"receives_default\">True</property>\n\
846                                 <property name=\"var_id\">mbc.Mode1</property>\n\
847                                 <property name=\"value_position\">right</property>\n\
848                               </object>\n\
849                               <packing>\n\
850                                 <property name=\"expand\">True</property>\n\
851                                 <property name=\"fill\">True</property>\n\
852                                 <property name=\"position\">1</property>\n\
853                               </packing>\n\
854                             </child>\n\
855                           </object>\n\
856                           <packing>\n\
857                             <property name=\"expand\">False</property>\n\
858                             <property name=\"fill\">True</property>\n\
859                             <property name=\"position\">0</property>\n\
860                           </packing>\n\
861                         </child>\n\
862                         <child>\n\
863                           <object class=\"GtkGrid\" id=\"table1\">\n\
864                             <property name=\"visible\">True</property>\n\
865                             <property name=\"can_focus\">False</property>\n\
866                             <property name=\"halign\">center</property>\n\
867                             <property name=\"row_spacing\">4</property>\n\
868                             <property name=\"column_homogeneous\">True</property>\n\
869                             <child>\n\
870                               <object class=\"GxSmallKnob\" id=\"gxsmallknob1\">\n\
871                                 <property name=\"visible\">True</property>\n\
872                                 <property name=\"can_focus\">True</property>\n\
873                                 <property name=\"receives_default\">True</property>\n\
874                                 <property name=\"var_id\">mbc.Attack1</property>\n\
875                               </object>\n\
876                               <packing>\n\
877                                 <property name=\"left_attach\">1</property>\n\
878                                 <property name=\"top_attach\">0</property>\n\
879                               </packing>\n\
880                             </child>\n\
881                             <child>\n\
882                               <object class=\"GxSmallKnob\" id=\"gxsmallknob4\">\n\
883                                 <property name=\"visible\">True</property>\n\
884                                 <property name=\"can_focus\">True</property>\n\
885                                 <property name=\"receives_default\">True</property>\n\
886                                 <property name=\"var_id\">mbc.crossover_b1_b2</property>\n\
887                               </object>\n\
888                               <packing>\n\
889                                 <property name=\"left_attach\">3</property>\n\
890                                 <property name=\"top_attach\">1</property>\n\
891                               </packing>\n\
892                             </child>\n\
893                             <child>\n\
894                               <object class=\"GtkLabel\" id=\"label_4:rack_label\">\n\
895                                 <property name=\"visible\">True</property>\n\
896                                 <property name=\"can_focus\">False</property>\n\
897                                 <property name=\"label\" translatable=\"yes\">Att</property>\n\
898                                 <property name=\"xalign\">1</property>\n\
899                               </object>\n\
900                               <packing>\n\
901                                 <property name=\"left_attach\">0</property>\n\
902                                 <property name=\"top_attach\">0</property>\n\
903                               </packing>\n\
904                             </child>\n\
905                             <child>\n\
906                               <object class=\"GtkLabel\" id=\"label_7:rack_label\">\n\
907                                 <property name=\"visible\">True</property>\n\
908                                 <property name=\"can_focus\">False</property>\n\
909                                 <property name=\"label\" translatable=\"yes\">High</property>\n\
910                                 <property name=\"xalign\">1</property>\n\
911                               </object>\n\
912                               <packing>\n\
913                                 <property name=\"left_attach\">2</property>\n\
914                                 <property name=\"top_attach\">1</property>\n\
915                               </packing>\n\
916                             </child>\n\
917                             <child>\n\
918                               <object class=\"GtkLabel\" id=\"label_5:rack_label\">\n\
919                                 <property name=\"visible\">True</property>\n\
920                                 <property name=\"can_focus\">False</property>\n\
921                                 <property name=\"label\" translatable=\"yes\">Rel</property>\n\
922                                 <property name=\"xalign\">1</property>\n\
923                               </object>\n\
924                               <packing>\n\
925                                 <property name=\"left_attach\">2</property>\n\
926                                 <property name=\"top_attach\">0</property>\n\
927                               </packing>\n\
928                             </child>\n\
929                             <child>\n\
930                               <object class=\"GxSmallKnob\" id=\"gxsmallknob3\">\n\
931                                 <property name=\"visible\">True</property>\n\
932                                 <property name=\"can_focus\">True</property>\n\
933                                 <property name=\"receives_default\">True</property>\n\
934                                 <property name=\"var_id\">mbc.Release1</property>\n\
935                               </object>\n\
936                               <packing>\n\
937                                 <property name=\"left_attach\">3</property>\n\
938                                 <property name=\"top_attach\">0</property>\n\
939                               </packing>\n\
940                             </child>\n\
941                             <child>\n\
942                               <placeholder/>\n\
943                             </child>\n\
944                             <child>\n\
945                               <placeholder/>\n\
946                             </child>\n\
947                           </object>\n\
948                           <packing>\n\
949                             <property name=\"expand\">True</property>\n\
950                             <property name=\"fill\">True</property>\n\
951                             <property name=\"position\">1</property>\n\
952                           </packing>\n\
953                         </child>\n\
954                       </object>\n\
955                     </child>\n\
956                     <child type=\"tab\">\n\
957                       <object class=\"GtkLabel\" id=\"label1\">\n\
958                         <property name=\"visible\">True</property>\n\
959                         <property name=\"can_focus\">False</property>\n\
960                         <property name=\"label\" translatable=\"yes\">Band 1</property>\n\
961                       </object>\n\
962                       <packing>\n\
963                         <property name=\"tab_fill\">False</property>\n\
964                       </packing>\n\
965                     </child>\n\
966                     <child>\n\
967                       <object class=\"GtkBox\" id=\"hbox5\">\n\
968                         <property name=\"visible\">True</property>\n\
969                         <property name=\"can_focus\">False</property>\n\
970                         <child>\n\
971                           <object class=\"GtkBox\" id=\"vbox7\">\n\
972                             <property name=\"visible\">True</property>\n\
973                             <property name=\"can_focus\">False</property>\n\
974                             <property name=\"orientation\">vertical</property>\n\
975                             <property name=\"spacing\">4</property>\n\
976                             <child>\n\
977                               <object class=\"GtkBox\" id=\"hbox6\">\n\
978                                 <property name=\"visible\">True</property>\n\
979                                 <property name=\"can_focus\">False</property>\n\
980                                 <property name=\"spacing\">15</property>\n\
981                                 <child>\n\
982                                   <object class=\"GtkBox\" id=\"vbox8\">\n\
983                                     <property name=\"visible\">True</property>\n\
984                                     <property name=\"can_focus\">False</property>\n\
985                                     <property name=\"orientation\">vertical</property>\n\
986                                     <child>\n\
987                                       <object class=\"GtkLabel\" id=\"label_8:rack_label\">\n\
988                                         <property name=\"visible\">True</property>\n\
989                                         <property name=\"can_focus\">False</property>\n\
990                                         <property name=\"label\" translatable=\"yes\">Ratio</property>\n\
991                                       </object>\n\
992                                       <packing>\n\
993                                         <property name=\"expand\">False</property>\n\
994                                         <property name=\"fill\">False</property>\n\
995                                         <property name=\"position\">0</property>\n\
996                                       </packing>\n\
997                                     </child>\n\
998                                     <child>\n\
999                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob4\">\n\
1000                                         <property name=\"visible\">True</property>\n\
1001                                         <property name=\"can_focus\">True</property>\n\
1002                                         <property name=\"receives_default\">True</property>\n\
1003                                         <property name=\"var_id\">mbc.Ratio2</property>\n\
1004                                       </object>\n\
1005                                       <packing>\n\
1006                                         <property name=\"expand\">True</property>\n\
1007                                         <property name=\"fill\">True</property>\n\
1008                                         <property name=\"position\">1</property>\n\
1009                                       </packing>\n\
1010                                     </child>\n\
1011                                   </object>\n\
1012                                   <packing>\n\
1013                                     <property name=\"expand\">True</property>\n\
1014                                     <property name=\"fill\">True</property>\n\
1015                                     <property name=\"position\">0</property>\n\
1016                                   </packing>\n\
1017                                 </child>\n\
1018                                 <child>\n\
1019                                   <object class=\"GtkBox\" id=\"vbox9\">\n\
1020                                     <property name=\"visible\">True</property>\n\
1021                                     <property name=\"can_focus\">False</property>\n\
1022                                     <property name=\"orientation\">vertical</property>\n\
1023                                     <child>\n\
1024                                       <object class=\"GtkLabel\" id=\"label_9:rack_label\">\n\
1025                                         <property name=\"visible\">True</property>\n\
1026                                         <property name=\"can_focus\">False</property>\n\
1027                                         <property name=\"label\" translatable=\"yes\">Makeup</property>\n\
1028                                       </object>\n\
1029                                       <packing>\n\
1030                                         <property name=\"expand\">False</property>\n\
1031                                         <property name=\"fill\">False</property>\n\
1032                                         <property name=\"position\">0</property>\n\
1033                                       </packing>\n\
1034                                     </child>\n\
1035                                     <child>\n\
1036                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob5\">\n\
1037                                         <property name=\"visible\">True</property>\n\
1038                                         <property name=\"can_focus\">True</property>\n\
1039                                         <property name=\"receives_default\">True</property>\n\
1040                                         <property name=\"var_id\">mbc.Makeup2</property>\n\
1041                                       </object>\n\
1042                                       <packing>\n\
1043                                         <property name=\"expand\">True</property>\n\
1044                                         <property name=\"fill\">True</property>\n\
1045                                         <property name=\"position\">1</property>\n\
1046                                       </packing>\n\
1047                                     </child>\n\
1048                                   </object>\n\
1049                                   <packing>\n\
1050                                     <property name=\"expand\">True</property>\n\
1051                                     <property name=\"fill\">True</property>\n\
1052                                     <property name=\"position\">1</property>\n\
1053                                   </packing>\n\
1054                                 </child>\n\
1055                                 <child>\n\
1056                                   <object class=\"GtkBox\" id=\"vbox10\">\n\
1057                                     <property name=\"visible\">True</property>\n\
1058                                     <property name=\"can_focus\">False</property>\n\
1059                                     <property name=\"orientation\">vertical</property>\n\
1060                                     <child>\n\
1061                                       <object class=\"GtkLabel\" id=\"label_10:rack_label\">\n\
1062                                         <property name=\"visible\">True</property>\n\
1063                                         <property name=\"can_focus\">False</property>\n\
1064                                         <property name=\"label\" translatable=\"yes\">Anticlip</property>\n\
1065                                       </object>\n\
1066                                       <packing>\n\
1067                                         <property name=\"expand\">False</property>\n\
1068                                         <property name=\"fill\">False</property>\n\
1069                                         <property name=\"position\">0</property>\n\
1070                                       </packing>\n\
1071                                     </child>\n\
1072                                     <child>\n\
1073                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob6\">\n\
1074                                         <property name=\"visible\">True</property>\n\
1075                                         <property name=\"can_focus\">True</property>\n\
1076                                         <property name=\"receives_default\">True</property>\n\
1077                                         <property name=\"var_id\">mbc.Makeup-Threshold2</property>\n\
1078                                       </object>\n\
1079                                       <packing>\n\
1080                                         <property name=\"expand\">True</property>\n\
1081                                         <property name=\"fill\">True</property>\n\
1082                                         <property name=\"position\">1</property>\n\
1083                                       </packing>\n\
1084                                     </child>\n\
1085                                   </object>\n\
1086                                   <packing>\n\
1087                                     <property name=\"expand\">True</property>\n\
1088                                     <property name=\"fill\">True</property>\n\
1089                                     <property name=\"position\">2</property>\n\
1090                                   </packing>\n\
1091                                 </child>\n\
1092                               </object>\n\
1093                               <packing>\n\
1094                                 <property name=\"expand\">True</property>\n\
1095                                 <property name=\"fill\">True</property>\n\
1096                                 <property name=\"position\">0</property>\n\
1097                               </packing>\n\
1098                             </child>\n\
1099                             <child>\n\
1100                               <object class=\"GxSelector\" id=\"gxselector2\">\n\
1101                                 <property name=\"visible\">True</property>\n\
1102                                 <property name=\"can_focus\">True</property>\n\
1103                                 <property name=\"receives_default\">True</property>\n\
1104                                 <property name=\"var_id\">mbc.Mode2</property>\n\
1105                                 <property name=\"value_position\">right</property>\n\
1106                               </object>\n\
1107                               <packing>\n\
1108                                 <property name=\"expand\">True</property>\n\
1109                                 <property name=\"fill\">True</property>\n\
1110                                 <property name=\"position\">1</property>\n\
1111                               </packing>\n\
1112                             </child>\n\
1113                           </object>\n\
1114                           <packing>\n\
1115                             <property name=\"expand\">False</property>\n\
1116                             <property name=\"fill\">True</property>\n\
1117                             <property name=\"position\">0</property>\n\
1118                           </packing>\n\
1119                         </child>\n\
1120                         <child>\n\
1121                           <object class=\"GtkGrid\" id=\"table2\">\n\
1122                             <property name=\"visible\">True</property>\n\
1123                             <property name=\"can_focus\">False</property>\n\
1124                             <property name=\"halign\">center</property>\n\
1125                             <property name=\"row_spacing\">4</property>\n\
1126                             <property name=\"column_homogeneous\">True</property>\n\
1127                             <child>\n\
1128                               <object class=\"GxSmallKnob\" id=\"gxsmallknob5\">\n\
1129                                 <property name=\"visible\">True</property>\n\
1130                                 <property name=\"can_focus\">True</property>\n\
1131                                 <property name=\"receives_default\">True</property>\n\
1132                                 <property name=\"var_id\">mbc.Attack2</property>\n\
1133                               </object>\n\
1134                               <packing>\n\
1135                                 <property name=\"left_attach\">1</property>\n\
1136                                 <property name=\"top_attach\">0</property>\n\
1137                               </packing>\n\
1138                             </child>\n\
1139                             <child>\n\
1140                               <object class=\"GxSmallKnob\" id=\"gxsmallknob6\">\n\
1141                                 <property name=\"visible\">True</property>\n\
1142                                 <property name=\"can_focus\">True</property>\n\
1143                                 <property name=\"receives_default\">True</property>\n\
1144                                 <property name=\"var_id\">mbc.crossover_b2_b3</property>\n\
1145                               </object>\n\
1146                               <packing>\n\
1147                                 <property name=\"left_attach\">3</property>\n\
1148                                 <property name=\"top_attach\">1</property>\n\
1149                               </packing>\n\
1150                             </child>\n\
1151                             <child>\n\
1152                               <object class=\"GtkLabel\" id=\"label_11:rack_label\">\n\
1153                                 <property name=\"visible\">True</property>\n\
1154                                 <property name=\"can_focus\">False</property>\n\
1155                                 <property name=\"label\" translatable=\"yes\">Att</property>\n\
1156                                 <property name=\"xalign\">1</property>\n\
1157                               </object>\n\
1158                               <packing>\n\
1159                                 <property name=\"left_attach\">0</property>\n\
1160                                 <property name=\"top_attach\">0</property>\n\
1161                               </packing>\n\
1162                             </child>\n\
1163                             <child>\n\
1164                               <object class=\"GtkLabel\" id=\"label_14:rack_label\">\n\
1165                                 <property name=\"visible\">True</property>\n\
1166                                 <property name=\"can_focus\">False</property>\n\
1167                                 <property name=\"label\" translatable=\"yes\">High</property>\n\
1168                                 <property name=\"xalign\">1</property>\n\
1169                               </object>\n\
1170                               <packing>\n\
1171                                 <property name=\"left_attach\">2</property>\n\
1172                                 <property name=\"top_attach\">1</property>\n\
1173                               </packing>\n\
1174                             </child>\n\
1175                             <child>\n\
1176                               <object class=\"GtkLabel\" id=\"label_13:rack_label\">\n\
1177                                 <property name=\"visible\">True</property>\n\
1178                                 <property name=\"can_focus\">False</property>\n\
1179                                 <property name=\"label\" translatable=\"yes\">Low</property>\n\
1180                                 <property name=\"xalign\">1</property>\n\
1181                               </object>\n\
1182                               <packing>\n\
1183                                 <property name=\"left_attach\">0</property>\n\
1184                                 <property name=\"top_attach\">1</property>\n\
1185                               </packing>\n\
1186                             </child>\n\
1187                             <child>\n\
1188                               <object class=\"GtkLabel\" id=\"label_12:rack_label\">\n\
1189                                 <property name=\"visible\">True</property>\n\
1190                                 <property name=\"can_focus\">False</property>\n\
1191                                 <property name=\"label\" translatable=\"yes\">Rel</property>\n\
1192                                 <property name=\"xalign\">1</property>\n\
1193                               </object>\n\
1194                               <packing>\n\
1195                                 <property name=\"left_attach\">2</property>\n\
1196                                 <property name=\"top_attach\">0</property>\n\
1197                               </packing>\n\
1198                             </child>\n\
1199                             <child>\n\
1200                               <object class=\"GxSmallKnob\" id=\"gxsmallknob7\">\n\
1201                                 <property name=\"visible\">True</property>\n\
1202                                 <property name=\"can_focus\">True</property>\n\
1203                                 <property name=\"receives_default\">True</property>\n\
1204                                 <property name=\"var_id\">mbc.crossover_b1_b2</property>\n\
1205                               </object>\n\
1206                               <packing>\n\
1207                                 <property name=\"left_attach\">1</property>\n\
1208                                 <property name=\"top_attach\">1</property>\n\
1209                               </packing>\n\
1210                             </child>\n\
1211                             <child>\n\
1212                               <object class=\"GxSmallKnob\" id=\"gxsmallknob8\">\n\
1213                                 <property name=\"visible\">True</property>\n\
1214                                 <property name=\"can_focus\">True</property>\n\
1215                                 <property name=\"receives_default\">True</property>\n\
1216                                 <property name=\"var_id\">mbc.Release2</property>\n\
1217                               </object>\n\
1218                               <packing>\n\
1219                                 <property name=\"left_attach\">3</property>\n\
1220                                 <property name=\"top_attach\">0</property>\n\
1221                               </packing>\n\
1222                             </child>\n\
1223                           </object>\n\
1224                           <packing>\n\
1225                             <property name=\"expand\">True</property>\n\
1226                             <property name=\"fill\">True</property>\n\
1227                             <property name=\"position\">1</property>\n\
1228                           </packing>\n\
1229                         </child>\n\
1230                       </object>\n\
1231                       <packing>\n\
1232                         <property name=\"position\">1</property>\n\
1233                       </packing>\n\
1234                     </child>\n\
1235                     <child type=\"tab\">\n\
1236                       <object class=\"GtkLabel\" id=\"label2\">\n\
1237                         <property name=\"visible\">True</property>\n\
1238                         <property name=\"can_focus\">False</property>\n\
1239                         <property name=\"label\" translatable=\"yes\">Band 2</property>\n\
1240                       </object>\n\
1241                       <packing>\n\
1242                         <property name=\"position\">1</property>\n\
1243                         <property name=\"tab_fill\">False</property>\n\
1244                       </packing>\n\
1245                     </child>\n\
1246                     <child>\n\
1247                       <object class=\"GtkBox\" id=\"hbox7\">\n\
1248                         <property name=\"visible\">True</property>\n\
1249                         <property name=\"can_focus\">False</property>\n\
1250                         <child>\n\
1251                           <object class=\"GtkBox\" id=\"vbox11\">\n\
1252                             <property name=\"visible\">True</property>\n\
1253                             <property name=\"can_focus\">False</property>\n\
1254                             <property name=\"orientation\">vertical</property>\n\
1255                             <property name=\"spacing\">4</property>\n\
1256                             <child>\n\
1257                               <object class=\"GtkBox\" id=\"hbox8\">\n\
1258                                 <property name=\"visible\">True</property>\n\
1259                                 <property name=\"can_focus\">False</property>\n\
1260                                 <property name=\"spacing\">15</property>\n\
1261                                 <child>\n\
1262                                   <object class=\"GtkBox\" id=\"vbox12\">\n\
1263                                     <property name=\"visible\">True</property>\n\
1264                                     <property name=\"can_focus\">False</property>\n\
1265                                     <property name=\"orientation\">vertical</property>\n\
1266                                     <child>\n\
1267                                       <object class=\"GtkLabel\" id=\"label_15:rack_label\">\n\
1268                                         <property name=\"visible\">True</property>\n\
1269                                         <property name=\"can_focus\">False</property>\n\
1270                                         <property name=\"label\" translatable=\"yes\">Ratio</property>\n\
1271                                       </object>\n\
1272                                       <packing>\n\
1273                                         <property name=\"expand\">False</property>\n\
1274                                         <property name=\"fill\">False</property>\n\
1275                                         <property name=\"position\">0</property>\n\
1276                                       </packing>\n\
1277                                     </child>\n\
1278                                     <child>\n\
1279                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob7\">\n\
1280                                         <property name=\"visible\">True</property>\n\
1281                                         <property name=\"can_focus\">True</property>\n\
1282                                         <property name=\"receives_default\">True</property>\n\
1283                                         <property name=\"var_id\">mbc.Ratio3</property>\n\
1284                                       </object>\n\
1285                                       <packing>\n\
1286                                         <property name=\"expand\">True</property>\n\
1287                                         <property name=\"fill\">True</property>\n\
1288                                         <property name=\"position\">1</property>\n\
1289                                       </packing>\n\
1290                                     </child>\n\
1291                                   </object>\n\
1292                                   <packing>\n\
1293                                     <property name=\"expand\">True</property>\n\
1294                                     <property name=\"fill\">True</property>\n\
1295                                     <property name=\"position\">0</property>\n\
1296                                   </packing>\n\
1297                                 </child>\n\
1298                                 <child>\n\
1299                                   <object class=\"GtkBox\" id=\"vbox13\">\n\
1300                                     <property name=\"visible\">True</property>\n\
1301                                     <property name=\"can_focus\">False</property>\n\
1302                                     <property name=\"orientation\">vertical</property>\n\
1303                                     <child>\n\
1304                                       <object class=\"GtkLabel\" id=\"label_16:rack_label\">\n\
1305                                         <property name=\"visible\">True</property>\n\
1306                                         <property name=\"can_focus\">False</property>\n\
1307                                         <property name=\"label\" translatable=\"yes\">Makeup</property>\n\
1308                                       </object>\n\
1309                                       <packing>\n\
1310                                         <property name=\"expand\">False</property>\n\
1311                                         <property name=\"fill\">False</property>\n\
1312                                         <property name=\"position\">0</property>\n\
1313                                       </packing>\n\
1314                                     </child>\n\
1315                                     <child>\n\
1316                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob8\">\n\
1317                                         <property name=\"visible\">True</property>\n\
1318                                         <property name=\"can_focus\">True</property>\n\
1319                                         <property name=\"receives_default\">True</property>\n\
1320                                         <property name=\"var_id\">mbc.Makeup3</property>\n\
1321                                       </object>\n\
1322                                       <packing>\n\
1323                                         <property name=\"expand\">True</property>\n\
1324                                         <property name=\"fill\">True</property>\n\
1325                                         <property name=\"position\">1</property>\n\
1326                                       </packing>\n\
1327                                     </child>\n\
1328                                   </object>\n\
1329                                   <packing>\n\
1330                                     <property name=\"expand\">True</property>\n\
1331                                     <property name=\"fill\">True</property>\n\
1332                                     <property name=\"position\">1</property>\n\
1333                                   </packing>\n\
1334                                 </child>\n\
1335                                 <child>\n\
1336                                   <object class=\"GtkBox\" id=\"vbox14\">\n\
1337                                     <property name=\"visible\">True</property>\n\
1338                                     <property name=\"can_focus\">False</property>\n\
1339                                     <property name=\"orientation\">vertical</property>\n\
1340                                     <child>\n\
1341                                       <object class=\"GtkLabel\" id=\"label_17:rack_label\">\n\
1342                                         <property name=\"visible\">True</property>\n\
1343                                         <property name=\"can_focus\">False</property>\n\
1344                                         <property name=\"label\" translatable=\"yes\">Anticlip</property>\n\
1345                                       </object>\n\
1346                                       <packing>\n\
1347                                         <property name=\"expand\">False</property>\n\
1348                                         <property name=\"fill\">False</property>\n\
1349                                         <property name=\"position\">0</property>\n\
1350                                       </packing>\n\
1351                                     </child>\n\
1352                                     <child>\n\
1353                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob9\">\n\
1354                                         <property name=\"visible\">True</property>\n\
1355                                         <property name=\"can_focus\">True</property>\n\
1356                                         <property name=\"receives_default\">True</property>\n\
1357                                         <property name=\"var_id\">mbc.Makeup-Threshold3</property>\n\
1358                                       </object>\n\
1359                                       <packing>\n\
1360                                         <property name=\"expand\">True</property>\n\
1361                                         <property name=\"fill\">True</property>\n\
1362                                         <property name=\"position\">1</property>\n\
1363                                       </packing>\n\
1364                                     </child>\n\
1365                                   </object>\n\
1366                                   <packing>\n\
1367                                     <property name=\"expand\">True</property>\n\
1368                                     <property name=\"fill\">True</property>\n\
1369                                     <property name=\"position\">2</property>\n\
1370                                   </packing>\n\
1371                                 </child>\n\
1372                               </object>\n\
1373                               <packing>\n\
1374                                 <property name=\"expand\">True</property>\n\
1375                                 <property name=\"fill\">True</property>\n\
1376                                 <property name=\"position\">0</property>\n\
1377                               </packing>\n\
1378                             </child>\n\
1379                             <child>\n\
1380                               <object class=\"GxSelector\" id=\"gxselector3\">\n\
1381                                 <property name=\"visible\">True</property>\n\
1382                                 <property name=\"can_focus\">True</property>\n\
1383                                 <property name=\"receives_default\">True</property>\n\
1384                                 <property name=\"var_id\">mbc.Mode3</property>\n\
1385                                 <property name=\"value_position\">right</property>\n\
1386                               </object>\n\
1387                               <packing>\n\
1388                                 <property name=\"expand\">True</property>\n\
1389                                 <property name=\"fill\">True</property>\n\
1390                                 <property name=\"position\">1</property>\n\
1391                               </packing>\n\
1392                             </child>\n\
1393                           </object>\n\
1394                           <packing>\n\
1395                             <property name=\"expand\">False</property>\n\
1396                             <property name=\"fill\">True</property>\n\
1397                             <property name=\"position\">0</property>\n\
1398                           </packing>\n\
1399                         </child>\n\
1400                         <child>\n\
1401                           <object class=\"GtkGrid\" id=\"table3\">\n\
1402                             <property name=\"visible\">True</property>\n\
1403                             <property name=\"can_focus\">False</property>\n\
1404                             <property name=\"halign\">center</property>\n\
1405                             <property name=\"row_spacing\">4</property>\n\
1406                             <property name=\"column_homogeneous\">True</property>\n\
1407                             <child>\n\
1408                               <object class=\"GxSmallKnob\" id=\"gxsmallknob9\">\n\
1409                                 <property name=\"visible\">True</property>\n\
1410                                 <property name=\"can_focus\">True</property>\n\
1411                                 <property name=\"receives_default\">True</property>\n\
1412                                 <property name=\"var_id\">mbc.Attack3</property>\n\
1413                               </object>\n\
1414                               <packing>\n\
1415                                 <property name=\"left_attach\">1</property>\n\
1416                                 <property name=\"top_attach\">0</property>\n\
1417                               </packing>\n\
1418                             </child>\n\
1419                             <child>\n\
1420                               <object class=\"GxSmallKnob\" id=\"gxsmallknob10\">\n\
1421                                 <property name=\"visible\">True</property>\n\
1422                                 <property name=\"can_focus\">True</property>\n\
1423                                 <property name=\"receives_default\">True</property>\n\
1424                                 <property name=\"var_id\">mbc.crossover_b3_b4</property>\n\
1425                               </object>\n\
1426                               <packing>\n\
1427                                 <property name=\"left_attach\">3</property>\n\
1428                                 <property name=\"top_attach\">1</property>\n\
1429                               </packing>\n\
1430                             </child>\n\
1431                             <child>\n\
1432                               <object class=\"GtkLabel\" id=\"label_18:rack_label\">\n\
1433                                 <property name=\"visible\">True</property>\n\
1434                                 <property name=\"can_focus\">False</property>\n\
1435                                 <property name=\"label\" translatable=\"yes\">Att</property>\n\
1436                                 <property name=\"xalign\">1</property>\n\
1437                               </object>\n\
1438                               <packing>\n\
1439                                 <property name=\"left_attach\">0</property>\n\
1440                                 <property name=\"top_attach\">0</property>\n\
1441                               </packing>\n\
1442                             </child>\n\
1443                             <child>\n\
1444                               <object class=\"GtkLabel\" id=\"label_21:rack_label\">\n\
1445                                 <property name=\"visible\">True</property>\n\
1446                                 <property name=\"can_focus\">False</property>\n\
1447                                 <property name=\"label\" translatable=\"yes\">High</property>\n\
1448                                 <property name=\"xalign\">1</property>\n\
1449                               </object>\n\
1450                               <packing>\n\
1451                                 <property name=\"left_attach\">2</property>\n\
1452                                 <property name=\"top_attach\">1</property>\n\
1453                               </packing>\n\
1454                             </child>\n\
1455                             <child>\n\
1456                               <object class=\"GtkLabel\" id=\"label_20:rack_label\">\n\
1457                                 <property name=\"visible\">True</property>\n\
1458                                 <property name=\"can_focus\">False</property>\n\
1459                                 <property name=\"label\" translatable=\"yes\">Low</property>\n\
1460                                 <property name=\"xalign\">1</property>\n\
1461                               </object>\n\
1462                               <packing>\n\
1463                                 <property name=\"left_attach\">0</property>\n\
1464                                 <property name=\"top_attach\">1</property>\n\
1465                               </packing>\n\
1466                             </child>\n\
1467                             <child>\n\
1468                               <object class=\"GtkLabel\" id=\"label_19:rack_label\">\n\
1469                                 <property name=\"visible\">True</property>\n\
1470                                 <property name=\"can_focus\">False</property>\n\
1471                                 <property name=\"label\" translatable=\"yes\">Rel</property>\n\
1472                                 <property name=\"xalign\">1</property>\n\
1473                               </object>\n\
1474                               <packing>\n\
1475                                 <property name=\"left_attach\">2</property>\n\
1476                                 <property name=\"top_attach\">0</property>\n\
1477                               </packing>\n\
1478                             </child>\n\
1479                             <child>\n\
1480                               <object class=\"GxSmallKnob\" id=\"gxsmallknob11\">\n\
1481                                 <property name=\"visible\">True</property>\n\
1482                                 <property name=\"can_focus\">True</property>\n\
1483                                 <property name=\"receives_default\">True</property>\n\
1484                                 <property name=\"var_id\">mbc.crossover_b2_b3</property>\n\
1485                               </object>\n\
1486                               <packing>\n\
1487                                 <property name=\"left_attach\">1</property>\n\
1488                                 <property name=\"top_attach\">1</property>\n\
1489                               </packing>\n\
1490                             </child>\n\
1491                             <child>\n\
1492                               <object class=\"GxSmallKnob\" id=\"gxsmallknob12\">\n\
1493                                 <property name=\"visible\">True</property>\n\
1494                                 <property name=\"can_focus\">True</property>\n\
1495                                 <property name=\"receives_default\">True</property>\n\
1496                                 <property name=\"var_id\">mbc.Release3</property>\n\
1497                               </object>\n\
1498                               <packing>\n\
1499                                 <property name=\"left_attach\">3</property>\n\
1500                                 <property name=\"top_attach\">0</property>\n\
1501                               </packing>\n\
1502                             </child>\n\
1503                           </object>\n\
1504                           <packing>\n\
1505                             <property name=\"expand\">True</property>\n\
1506                             <property name=\"fill\">True</property>\n\
1507                             <property name=\"position\">1</property>\n\
1508                           </packing>\n\
1509                         </child>\n\
1510                       </object>\n\
1511                       <packing>\n\
1512                         <property name=\"position\">2</property>\n\
1513                       </packing>\n\
1514                     </child>\n\
1515                     <child type=\"tab\">\n\
1516                       <object class=\"GtkLabel\" id=\"label3\">\n\
1517                         <property name=\"visible\">True</property>\n\
1518                         <property name=\"can_focus\">False</property>\n\
1519                         <property name=\"label\" translatable=\"yes\">Band 3</property>\n\
1520                       </object>\n\
1521                       <packing>\n\
1522                         <property name=\"position\">2</property>\n\
1523                         <property name=\"tab_fill\">False</property>\n\
1524                       </packing>\n\
1525                     </child>\n\
1526                     <child>\n\
1527                       <object class=\"GtkBox\" id=\"hbox9\">\n\
1528                         <property name=\"visible\">True</property>\n\
1529                         <property name=\"can_focus\">False</property>\n\
1530                         <child>\n\
1531                           <object class=\"GtkBox\" id=\"vbox15\">\n\
1532                             <property name=\"visible\">True</property>\n\
1533                             <property name=\"can_focus\">False</property>\n\
1534                             <property name=\"orientation\">vertical</property>\n\
1535                             <property name=\"spacing\">4</property>\n\
1536                             <child>\n\
1537                               <object class=\"GtkBox\" id=\"hbox10\">\n\
1538                                 <property name=\"visible\">True</property>\n\
1539                                 <property name=\"can_focus\">False</property>\n\
1540                                 <property name=\"spacing\">15</property>\n\
1541                                 <child>\n\
1542                                   <object class=\"GtkBox\" id=\"vbox16\">\n\
1543                                     <property name=\"visible\">True</property>\n\
1544                                     <property name=\"can_focus\">False</property>\n\
1545                                     <property name=\"orientation\">vertical</property>\n\
1546                                     <child>\n\
1547                                       <object class=\"GtkLabel\" id=\"label_22:rack_label\">\n\
1548                                         <property name=\"visible\">True</property>\n\
1549                                         <property name=\"can_focus\">False</property>\n\
1550                                         <property name=\"label\" translatable=\"yes\">Ratio</property>\n\
1551                                       </object>\n\
1552                                       <packing>\n\
1553                                         <property name=\"expand\">False</property>\n\
1554                                         <property name=\"fill\">False</property>\n\
1555                                         <property name=\"position\">0</property>\n\
1556                                       </packing>\n\
1557                                     </child>\n\
1558                                     <child>\n\
1559                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob10\">\n\
1560                                         <property name=\"visible\">True</property>\n\
1561                                         <property name=\"can_focus\">True</property>\n\
1562                                         <property name=\"receives_default\">True</property>\n\
1563                                         <property name=\"var_id\">mbc.Ratio4</property>\n\
1564                                       </object>\n\
1565                                       <packing>\n\
1566                                         <property name=\"expand\">True</property>\n\
1567                                         <property name=\"fill\">True</property>\n\
1568                                         <property name=\"position\">1</property>\n\
1569                                       </packing>\n\
1570                                     </child>\n\
1571                                   </object>\n\
1572                                   <packing>\n\
1573                                     <property name=\"expand\">True</property>\n\
1574                                     <property name=\"fill\">True</property>\n\
1575                                     <property name=\"position\">0</property>\n\
1576                                   </packing>\n\
1577                                 </child>\n\
1578                                 <child>\n\
1579                                   <object class=\"GtkBox\" id=\"vbox17\">\n\
1580                                     <property name=\"visible\">True</property>\n\
1581                                     <property name=\"can_focus\">False</property>\n\
1582                                     <property name=\"orientation\">vertical</property>\n\
1583                                     <child>\n\
1584                                       <object class=\"GtkLabel\" id=\"label_23:rack_label\">\n\
1585                                         <property name=\"visible\">True</property>\n\
1586                                         <property name=\"can_focus\">False</property>\n\
1587                                         <property name=\"label\" translatable=\"yes\">Makeup</property>\n\
1588                                       </object>\n\
1589                                       <packing>\n\
1590                                         <property name=\"expand\">False</property>\n\
1591                                         <property name=\"fill\">False</property>\n\
1592                                         <property name=\"position\">0</property>\n\
1593                                       </packing>\n\
1594                                     </child>\n\
1595                                     <child>\n\
1596                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob11\">\n\
1597                                         <property name=\"visible\">True</property>\n\
1598                                         <property name=\"can_focus\">True</property>\n\
1599                                         <property name=\"receives_default\">True</property>\n\
1600                                         <property name=\"var_id\">mbc.Makeup4</property>\n\
1601                                       </object>\n\
1602                                       <packing>\n\
1603                                         <property name=\"expand\">True</property>\n\
1604                                         <property name=\"fill\">True</property>\n\
1605                                         <property name=\"position\">1</property>\n\
1606                                       </packing>\n\
1607                                     </child>\n\
1608                                   </object>\n\
1609                                   <packing>\n\
1610                                     <property name=\"expand\">True</property>\n\
1611                                     <property name=\"fill\">True</property>\n\
1612                                     <property name=\"position\">1</property>\n\
1613                                   </packing>\n\
1614                                 </child>\n\
1615                                 <child>\n\
1616                                   <object class=\"GtkBox\" id=\"vbox18\">\n\
1617                                     <property name=\"visible\">True</property>\n\
1618                                     <property name=\"can_focus\">False</property>\n\
1619                                     <property name=\"orientation\">vertical</property>\n\
1620                                     <child>\n\
1621                                       <object class=\"GtkLabel\" id=\"label_24:rack_label\">\n\
1622                                         <property name=\"visible\">True</property>\n\
1623                                         <property name=\"can_focus\">False</property>\n\
1624                                         <property name=\"label\" translatable=\"yes\">Anticlip</property>\n\
1625                                       </object>\n\
1626                                       <packing>\n\
1627                                         <property name=\"expand\">False</property>\n\
1628                                         <property name=\"fill\">False</property>\n\
1629                                         <property name=\"position\">0</property>\n\
1630                                       </packing>\n\
1631                                     </child>\n\
1632                                     <child>\n\
1633                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob12\">\n\
1634                                         <property name=\"visible\">True</property>\n\
1635                                         <property name=\"can_focus\">True</property>\n\
1636                                         <property name=\"receives_default\">True</property>\n\
1637                                         <property name=\"var_id\">mbc.Makeup-Threshold4</property>\n\
1638                                       </object>\n\
1639                                       <packing>\n\
1640                                         <property name=\"expand\">True</property>\n\
1641                                         <property name=\"fill\">True</property>\n\
1642                                         <property name=\"position\">1</property>\n\
1643                                       </packing>\n\
1644                                     </child>\n\
1645                                   </object>\n\
1646                                   <packing>\n\
1647                                     <property name=\"expand\">True</property>\n\
1648                                     <property name=\"fill\">True</property>\n\
1649                                     <property name=\"position\">2</property>\n\
1650                                   </packing>\n\
1651                                 </child>\n\
1652                               </object>\n\
1653                               <packing>\n\
1654                                 <property name=\"expand\">True</property>\n\
1655                                 <property name=\"fill\">True</property>\n\
1656                                 <property name=\"position\">0</property>\n\
1657                               </packing>\n\
1658                             </child>\n\
1659                             <child>\n\
1660                               <object class=\"GxSelector\" id=\"gxselector4\">\n\
1661                                 <property name=\"visible\">True</property>\n\
1662                                 <property name=\"can_focus\">True</property>\n\
1663                                 <property name=\"receives_default\">True</property>\n\
1664                                 <property name=\"var_id\">mbc.Mode4</property>\n\
1665                                 <property name=\"value_position\">right</property>\n\
1666                               </object>\n\
1667                               <packing>\n\
1668                                 <property name=\"expand\">True</property>\n\
1669                                 <property name=\"fill\">True</property>\n\
1670                                 <property name=\"position\">1</property>\n\
1671                               </packing>\n\
1672                             </child>\n\
1673                           </object>\n\
1674                           <packing>\n\
1675                             <property name=\"expand\">False</property>\n\
1676                             <property name=\"fill\">True</property>\n\
1677                             <property name=\"position\">0</property>\n\
1678                           </packing>\n\
1679                         </child>\n\
1680                         <child>\n\
1681                           <object class=\"GtkGrid\" id=\"table4\">\n\
1682                             <property name=\"visible\">True</property>\n\
1683                             <property name=\"can_focus\">False</property>\n\
1684                             <property name=\"halign\">center</property>\n\
1685                             <property name=\"row_spacing\">4</property>\n\
1686                             <property name=\"column_homogeneous\">True</property>\n\
1687                             <child>\n\
1688                               <object class=\"GxSmallKnob\" id=\"gxsmallknob13\">\n\
1689                                 <property name=\"visible\">True</property>\n\
1690                                 <property name=\"can_focus\">True</property>\n\
1691                                 <property name=\"receives_default\">True</property>\n\
1692                                 <property name=\"var_id\">mbc.Attack4</property>\n\
1693                               </object>\n\
1694                               <packing>\n\
1695                                 <property name=\"left_attach\">1</property>\n\
1696                                 <property name=\"top_attach\">0</property>\n\
1697                               </packing>\n\
1698                             </child>\n\
1699                             <child>\n\
1700                               <object class=\"GxSmallKnob\" id=\"gxsmallknob14\">\n\
1701                                 <property name=\"visible\">True</property>\n\
1702                                 <property name=\"can_focus\">True</property>\n\
1703                                 <property name=\"receives_default\">True</property>\n\
1704                                 <property name=\"var_id\">mbc.crossover_b4_b5</property>\n\
1705                               </object>\n\
1706                               <packing>\n\
1707                                 <property name=\"left_attach\">3</property>\n\
1708                                 <property name=\"top_attach\">1</property>\n\
1709                               </packing>\n\
1710                             </child>\n\
1711                             <child>\n\
1712                               <object class=\"GtkLabel\" id=\"label_25:rack_label\">\n\
1713                                 <property name=\"visible\">True</property>\n\
1714                                 <property name=\"can_focus\">False</property>\n\
1715                                 <property name=\"label\" translatable=\"yes\">Att</property>\n\
1716                                 <property name=\"xalign\">1</property>\n\
1717                               </object>\n\
1718                               <packing>\n\
1719                                 <property name=\"left_attach\">0</property>\n\
1720                                 <property name=\"top_attach\">0</property>\n\
1721                               </packing>\n\
1722                             </child>\n\
1723                             <child>\n\
1724                               <object class=\"GtkLabel\" id=\"label_28:rack_label\">\n\
1725                                 <property name=\"visible\">True</property>\n\
1726                                 <property name=\"can_focus\">False</property>\n\
1727                                 <property name=\"label\" translatable=\"yes\">High</property>\n\
1728                                 <property name=\"xalign\">1</property>\n\
1729                               </object>\n\
1730                               <packing>\n\
1731                                 <property name=\"left_attach\">2</property>\n\
1732                                 <property name=\"top_attach\">1</property>\n\
1733                               </packing>\n\
1734                             </child>\n\
1735                             <child>\n\
1736                               <object class=\"GtkLabel\" id=\"label_27:rack_label\">\n\
1737                                 <property name=\"visible\">True</property>\n\
1738                                 <property name=\"can_focus\">False</property>\n\
1739                                 <property name=\"label\" translatable=\"yes\">Low</property>\n\
1740                                 <property name=\"xalign\">1</property>\n\
1741                               </object>\n\
1742                               <packing>\n\
1743                                 <property name=\"left_attach\">0</property>\n\
1744                                 <property name=\"top_attach\">1</property>\n\
1745                               </packing>\n\
1746                             </child>\n\
1747                             <child>\n\
1748                               <object class=\"GtkLabel\" id=\"label_26:rack_label\">\n\
1749                                 <property name=\"visible\">True</property>\n\
1750                                 <property name=\"can_focus\">False</property>\n\
1751                                 <property name=\"label\" translatable=\"yes\">Rel</property>\n\
1752                                 <property name=\"xalign\">1</property>\n\
1753                               </object>\n\
1754                               <packing>\n\
1755                                 <property name=\"left_attach\">2</property>\n\
1756                                 <property name=\"top_attach\">0</property>\n\
1757                               </packing>\n\
1758                             </child>\n\
1759                             <child>\n\
1760                               <object class=\"GxSmallKnob\" id=\"gxsmallknob15\">\n\
1761                                 <property name=\"visible\">True</property>\n\
1762                                 <property name=\"can_focus\">True</property>\n\
1763                                 <property name=\"receives_default\">True</property>\n\
1764                                 <property name=\"var_id\">mbc.crossover_b3_b4</property>\n\
1765                               </object>\n\
1766                               <packing>\n\
1767                                 <property name=\"left_attach\">1</property>\n\
1768                                 <property name=\"top_attach\">1</property>\n\
1769                               </packing>\n\
1770                             </child>\n\
1771                             <child>\n\
1772                               <object class=\"GxSmallKnob\" id=\"gxsmallknob16\">\n\
1773                                 <property name=\"visible\">True</property>\n\
1774                                 <property name=\"can_focus\">True</property>\n\
1775                                 <property name=\"receives_default\">True</property>\n\
1776                                 <property name=\"var_id\">mbc.Release4</property>\n\
1777                               </object>\n\
1778                               <packing>\n\
1779                                 <property name=\"left_attach\">3</property>\n\
1780                                 <property name=\"top_attach\">0</property>\n\
1781                               </packing>\n\
1782                             </child>\n\
1783                           </object>\n\
1784                           <packing>\n\
1785                             <property name=\"expand\">True</property>\n\
1786                             <property name=\"fill\">True</property>\n\
1787                             <property name=\"position\">1</property>\n\
1788                           </packing>\n\
1789                         </child>\n\
1790                       </object>\n\
1791                       <packing>\n\
1792                         <property name=\"position\">3</property>\n\
1793                       </packing>\n\
1794                     </child>\n\
1795                     <child type=\"tab\">\n\
1796                       <object class=\"GtkLabel\" id=\"label4\">\n\
1797                         <property name=\"visible\">True</property>\n\
1798                         <property name=\"can_focus\">False</property>\n\
1799                         <property name=\"label\" translatable=\"yes\">Band 4</property>\n\
1800                       </object>\n\
1801                       <packing>\n\
1802                         <property name=\"position\">3</property>\n\
1803                         <property name=\"tab_fill\">False</property>\n\
1804                       </packing>\n\
1805                     </child>\n\
1806                     <child>\n\
1807                       <object class=\"GtkBox\" id=\"hbox11\">\n\
1808                         <property name=\"visible\">True</property>\n\
1809                         <property name=\"can_focus\">False</property>\n\
1810                         <child>\n\
1811                           <object class=\"GtkBox\" id=\"vbox19\">\n\
1812                             <property name=\"visible\">True</property>\n\
1813                             <property name=\"can_focus\">False</property>\n\
1814                             <property name=\"orientation\">vertical</property>\n\
1815                             <property name=\"spacing\">4</property>\n\
1816                             <child>\n\
1817                               <object class=\"GtkBox\" id=\"hbox12\">\n\
1818                                 <property name=\"visible\">True</property>\n\
1819                                 <property name=\"can_focus\">False</property>\n\
1820                                 <property name=\"spacing\">15</property>\n\
1821                                 <child>\n\
1822                                   <object class=\"GtkBox\" id=\"vbox20\">\n\
1823                                     <property name=\"visible\">True</property>\n\
1824                                     <property name=\"can_focus\">False</property>\n\
1825                                     <property name=\"orientation\">vertical</property>\n\
1826                                     <child>\n\
1827                                       <object class=\"GtkLabel\" id=\"label_29:rack_label\">\n\
1828                                         <property name=\"visible\">True</property>\n\
1829                                         <property name=\"can_focus\">False</property>\n\
1830                                         <property name=\"label\" translatable=\"yes\">Ratio</property>\n\
1831                                       </object>\n\
1832                                       <packing>\n\
1833                                         <property name=\"expand\">False</property>\n\
1834                                         <property name=\"fill\">False</property>\n\
1835                                         <property name=\"position\">0</property>\n\
1836                                       </packing>\n\
1837                                     </child>\n\
1838                                     <child>\n\
1839                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob13\">\n\
1840                                         <property name=\"visible\">True</property>\n\
1841                                         <property name=\"can_focus\">True</property>\n\
1842                                         <property name=\"receives_default\">True</property>\n\
1843                                         <property name=\"var_id\">mbc.Ratio5</property>\n\
1844                                       </object>\n\
1845                                       <packing>\n\
1846                                         <property name=\"expand\">True</property>\n\
1847                                         <property name=\"fill\">True</property>\n\
1848                                         <property name=\"position\">1</property>\n\
1849                                       </packing>\n\
1850                                     </child>\n\
1851                                   </object>\n\
1852                                   <packing>\n\
1853                                     <property name=\"expand\">True</property>\n\
1854                                     <property name=\"fill\">True</property>\n\
1855                                     <property name=\"position\">0</property>\n\
1856                                   </packing>\n\
1857                                 </child>\n\
1858                                 <child>\n\
1859                                   <object class=\"GtkBox\" id=\"vbox21\">\n\
1860                                     <property name=\"visible\">True</property>\n\
1861                                     <property name=\"can_focus\">False</property>\n\
1862                                     <property name=\"orientation\">vertical</property>\n\
1863                                     <child>\n\
1864                                       <object class=\"GtkLabel\" id=\"label_30:rack_label\">\n\
1865                                         <property name=\"visible\">True</property>\n\
1866                                         <property name=\"can_focus\">False</property>\n\
1867                                         <property name=\"label\" translatable=\"yes\">Makeup</property>\n\
1868                                       </object>\n\
1869                                       <packing>\n\
1870                                         <property name=\"expand\">False</property>\n\
1871                                         <property name=\"fill\">False</property>\n\
1872                                         <property name=\"position\">0</property>\n\
1873                                       </packing>\n\
1874                                     </child>\n\
1875                                     <child>\n\
1876                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob14\">\n\
1877                                         <property name=\"visible\">True</property>\n\
1878                                         <property name=\"can_focus\">True</property>\n\
1879                                         <property name=\"receives_default\">True</property>\n\
1880                                         <property name=\"var_id\">mbc.Makeup5</property>\n\
1881                                       </object>\n\
1882                                       <packing>\n\
1883                                         <property name=\"expand\">True</property>\n\
1884                                         <property name=\"fill\">True</property>\n\
1885                                         <property name=\"position\">1</property>\n\
1886                                       </packing>\n\
1887                                     </child>\n\
1888                                   </object>\n\
1889                                   <packing>\n\
1890                                     <property name=\"expand\">True</property>\n\
1891                                     <property name=\"fill\">True</property>\n\
1892                                     <property name=\"position\">1</property>\n\
1893                                   </packing>\n\
1894                                 </child>\n\
1895                                 <child>\n\
1896                                   <object class=\"GtkBox\" id=\"vbox22\">\n\
1897                                     <property name=\"visible\">True</property>\n\
1898                                     <property name=\"can_focus\">False</property>\n\
1899                                     <property name=\"orientation\">vertical</property>\n\
1900                                     <child>\n\
1901                                       <object class=\"GtkLabel\" id=\"label_31:rack_label\">\n\
1902                                         <property name=\"visible\">True</property>\n\
1903                                         <property name=\"can_focus\">False</property>\n\
1904                                         <property name=\"label\" translatable=\"yes\">Anticlip</property>\n\
1905                                       </object>\n\
1906                                       <packing>\n\
1907                                         <property name=\"expand\">False</property>\n\
1908                                         <property name=\"fill\">False</property>\n\
1909                                         <property name=\"position\">0</property>\n\
1910                                       </packing>\n\
1911                                     </child>\n\
1912                                     <child>\n\
1913                                       <object class=\"GxSmallKnobR\" id=\"gxmediumknob15\">\n\
1914                                         <property name=\"visible\">True</property>\n\
1915                                         <property name=\"can_focus\">True</property>\n\
1916                                         <property name=\"receives_default\">True</property>\n\
1917                                         <property name=\"var_id\">mbc.Makeup-Threshold5</property>\n\
1918                                       </object>\n\
1919                                       <packing>\n\
1920                                         <property name=\"expand\">True</property>\n\
1921                                         <property name=\"fill\">True</property>\n\
1922                                         <property name=\"position\">1</property>\n\
1923                                       </packing>\n\
1924                                     </child>\n\
1925                                   </object>\n\
1926                                   <packing>\n\
1927                                     <property name=\"expand\">True</property>\n\
1928                                     <property name=\"fill\">True</property>\n\
1929                                     <property name=\"position\">2</property>\n\
1930                                   </packing>\n\
1931                                 </child>\n\
1932                               </object>\n\
1933                               <packing>\n\
1934                                 <property name=\"expand\">True</property>\n\
1935                                 <property name=\"fill\">True</property>\n\
1936                                 <property name=\"position\">0</property>\n\
1937                               </packing>\n\
1938                             </child>\n\
1939                             <child>\n\
1940                               <object class=\"GxSelector\" id=\"gxselector5\">\n\
1941                                 <property name=\"visible\">True</property>\n\
1942                                 <property name=\"can_focus\">True</property>\n\
1943                                 <property name=\"receives_default\">True</property>\n\
1944                                 <property name=\"var_id\">mbc.Mode5</property>\n\
1945                                 <property name=\"value_position\">right</property>\n\
1946                               </object>\n\
1947                               <packing>\n\
1948                                 <property name=\"expand\">True</property>\n\
1949                                 <property name=\"fill\">True</property>\n\
1950                                 <property name=\"position\">1</property>\n\
1951                               </packing>\n\
1952                             </child>\n\
1953                           </object>\n\
1954                           <packing>\n\
1955                             <property name=\"expand\">False</property>\n\
1956                             <property name=\"fill\">True</property>\n\
1957                             <property name=\"position\">0</property>\n\
1958                           </packing>\n\
1959                         </child>\n\
1960                         <child>\n\
1961                           <object class=\"GtkGrid\" id=\"table5\">\n\
1962                             <property name=\"visible\">True</property>\n\
1963                             <property name=\"can_focus\">False</property>\n\
1964                             <property name=\"halign\">center</property>\n\
1965                             <property name=\"row_spacing\">4</property>\n\
1966                             <property name=\"column_homogeneous\">True</property>\n\
1967                             <child>\n\
1968                               <object class=\"GxSmallKnob\" id=\"gxsmallknob17\">\n\
1969                                 <property name=\"visible\">True</property>\n\
1970                                 <property name=\"can_focus\">True</property>\n\
1971                                 <property name=\"receives_default\">True</property>\n\
1972                                 <property name=\"var_id\">mbc.Attack5</property>\n\
1973                               </object>\n\
1974                               <packing>\n\
1975                                 <property name=\"left_attach\">1</property>\n\
1976                                 <property name=\"top_attach\">0</property>\n\
1977                               </packing>\n\
1978                             </child>\n\
1979                             <child>\n\
1980                               <object class=\"GtkLabel\" id=\"label_32:rack_label\">\n\
1981                                 <property name=\"visible\">True</property>\n\
1982                                 <property name=\"can_focus\">False</property>\n\
1983                                 <property name=\"label\" translatable=\"yes\">Att</property>\n\
1984                                 <property name=\"xalign\">1</property>\n\
1985                               </object>\n\
1986                               <packing>\n\
1987                                 <property name=\"left_attach\">0</property>\n\
1988                                 <property name=\"top_attach\">0</property>\n\
1989                               </packing>\n\
1990                             </child>\n\
1991                             <child>\n\
1992                               <object class=\"GtkLabel\" id=\"label_34:rack_label\">\n\
1993                                 <property name=\"visible\">True</property>\n\
1994                                 <property name=\"can_focus\">False</property>\n\
1995                                 <property name=\"label\" translatable=\"yes\">Low</property>\n\
1996                                 <property name=\"xalign\">1</property>\n\
1997                               </object>\n\
1998                               <packing>\n\
1999                                 <property name=\"left_attach\">0</property>\n\
2000                                 <property name=\"top_attach\">1</property>\n\
2001                               </packing>\n\
2002                             </child>\n\
2003                             <child>\n\
2004                               <object class=\"GtkLabel\" id=\"label_33:rack_label\">\n\
2005                                 <property name=\"visible\">True</property>\n\
2006                                 <property name=\"can_focus\">False</property>\n\
2007                                 <property name=\"label\" translatable=\"yes\">Rel</property>\n\
2008                                 <property name=\"xalign\">1</property>\n\
2009                               </object>\n\
2010                               <packing>\n\
2011                                 <property name=\"left_attach\">2</property>\n\
2012                                 <property name=\"top_attach\">0</property>\n\
2013                               </packing>\n\
2014                             </child>\n\
2015                             <child>\n\
2016                               <object class=\"GxSmallKnob\" id=\"gxsmallknob19\">\n\
2017                                 <property name=\"visible\">True</property>\n\
2018                                 <property name=\"can_focus\">True</property>\n\
2019                                 <property name=\"receives_default\">True</property>\n\
2020                                 <property name=\"var_id\">mbc.crossover_b4_b5</property>\n\
2021                               </object>\n\
2022                               <packing>\n\
2023                                 <property name=\"left_attach\">1</property>\n\
2024                                 <property name=\"top_attach\">1</property>\n\
2025                               </packing>\n\
2026                             </child>\n\
2027                             <child>\n\
2028                               <object class=\"GxSmallKnob\" id=\"gxsmallknob20\">\n\
2029                                 <property name=\"visible\">True</property>\n\
2030                                 <property name=\"can_focus\">True</property>\n\
2031                                 <property name=\"receives_default\">True</property>\n\
2032                                 <property name=\"var_id\">mbc.Release5</property>\n\
2033                               </object>\n\
2034                               <packing>\n\
2035                                 <property name=\"left_attach\">3</property>\n\
2036                                 <property name=\"top_attach\">0</property>\n\
2037                               </packing>\n\
2038                             </child>\n\
2039                             <child>\n\
2040                               <object class=\"GtkLabel\" id=\"label_35:rack_label\">\n\
2041                                 <property name=\"can_focus\">False</property>\n\
2042                                 <property name=\"label\" translatable=\"yes\">High</property>\n\
2043                                 <property name=\"xalign\">1</property>\n\
2044                               </object>\n\
2045                               <packing>\n\
2046                                 <property name=\"left_attach\">2</property>\n\
2047                                 <property name=\"top_attach\">1</property>\n\
2048                               </packing>\n\
2049                             </child>\n\
2050                             <child>\n\
2051                               <placeholder/>\n\
2052                             </child>\n\
2053                           </object>\n\
2054                           <packing>\n\
2055                             <property name=\"expand\">True</property>\n\
2056                             <property name=\"fill\">True</property>\n\
2057                             <property name=\"position\">1</property>\n\
2058                           </packing>\n\
2059                         </child>\n\
2060                       </object>\n\
2061                       <packing>\n\
2062                         <property name=\"position\">4</property>\n\
2063                       </packing>\n\
2064                     </child>\n\
2065                     <child type=\"tab\">\n\
2066                       <object class=\"GtkLabel\" id=\"label6\">\n\
2067                         <property name=\"visible\">True</property>\n\
2068                         <property name=\"can_focus\">False</property>\n\
2069                         <property name=\"label\" translatable=\"yes\">Band 5</property>\n\
2070                       </object>\n\
2071                       <packing>\n\
2072                         <property name=\"position\">4</property>\n\
2073                         <property name=\"tab_fill\">False</property>\n\
2074                       </packing>\n\
2075                     </child>\n\
2076                     <style>\n\
2077                       <class name=\"tab_rack\"/>\n\
2078                     </style>\n\
2079                   </object>\n\
2080                   <packing>\n\
2081                     <property name=\"expand\">True</property>\n\
2082                     <property name=\"fill\">True</property>\n\
2083                     <property name=\"position\">0</property>\n\
2084                   </packing>\n\
2085                 </child>\n\
2086                 <child>\n\
2087                   <object class=\"GtkBox\" id=\"vbox2\">\n\
2088                     <property name=\"visible\">True</property>\n\
2089                     <property name=\"can_focus\">False</property>\n\
2090                     <property name=\"margin_bottom\">4</property>\n\
2091                     <property name=\"orientation\">vertical</property>\n\
2092                     <child>\n\
2093                       <object class=\"GtkLabel\" id=\"label5:rack_label\">\n\
2094                         <property name=\"visible\">True</property>\n\
2095                         <property name=\"can_focus\">False</property>\n\
2096                         <property name=\"label\" translatable=\"yes\">Levels</property>\n\
2097                         <property name=\"xalign\">0</property>\n\
2098                       </object>\n\
2099                       <packing>\n\
2100                         <property name=\"expand\">False</property>\n\
2101                         <property name=\"fill\">False</property>\n\
2102                         <property name=\"position\">0</property>\n\
2103                       </packing>\n\
2104                     </child>\n\
2105                     <child>\n\
2106                       <object class=\"GtkBox\" id=\"hbox3\">\n\
2107                         <property name=\"visible\">True</property>\n\
2108                         <property name=\"can_focus\">False</property>\n\
2109                         <child>\n\
2110                           <object class=\"GxFastMeter\" id=\"gxfastmeter1\">\n\
2111                             <property name=\"visible\">True</property>\n\
2112                             <property name=\"can_focus\">False</property>\n\
2113                             <property name=\"orientation\">vertical</property>\n\
2114                             <property name=\"hold\">0</property>\n\
2115                             <property name=\"dimen\">0</property>\n\
2116                             <property name=\"var_id\">mbc.v1</property>\n\
2117                             <property name=\"falloff\">True</property>\n\
2118                           </object>\n\
2119                           <packing>\n\
2120                             <property name=\"expand\">True</property>\n\
2121                             <property name=\"fill\">True</property>\n\
2122                             <property name=\"position\">0</property>\n\
2123                           </packing>\n\
2124                         </child>\n\
2125                         <child>\n\
2126                           <object class=\"GxFastMeter\" id=\"gxfastmeter2\">\n\
2127                             <property name=\"visible\">True</property>\n\
2128                             <property name=\"can_focus\">False</property>\n\
2129                             <property name=\"orientation\">vertical</property>\n\
2130                             <property name=\"hold\">0</property>\n\
2131                             <property name=\"dimen\">0</property>\n\
2132                             <property name=\"var_id\">mbc.v2</property>\n\
2133                             <property name=\"falloff\">True</property>\n\
2134                           </object>\n\
2135                           <packing>\n\
2136                             <property name=\"expand\">True</property>\n\
2137                             <property name=\"fill\">True</property>\n\
2138                             <property name=\"position\">1</property>\n\
2139                           </packing>\n\
2140                         </child>\n\
2141                         <child>\n\
2142                           <object class=\"GxFastMeter\" id=\"gxfastmeter3\">\n\
2143                             <property name=\"visible\">True</property>\n\
2144                             <property name=\"can_focus\">False</property>\n\
2145                             <property name=\"orientation\">vertical</property>\n\
2146                             <property name=\"hold\">0</property>\n\
2147                             <property name=\"dimen\">0</property>\n\
2148                             <property name=\"var_id\">mbc.v3</property>\n\
2149                             <property name=\"falloff\">True</property>\n\
2150                           </object>\n\
2151                           <packing>\n\
2152                             <property name=\"expand\">True</property>\n\
2153                             <property name=\"fill\">True</property>\n\
2154                             <property name=\"position\">2</property>\n\
2155                           </packing>\n\
2156                         </child>\n\
2157                         <child>\n\
2158                           <object class=\"GxFastMeter\" id=\"gxfastmeter4\">\n\
2159                             <property name=\"visible\">True</property>\n\
2160                             <property name=\"can_focus\">False</property>\n\
2161                             <property name=\"orientation\">vertical</property>\n\
2162                             <property name=\"hold\">0</property>\n\
2163                             <property name=\"dimen\">0</property>\n\
2164                             <property name=\"var_id\">mbc.v4</property>\n\
2165                             <property name=\"falloff\">True</property>\n\
2166                           </object>\n\
2167                           <packing>\n\
2168                             <property name=\"expand\">True</property>\n\
2169                             <property name=\"fill\">True</property>\n\
2170                             <property name=\"position\">3</property>\n\
2171                           </packing>\n\
2172                         </child>\n\
2173                         <child>\n\
2174                           <object class=\"GxFastMeter\" id=\"gxfastmeter5\">\n\
2175                             <property name=\"visible\">True</property>\n\
2176                             <property name=\"can_focus\">False</property>\n\
2177                             <property name=\"orientation\">vertical</property>\n\
2178                             <property name=\"hold\">0</property>\n\
2179                             <property name=\"dimen\">0</property>\n\
2180                             <property name=\"var_id\">mbc.v5</property>\n\
2181                             <property name=\"falloff\">True</property>\n\
2182                           </object>\n\
2183                           <packing>\n\
2184                             <property name=\"expand\">True</property>\n\
2185                             <property name=\"fill\">True</property>\n\
2186                             <property name=\"position\">4</property>\n\
2187                           </packing>\n\
2188                         </child>\n\
2189                       </object>\n\
2190                       <packing>\n\
2191                         <property name=\"expand\">True</property>\n\
2192                         <property name=\"fill\">True</property>\n\
2193                         <property name=\"position\">1</property>\n\
2194                       </packing>\n\
2195                     </child>\n\
2196                   </object>\n\
2197                   <packing>\n\
2198                     <property name=\"expand\">True</property>\n\
2199                     <property name=\"fill\">True</property>\n\
2200                     <property name=\"position\">1</property>\n\
2201                   </packing>\n\
2202                 </child>\n\
2203               </object>\n\
2204               <packing>\n\
2205                 <property name=\"expand\">True</property>\n\
2206                 <property name=\"fill\">True</property>\n\
2207                 <property name=\"position\">0</property>\n\
2208               </packing>\n\
2209             </child>\n\
2210           </object>\n\
2211           <packing>\n\
2212             <property name=\"expand\">True</property>\n\
2213             <property name=\"fill\">True</property>\n\
2214             <property name=\"position\">0</property>\n\
2215           </packing>\n\
2216         </child>\n\
2217         <child>\n\
2218           <object class=\"GtkBox\" id=\"minibox\">\n\
2219             <property name=\"visible\">True</property>\n\
2220             <property name=\"can_focus\">False</property>\n\
2221             <property name=\"spacing\">4</property>\n\
2222             <child>\n\
2223               <placeholder/>\n\
2224             </child>\n\
2225           </object>\n\
2226           <packing>\n\
2227             <property name=\"expand\">True</property>\n\
2228             <property name=\"fill\">True</property>\n\
2229             <property name=\"position\">1</property>\n\
2230           </packing>\n\
2231         </child>\n\
2232       </object>\n\
2233     </child>\n\
2234   </object>\n\
2235 </interface>\n\
2236 ";
2237 
load_ui_f(const UiBuilder & b,int form)2238 inline int Dsp::load_ui_f(const UiBuilder& b, int form)
2239 {
2240     if (form & UI_FORM_GLADE) {
2241         b.load_glade(glade_def);
2242         return 0;
2243     }
2244     if (form & UI_FORM_STACK) {
2245 #define PARAM(p) ("mbc" "." p)
2246 
2247 b.openHorizontalhideBox("");
2248 b.closeBox();
2249 
2250 b.openHorizontalBox("");
2251 b.openVerticalBox("");
2252 
2253 b.openTabBox("");
2254 
2255 b.openHorizontalBox(N_("Band 1"));
2256 b.openpaintampBox("");
2257 b.openVerticalBox("");
2258 b.openHorizontalBox("");
2259 b.set_next_flags(UI_NUM_RIGHT);
2260 b.create_small_rackknob(PARAM("Makeup1"), N_("Makeup (db)"));
2261 b.set_next_flags(UI_NUM_RIGHT);
2262 b.create_small_rackknob(PARAM("Makeup-Threshold1"), N_("Anticlip (db)"));
2263 b.set_next_flags(UI_NUM_SHOW_ALWAYS|UI_NUM_RIGHT);
2264 b.create_small_rackknob(PARAM("crossover_b1_b2"), N_("Low Shelf (Hz)"));
2265 b.closeBox();
2266 b.openHorizontalBox("");
2267 b.create_selector_no_caption(PARAM("Mode1"));
2268 b.create_small_rackknob(PARAM("Ratio1"), N_("Ratio"));
2269 b.create_small_rackknob(PARAM("Attack1"), N_("Attack"));
2270 b.create_small_rackknob(PARAM("Release1"), N_("Release"));
2271 b.closeBox();
2272 b.closeBox();
2273 b.closeBox();
2274 b.closeBox();
2275 
2276 b.openHorizontalBox(N_("Band 2"));
2277 b.openpaintampBox("");
2278 b.openVerticalBox("");
2279 b.openHorizontalBox("");
2280 b.set_next_flags(UI_NUM_RIGHT);
2281 b.create_small_rackknob(PARAM("Makeup2"),  N_("Makeup (db)"));
2282 b.set_next_flags(UI_NUM_RIGHT);
2283 b.create_small_rackknob(PARAM("Makeup-Threshold2"), N_("Anticlip (db)"));
2284 b.set_next_flags(UI_NUM_SHOW_ALWAYS|UI_NUM_RIGHT);
2285 b.create_small_rackknob(PARAM("crossover_b1_b2"), N_("Low (hz)"));
2286 b.set_next_flags(UI_NUM_SHOW_ALWAYS|UI_NUM_RIGHT);
2287 b.create_small_rackknob(PARAM("crossover_b2_b3"), N_("High (hz)"));
2288 b.closeBox();
2289 b.openHorizontalBox("");
2290 b.create_selector_no_caption(PARAM("Mode2"));
2291 b.create_small_rackknob(PARAM("Ratio2"), N_("Ratio"));
2292 b.create_small_rackknob(PARAM("Attack2"), N_("Attack"));
2293 b.create_small_rackknob(PARAM("Release2"), N_("Release"));
2294 b.closeBox();
2295 b.closeBox();
2296 b.closeBox();
2297 b.closeBox();
2298 
2299 b.openHorizontalBox(N_("Band 3"));
2300 b.openpaintampBox("");
2301 b.openVerticalBox("");
2302 b.openHorizontalBox("");
2303 b.set_next_flags(UI_NUM_RIGHT);
2304 b.create_small_rackknob(PARAM("Makeup3"), N_("Makeup (db)"));
2305 b.set_next_flags(UI_NUM_RIGHT);
2306 b.create_small_rackknob(PARAM("Makeup-Threshold3"), N_("Anticlip (db)"));
2307 b.set_next_flags(UI_NUM_SHOW_ALWAYS|UI_NUM_RIGHT);
2308 b.create_small_rackknob(PARAM("crossover_b2_b3"), N_("Low (hz)"));
2309 b.set_next_flags(UI_NUM_SHOW_ALWAYS|UI_NUM_RIGHT);
2310 b.create_small_rackknob(PARAM("crossover_b3_b4"), N_("High (hz)"));
2311 b.closeBox();
2312 b.openHorizontalBox("");
2313 b.create_selector_no_caption(PARAM("Mode3"));
2314 b.create_small_rackknob(PARAM("Ratio3"), N_("Ratio"));
2315 b.create_small_rackknob(PARAM("Attack3"), N_("Attack"));
2316 b.create_small_rackknob(PARAM("Release3"), N_("Release"));
2317 b.closeBox();
2318 b.closeBox();
2319 b.closeBox();
2320 b.closeBox();
2321 
2322 b.openHorizontalBox(N_("Band 4"));
2323 b.openpaintampBox("");
2324 b.openVerticalBox("");
2325 b.openHorizontalBox("");
2326 b.set_next_flags(UI_NUM_RIGHT);
2327 b.create_small_rackknob(PARAM("Makeup4"), N_("Makeup (db)"));
2328 b.set_next_flags(UI_NUM_RIGHT);
2329 b.create_small_rackknob(PARAM("Makeup-Threshold4"), N_("Anticlip (db)"));
2330 b.set_next_flags(UI_NUM_RIGHT);
2331 b.set_next_flags(UI_NUM_SHOW_ALWAYS|UI_NUM_RIGHT);
2332 b.create_small_rackknob(PARAM("crossover_b3_b4"), N_("Low (hz)"));
2333 b.set_next_flags(UI_NUM_SHOW_ALWAYS|UI_NUM_RIGHT);
2334 b.create_small_rackknob(PARAM("crossover_b4_b5"), N_("High (hz)"));
2335 b.closeBox();
2336 b.openHorizontalBox("");
2337 b.create_selector_no_caption(PARAM("Mode4"));
2338 b.create_small_rackknob(PARAM("Ratio4"), N_("Ratio"));
2339 b.create_small_rackknob(PARAM("Attack4"), N_("Attack"));
2340 b.create_small_rackknob(PARAM("Release4"), N_("Release"));
2341 b.closeBox();
2342 b.closeBox();
2343 b.closeBox();
2344 b.closeBox();
2345 
2346 b.openHorizontalBox(N_("Band 5"));
2347 b.openpaintampBox("");
2348 b.openVerticalBox("");
2349 b.openHorizontalBox("");
2350 b.set_next_flags(UI_NUM_RIGHT);
2351 b.create_small_rackknob(PARAM("Makeup5"), N_("Makeup (db)"));
2352 b.set_next_flags(UI_NUM_RIGHT);
2353 b.create_small_rackknob(PARAM("Makeup-Threshold5"), N_("Anticlip (db)"));
2354 b.set_next_flags(UI_NUM_SHOW_ALWAYS|UI_NUM_RIGHT);
2355 b.create_small_rackknob(PARAM("crossover_b4_b5"), N_("High Shelf (hz)"));
2356 b.closeBox();
2357 b.openHorizontalBox("");
2358 b.create_selector_no_caption(PARAM("Mode5"));
2359 b.create_small_rackknob(PARAM("Ratio5"), N_("Ratio"));
2360 b.create_small_rackknob(PARAM("Attack5"), N_("Attack"));
2361 b.create_small_rackknob(PARAM("Release5"), N_("Release"));
2362 b.closeBox();
2363 b.closeBox();
2364 b.closeBox();
2365 b.closeBox();
2366 
2367 b.closeBox();
2368 b.closeBox();
2369 b.openVerticalBox2("Analyze");
2370 b.create_simple_meter(PARAM("v1"));
2371 b.create_simple_meter(PARAM("v2"));
2372 b.create_simple_meter(PARAM("v3"));
2373 b.create_simple_meter(PARAM("v4"));
2374 b.create_simple_meter(PARAM("v5"));
2375 b.closeBox();
2376 b.closeBox();
2377 
2378 #undef PARAM
2379         return 0;
2380     }
2381 	return -1;
2382 }
2383 
load_ui_f_static(const UiBuilder & b,int form)2384 int Dsp::load_ui_f_static(const UiBuilder& b, int form)
2385 {
2386 	return static_cast<Dsp*>(b.plugin)->load_ui_f(b, form);
2387 }
plugin()2388 PluginDef *plugin() {
2389 	return new Dsp();
2390 }
2391 
del_instance(PluginDef * p)2392 void Dsp::del_instance(PluginDef *p)
2393 {
2394 	delete static_cast<Dsp*>(p);
2395 }
2396 
2397 } // end namespace mbc
2398 } // end namespace pluginlib
2399