BEAST - Free Software Audio Synthesizer and Tracker  0.9.2
bsebalance.genidl.hh
Go to the documentation of this file.
1 
2 /*-------- begin ../sfi/sfidl generated code --------*/
3 
4 
5 
6 #include <bse/bse-internals.hh>
7 
8 
9 /* enum prototypes */
10 
11 
12 /* choice prototypes */
13 
14 
15 /* record prototypes */
16 
17 
18 /* sequence prototypes */
19 
20 
21 /* class prototypes */
22 namespace Bse {
23 class BalanceBase;
24 class Balance;
25 #define BSE_TYPE_BALANCE BSE_CXX_DECLARED_CLASS_TYPE (Bse, Balance)
26 #define BSE_IS_BALANCE(o) (::Bse::CxxBase::instance_is_a (o, BSE_TYPE_BALANCE))
27 
28 
29 /* enum definitions */
30 
31 
32 /* sequence definitions */
33 
34 
35 /* record definitions */
36 
37 
38 /* enum declarations */
39 
40 
41 /* sequence type declarations */
42 
43 
44 /* record type declarations */
45 
46 
47 /* procedure prototypes */
48 
49 
50 /* class definitions */
51 BSE_CXX_DECLARE_CLASS (Balance);
52 class BalanceBase : public ::Bse::Effect {
53  template<bool> static inline const unsigned char* inlined_pixstream();
54 public:
55  static inline const unsigned char* pixstream () { return inlined_pixstream<true>(); }
56  static void class_init (::Bse::CxxBaseClass *klass);
57  static inline const char* options () { return ""; }
58  static inline const char* category () { static const char *c = NULL;
59  return c ? c : c = sfi_category_concat ("/Modules", ("/Spatial/Balance")); }
60  static inline const char* i18n_category () { static const char *c = NULL;
61  return c ? c : c = sfi_category_concat ("/Modules", _("/Spatial/Balance")); }
62  static inline const char* blurb () { return _("BseBalance is a stereo panning module with two audio and two control inputs, each of which can be seperately level adjusted. The resulting output balance is controlled by a balance adjustment and the sum of the control inputs. To avoid aliasing artefacts for rapid balance changes, the control signal is preprocessed by a simple lowpass filter with adjustable cutoff frequency."); }
63  static inline const char* authors () { return "Tim Janik"; }
64  static inline const char* license () { return _("GNU Lesser General Public License"); }
65  static inline const char* type_name () { return "BseBalance"; }
66 public:
67  enum {
68  ICHANNEL_AUDIO_IN1,
69  ICHANNEL_AUDIO_IN2,
70  ICHANNEL_CTRL_IN1,
71  ICHANNEL_CTRL_IN2,
72  N_ICHANNELS
73  };
74 public:
75  enum {
76  OCHANNEL_LEFT_OUT,
77  OCHANNEL_MIX_OUT,
78  OCHANNEL_RIGHT_OUT,
79  N_OCHANNELS
80  };
81 protected:
82  enum BalancePropertyID {
83  PROP_ALEVEL1 = 1,
84  PROP_ALEVEL2,
85  PROP_ABALANCE,
86  PROP_CLEVEL1,
87  PROP_CLEVEL2,
88  PROP_CBALANCE,
89  PROP_OSTRENGTH,
90  PROP_LOWPASS,
91  PROP_OBALANCE,
92  };
93 public:
94  /* "transport" structure to configure synthesis modules from properties */
96  typedef BalancePropertyID IDType;
97  Sfi::Real alevel1;
98  Sfi::Real alevel2;
99  Sfi::Real abalance;
100  Sfi::Real clevel1;
101  Sfi::Real clevel2;
102  Sfi::Real cbalance;
103  Sfi::Real ostrength;
104  Sfi::Real lowpass;
105  Sfi::Real obalance;
106  explicit BalanceProperties (BalanceBase *p) :
107  alevel1 (p->alevel1),
108  alevel2 (p->alevel2),
109  abalance (p->abalance),
110  clevel1 (p->clevel1),
111  clevel2 (p->clevel2),
112  cbalance (p->cbalance),
113  ostrength (p->ostrength),
114  lowpass (p->lowpass),
115  obalance (p->obalance)
116  {
117  }
118  };
119 protected:
120  typedef void AutoUpdateCategory;
121 protected:
122  Sfi::Real alevel1;
123  Sfi::Real alevel2;
124  Sfi::Real abalance;
125  Sfi::Real clevel1;
126  Sfi::Real clevel2;
127  Sfi::Real cbalance;
128  Sfi::Real ostrength;
129  Sfi::Real lowpass;
130  Sfi::Real obalance;
131 public:
132  void get_property (BalancePropertyID prop_id, ::Bse::Value &value, GParamSpec *pspec)
133  {
134  switch (prop_id) {
135  case PROP_ALEVEL1:
136  sfi_value_set_real (&value, alevel1);
137  break;
138  case PROP_ALEVEL2:
139  sfi_value_set_real (&value, alevel2);
140  break;
141  case PROP_ABALANCE:
142  sfi_value_set_real (&value, abalance);
143  break;
144  case PROP_CLEVEL1:
145  sfi_value_set_real (&value, clevel1);
146  break;
147  case PROP_CLEVEL2:
148  sfi_value_set_real (&value, clevel2);
149  break;
150  case PROP_CBALANCE:
151  sfi_value_set_real (&value, cbalance);
152  break;
153  case PROP_OSTRENGTH:
154  sfi_value_set_real (&value, ostrength);
155  break;
156  case PROP_LOWPASS:
157  sfi_value_set_real (&value, lowpass);
158  break;
159  case PROP_OBALANCE:
160  sfi_value_set_real (&value, obalance);
161  break;
162  };
163  }
164  void set_property (BalancePropertyID prop_id, const ::Bse::Value &value, GParamSpec *pspec)
165  {
166  switch (prop_id) {
167  case PROP_ALEVEL1:
168  alevel1 = sfi_value_get_real (&value);
169  break;
170  case PROP_ALEVEL2:
171  alevel2 = sfi_value_get_real (&value);
172  break;
173  case PROP_ABALANCE:
174  abalance = sfi_value_get_real (&value);
175  break;
176  case PROP_CLEVEL1:
177  clevel1 = sfi_value_get_real (&value);
178  break;
179  case PROP_CLEVEL2:
180  clevel2 = sfi_value_get_real (&value);
181  break;
182  case PROP_CBALANCE:
183  cbalance = sfi_value_get_real (&value);
184  break;
185  case PROP_OSTRENGTH:
186  ostrength = sfi_value_get_real (&value);
187  break;
188  case PROP_LOWPASS:
189  lowpass = sfi_value_get_real (&value);
190  break;
191  case PROP_OBALANCE:
192  obalance = sfi_value_get_real (&value);
193  break;
194  };
195  property_changed (BalancePropertyID (prop_id));
196  update_modules();
197  switch (prop_id) {
198  default: ;
199  };
200  }
201  virtual bool editable_property (BalancePropertyID prop_id, GParamSpec *pspec)
202  {
203  return true;
204  }
205  virtual void get_candidates (BalancePropertyID prop_id, ::Bse::PropertyCandidatesHandle &pch, GParamSpec *pspec)
206  {
207  }
208  void property_updated (BalancePropertyID prop_id, guint64 tick_stamp, double prop_value, GParamSpec *pspec)
209  {
210  bool seen_change = false;
211  switch (prop_id) {
212  default: ;
213  };
214  if (seen_change &&
215  property_changed (BalancePropertyID (prop_id)))
216  update_modules();
217  }
218 private:
219  static struct StaticData {
220  int dummy;
221  } static_data;
222 protected:
223  virtual bool property_changed (BalancePropertyID) { return false; }
224  virtual ~BalanceBase ()
225  {
226  }
227 public:
228 };
229 
230 
231 /* choice implementations */
232 
233 
234 /* record implementations */
235 
236 
237 /* sequence implementations */
238 
239 
240 /* class implementations */
241 void
242 BalanceBase::class_init (::Bse::CxxBaseClass *klass)
243 {
244  klass->set_accessors (::Bse::cxx_get_property_trampoline<BalanceBase, BalancePropertyID>,
245  ::Bse::cxx_set_property_trampoline<BalanceBase, BalancePropertyID>,
246  ::Bse::cxx_editable_property_trampoline<BalanceBase, BalancePropertyID>,
247  ::Bse::cxx_get_candidates_trampoline<BalanceBase, BalancePropertyID>,
248  NULL);
249  klass->add_param (PROP_ALEVEL1, sfidl_pspec_Perc (_("Audio Input"),"/opt/src/beast/plugins/bsebalance.idl",523,"alevel1",_ ( "Input 1 [%]" ) , _ ( "Attenuate the level of audio input 1" ) , 100LL , ":r:w:S:G:"));
250  klass->add_param (PROP_ALEVEL2, sfidl_pspec_Perc (_("Audio Input"),"/opt/src/beast/plugins/bsebalance.idl",524,"alevel2",_ ( "Input 2 [%]" ) , _ ( "Attenuate the level of audio input 2" ) , 100LL , ":r:w:S:G:"));
251  klass->add_param (PROP_ABALANCE, sfidl_pspec_Balance (_("Audio Input"),"/opt/src/beast/plugins/bsebalance.idl",525,"abalance",_ ( "Balance" ) , _ ( "Balance audio input levels" ) , 0LL , ":r:w:G:"));
252  klass->add_param (PROP_CLEVEL1, sfidl_pspec_Perc (_("Control Input"),"/opt/src/beast/plugins/bsebalance.idl",528,"clevel1",_ ( "Input 1 [%]" ) , _ ( "Attenuate the level of control input 1" ) , 100LL , ":r:w:S:G:"));
253  klass->add_param (PROP_CLEVEL2, sfidl_pspec_Perc (_("Control Input"),"/opt/src/beast/plugins/bsebalance.idl",529,"clevel2",_ ( "Input 2 [%]" ) , _ ( "Attenuate the level of control input 2" ) , 100LL , ":r:w:S:G:"));
254  klass->add_param (PROP_CBALANCE, sfidl_pspec_Balance (_("Control Input"),"/opt/src/beast/plugins/bsebalance.idl",530,"cbalance",_ ( "Balance" ) , _ ( "Balance control input levels" ) , 0LL , ":r:w:G:"));
255  klass->add_param (PROP_OSTRENGTH, sfidl_pspec_Perc (_("Output Panning"),"/opt/src/beast/plugins/bsebalance.idl",533,"ostrength",_ ( "Control Strength" ) , _ ( "Adjust how much the control signals affect the output balance" ) , 100LL , ":r:w:S:G:"));
256  klass->add_param (PROP_LOWPASS, sfidl_pspec_SfiReal (_("Output Panning"),"/opt/src/beast/plugins/bsebalance.idl",534,"lowpass",_ ( "Lowpass [Hz]" ) , _ ( "Lowpass filter frequency for the control signal" ) , 100LL , 100LL , 1000LL , 10LL , "scale:" ":r:w:S:G:"));
257  klass->add_param (PROP_OBALANCE, sfidl_pspec_Balance (_("Output Panning"),"/opt/src/beast/plugins/bsebalance.idl",535,"obalance",_ ( "Output Balance" ) , _ ( "Adjust output balance between left and right" ) , 0LL , ":r:w:S:G:"));
258  klass->add_ichannel ("audio_in1", _("Audio In1"), _("First audio input"), ICHANNEL_AUDIO_IN1);
259  klass->add_ichannel ("audio_in2", _("Audio In2"), _("Second audio input"), ICHANNEL_AUDIO_IN2);
260  klass->add_ichannel ("ctrl_in1", _("Ctrl In1"), _("First control input"), ICHANNEL_CTRL_IN1);
261  klass->add_ichannel ("ctrl_in2", _("Ctrl In2"), _("Second control input"), ICHANNEL_CTRL_IN2);
262  klass->add_ochannel ("left_out", _("Left Out"), _("Left audio output"), OCHANNEL_LEFT_OUT);
263  klass->add_ochannel ("mix_out", _("Mix Out"), _("Mixed audio output"), OCHANNEL_MIX_OUT);
264  klass->add_ochannel ("right_out", _("Right Out"), _("Right audio output"), OCHANNEL_RIGHT_OUT);
265 }
266 
267 
268 /* procedure implementations */
269 
270 
271 /* bsebalance.idl type registrations */
272 #define BSE_CXX_REGISTER_ALL_TYPES_FROM_BSEBALANCE_IDL() \
273  BSE_CXX_REGISTER_EFFECT (Balance); \
274  /* bsebalance.idl type registrations done */
275 } // Bse
276 template<bool> const unsigned char*
277 ::Bse::BalanceBase::inlined_pixstream()
278 {
279  /* GdkPixbuf RGBA C-Source image dump 1-byte-run-length-encoded */
280 
281 #ifdef __SUNPRO_C
282 #pragma align 4 (local_pixstream)
283 #endif
284 #ifdef __GNUC__
285 static const guint8 local_pixstream[] __attribute__ ((__aligned__ (4))) =
286 #else
287 static const guint8 local_pixstream[] =
288 #endif
289 { ""
290  /* Pixbuf magic (0x47646b50) */
291  "GdkP"
292  /* length: header (24) + pixel_data (2323) */
293  "\0\0\11+"
294  /* pixdata_type (0x2010002) */
295  "\2\1\0\2"
296  /* rowstride (256) */
297  "\0\0\1\0"
298  /* width (64) */
299  "\0\0\0@"
300  /* height (64) */
301  "\0\0\0@"
302  /* pixel_data: */
303  "\377\0\0\0\0\377\0\0\0\0\377\0\0\0\0\377\0\0\0\0\212\0\0\0\0\1\0\0\0"
304  "\377\262\0\0\0\0\1\0\0\0\377\214\0\0\0\0\202\0\0\0\377\260\0\0\0\0\202"
305  "\0\0\0\377\214\0\0\0\0\203\0\0\0\377\256\0\0\0\0\203\0\0\0\377\214\0"
306  "\0\0\0\204\0\0\0\377\254\0\0\0\0\204\0\0\0\377\214\0\0\0\0\205\0\0\0"
307  "\377\252\0\0\0\0\205\0\0\0\377\214\0\0\0\0\203\0\0\0\377\1\276\32""4"
308  "\377\202\0\0\0\377\250\0\0\0\0\202\0\0\0\377\1l&\226\377\203\0\0\0\377"
309  "\214\0\0\0\0\203\0\0\0\377\2\275\32""6\377\273\33""8\377\202\0\0\0\377"
310  "\246\0\0\0\0\202\0\0\0\377\2l&\226\377j&\230\377\203\0\0\0\377\214\0"
311  "\0\0\0\203\0\0\0\377\3\273\33""8\377\272\33:\377\270\33<\377\202\0\0"
312  "\0\377\244\0\0\0\0\202\0\0\0\377\3l&\225\377k&\227\377i'\231\377\203"
313  "\0\0\0\377\214\0\0\0\0\203\0\0\0\377\4\272\33""9\377\270\33<\377\266"
314  "\33>\377\264\34@\377\202\0\0\0\377\242\0\0\0\0\202\0\0\0\377\4m&\225"
315  "\377k&\227\377i&\231\377g'\233\377\203\0\0\0\377\214\0\0\0\0\205\0\0"
316  "\0\377\3\265\34\77\377\263\34B\377\261\34D\377\202\0\0\0\377\240\0\0"
317  "\0\0\202\0\0\0\377\3m&\224\377k&\226\377j&\230\377\205\0\0\0\377\214"
318  "\0\0\0\0\207\0\0\0\377\2\260\34E\377\256\35H\377\207\0\0\0\377\224\0"
319  "\0\0\0\207\0\0\0\377\2n&\224\377l&\226\377\207\0\0\0\377\214\0\0\0\0"
320  "\220\0\0\0\377\224\0\0\0\0\220\0\0\0\377\214\0\0\0\0\203\0\0\0\377\2"
321  "\264\34@\377\262\34B\377\213\0\0\0\377\224\0\0\0\0\213\0\0\0\377\2d'"
322  "\240\377b(\242\377\203\0\0\0\377\214\0\0\0\0\203\0\0\0\377\4\263\34B"
323  "\377\261\34D\377\257\34F\377\255\35H\377\205\0\0\0\377\202\233\222+\377"
324  "\202\0\0\0\377\224\0\0\0\0\202\0\0\0\377\202\233\222+\377\205\0\0\0\377"
325  "\4f'\235\377d'\237\377b'\241\377`(\243\377\203\0\0\0\377\214\0\0\0\0"
326  "\203\0\0\0\377\6\261\34D\377\260\34F\377\256\35H\377\254\35J\377\252"
327  "\35L\377\250\35N\377\203\0\0\0\377\202\233\222+\377\202\0\0\0\377\224"
328  "\0\0\0\0\202\0\0\0\377\202\233\222+\377\203\0\0\0\377\6h'\232\377f'\235"
329  "\377d'\237\377b'\241\377a(\243\377_(\245\377\203\0\0\0\377\214\0\0\0"
330  "\0\203\0\0\0\377\6\260\34E\377\256\34G\377\254\35J\377\252\35L\377\251"
331  "\35N\377\247\36P\377\203\0\0\0\377\202\233\222+\377\202\0\0\0\377\224"
332  "\0\0\0\0\202\0\0\0\377\202\233\222+\377\203\0\0\0\377\6g'\234\377e'\236"
333  "\377c'\240\377a(\243\377_(\245\377](\247\377\203\0\0\0\377\214\0\0\0"
334  "\0\214\0\0\0\377\202\233\222+\377\202\0\0\0\377\224\0\0\0\0\202\0\0\0"
335  "\377\202\233\222+\377\214\0\0\0\377\214\0\0\0\0\214\0\0\0\377\202\233"
336  "\222+\377\202\0\0\0\377\224\0\0\0\0\202\0\0\0\377\202\233\222+\377\214"
337  "\0\0\0\377\214\0\0\0\0\214\0\0\0\377\202\233\222+\377\202\0\0\0\377\224"
338  "\0\0\0\0\202\0\0\0\377\202\233\222+\377\214\0\0\0\377\214\0\0\0\0\214"
339  "\0\0\0\377\202\233\222+\377\202\0\0\0\377\224\0\0\0\0\202\0\0\0\377\202"
340  "\233\222+\377\214\0\0\0\377\214\0\0\0\0\203\0\0\0\377\6\251\35N\377\247"
341  "\36P\377\245\36R\377\243\36T\377\241\36V\377\240\37Y\377\203\0\0\0\377"
342  "\202\233\222+\377\202\0\0\0\377\224\0\0\0\0\202\0\0\0\377\202\233\222"
343  "+\377\203\0\0\0\377\6_(\244\377^(\247\377\\(\251\377Z)\253\377X)\255"
344  "\377V)\257\377\203\0\0\0\377\214\0\0\0\0\203\0\0\0\377\6\247\35O\377"
345  "\246\36R\377\244\36T\377\242\36V\377\240\37X\377\236\37Z\377\203\0\0"
346  "\0\377\202\233\222+\377\202\0\0\0\377\224\0\0\0\0\202\0\0\0\377\202\233"
347  "\222+\377\203\0\0\0\377\6^(\246\377\\(\250\377Z)\252\377Y)\255\377W)"
348  "\257\377U)\261\377\203\0\0\0\377\214\0\0\0\0\203\0\0\0\377\4\246\36Q"
349  "\377\244\36S\377\242\36U\377\240\36X\377\205\0\0\0\377\202\233\222+\377"
350  "\202\0\0\0\377\224\0\0\0\0\202\0\0\0\377\202\233\222+\377\205\0\0\0\377"
351  "\4Y)\254\377W)\256\377U)\261\377S*\263\377\203\0\0\0\377\214\0\0\0\0"
352  "\203\0\0\0\377\2\245\36S\377\243\36U\377\213\0\0\0\377\224\0\0\0\0\213"
353  "\0\0\0\377\2T*\262\377R*\264\377\203\0\0\0\377\214\0\0\0\0\220\0\0\0"
354  "\377\224\0\0\0\0\220\0\0\0\377\214\0\0\0\0\207\0\0\0\377\2\232\37_\377"
355  "\231\40a\377\207\0\0\0\377\224\0\0\0\0\207\0\0\0\377\2X)\255\377V)\257"
356  "\377\207\0\0\0\377\214\0\0\0\0\205\0\0\0\377\3\235\37\\\377\233\37^\377"
357  "\231\40`\377\202\0\0\0\377\240\0\0\0\0\202\0\0\0\377\3U)\261\377S*\263"
358  "\377Q*\265\377\205\0\0\0\377\214\0\0\0\0\203\0\0\0\377\4\237\37Z\377"
359  "\235\37\\\377\233\37^\377\231\37`\377\202\0\0\0\377\242\0\0\0\0\202\0"
360  "\0\0\377\4R*\265\377P*\267\377N*\271\377L+\273\377\203\0\0\0\377\214"
361  "\0\0\0\0\203\0\0\0\377\3\235\37[\377\234\37]\377\232\37`\377\202\0\0"
362  "\0\377\244\0\0\0\0\202\0\0\0\377\3O*\270\377M+\273\377K+\275\377\203"
363  "\0\0\0\377\214\0\0\0\0\203\0\0\0\377\2\234\37]\377\232\37_\377\202\0"
364  "\0\0\377\246\0\0\0\0\202\0\0\0\377\2K+\274\377I+\276\377\203\0\0\0\377"
365  "\214\0\0\0\0\203\0\0\0\377\1\233\37_\377\202\0\0\0\377\250\0\0\0\0\202"
366  "\0\0\0\377\1H+\300\377\203\0\0\0\377\214\0\0\0\0\205\0\0\0\377\252\0"
367  "\0\0\0\205\0\0\0\377\214\0\0\0\0\204\0\0\0\377\254\0\0\0\0\204\0\0\0"
368  "\377\214\0\0\0\0\203\0\0\0\377\256\0\0\0\0\203\0\0\0\377\214\0\0\0\0"
369  "\202\0\0\0\377\260\0\0\0\0\202\0\0\0\377\214\0\0\0\0\1\0\0\0\377\262"
370  "\0\0\0\0\1\0\0\0\377\377\0\0\0\0\377\0\0\0\0\377\0\0\0\0\220\0\0\0\0"
371  "\262\0\0\0\377\216\0\0\0\0\262\0\0\0\377\216\0\0\0\0\203\0\0\0\377\17"
372  "\205\"x\377\203#{\377\201#}\377\177#\177\377}$\201\377|$\203\377z$\205"
373  "\377x$\210\377v%\212\377t%\214\377r%\216\377q%\220\377o&\222\377m&\225"
374  "\377k&\227\377\204\0\0\0\377\206\321\253\317\377\204\0\0\0\377\15P*\267"
375  "\377N*\271\377L+\274\377J+\276\377H+\300\377F+\302\377E,\304\377C,\306"
376  "\377A,\311\377\77-\313\377=-\315\377;-\317\377:-\321\377\2029-\322\377"
377  "\203\0\0\0\377\216\0\0\0\0\203\0\0\0\377\15\203#z\377\201#|\377\200#"
378  "~\377~#\201\377|$\203\377z$\205\377x$\207\377v%\211\377u%\213\377s%\216"
379  "\377q%\220\377o&\222\377m&\224\377\204\0\0\0\377\212\321\253\317\377"
380  "\204\0\0\0\377\12J+\275\377I+\277\377G+\302\377E,\304\377C,\306\377A"
381  ",\310\377\77,\312\377>-\314\377<-\317\377:-\321\377\2039-\322\377\203"
382  "\0\0\0\377\216\0\0\0\0\203\0\0\0\377\15\202#|\377\200#~\377~#\200\377"
383  "|$\202\377{$\204\377y$\207\377w$\211\377u%\213\377s%\215\377q%\217\377"
384  "p&\221\377n&\224\377l&\226\377\204\0\0\0\377\212\321\253\317\377\204"
385  "\0\0\0\377\11I+\277\377G+\301\377E,\303\377D,\305\377B,\310\377@,\312"
386  "\377>-\314\377<-\316\377:-\320\377\2049-\322\377\203\0\0\0\377\216\0"
387  "\0\0\0\203\0\0\0\377\17\200#}\377\177#\200\377}$\202\377{$\204\377y$"
388  "\206\377w$\210\377u%\212\377t%\215\377r%\217\377p%\221\377n&\223\377"
389  "l&\225\377j&\227\377i'\232\377g'\234\377\204\0\0\0\377\206\321\253\317"
390  "\377\204\0\0\0\377\12K+\274\377I+\276\377H+\301\377F,\303\377D,\305\377"
391  "B,\307\377@,\311\377>-\314\377=-\316\377;-\320\377\2059-\322\377\203"
392  "\0\0\0\377\216\0\0\0\0\262\0\0\0\377\216\0\0\0\0\262\0\0\0\377\377\0"
393  "\0\0\0\377\0\0\0\0\377\0\0\0\0\212\0\0\0\0"};
394 
395 
396 
397  return local_pixstream;
398 }
399 
400 /*-------- end ../sfi/sfidl generated code --------*/
401 
402 
The Bse namespace contains all functions of the synthesis engine.
Definition: bstbseutils.cc:67
Definition: bsebalance.genidl.hh:95
Definition: bsecxxvalue.hh:13
Definition: bsebalance.genidl.hh:52
Definition: sficxx.hh:169
Definition: bsecxxmodule.hh:92
Definition: bsecxxbase.hh:14