Beast - Music Synthesizer and Composer  0.11.1+10.g2da35
bsestandardosc.hh
Go to the documentation of this file.
1  // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html
2 #ifndef __BSE_STANDARD_OSC_H__
3 #define __BSE_STANDARD_OSC_H__
4 #include <bse/bsesource.hh>
5 #include <bse/gsloscillator.hh>
6 #define BSE_TYPE_STANDARD_OSC (BSE_TYPE_ID (BseStandardOsc))
7 #define BSE_STANDARD_OSC(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), BSE_TYPE_STANDARD_OSC, BseStandardOsc))
8 #define BSE_STANDARD_OSC_CLASS(class) (G_TYPE_CHECK_CLASS_CAST ((class), BSE_TYPE_STANDARD_OSC, BseStandardOscClass))
9 #define BSE_IS_STANDARD_OSC(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), BSE_TYPE_STANDARD_OSC))
10 #define BSE_IS_STANDARD_OSC_CLASS(class) (G_TYPE_CHECK_CLASS_TYPE ((class), BSE_TYPE_STANDARD_OSC))
11 #define BSE_STANDARD_OSC_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), BSE_TYPE_STANDARD_OSC, BseStandardOscClass))
12 
13 typedef enum
14 {
15  BSE_STANDARD_OSC_SINE = GSL_OSC_WAVE_SINE, /*< nick=Sine >*/
16  BSE_STANDARD_OSC_TRIANGLE = GSL_OSC_WAVE_TRIANGLE, /*< nick=Triangle >*/
17  BSE_STANDARD_OSC_SAW_RISE = GSL_OSC_WAVE_SAW_RISE, /*< nick=Rising Saw >*/
18  BSE_STANDARD_OSC_SAW_FALL = GSL_OSC_WAVE_SAW_FALL, /*< nick=Falling Saw >*/
19  BSE_STANDARD_OSC_PEAK_RISE = GSL_OSC_WAVE_PEAK_RISE, /*< nick=Rising Peak >*/
20  BSE_STANDARD_OSC_PEAK_FALL = GSL_OSC_WAVE_PEAK_FALL, /*< nick=Falling Peak >*/
21  BSE_STANDARD_OSC_MOOG_SAW = GSL_OSC_WAVE_MOOG_SAW, /*< nick=Moog Saw >*/
22  BSE_STANDARD_OSC_SQUARE = GSL_OSC_WAVE_SQUARE, /*< nick=Square >*/
23  BSE_STANDARD_OSC_PULSE = GSL_OSC_WAVE_PULSE_SAW /*< nick=Pulse >*/
24 } BseStandardOscWaveType;
25 
27  BseStandardOscWaveType wave;
28  GslOscConfig config;
29  int transpose;
30  gfloat fm_strength;
31  gfloat n_octaves;
32 };
34 {};
35 
36 enum
37 {
38  BSE_STANDARD_OSC_ICHANNEL_FREQ,
39  BSE_STANDARD_OSC_ICHANNEL_FREQ_MOD,
40  BSE_STANDARD_OSC_ICHANNEL_PWM,
41  BSE_STANDARD_OSC_ICHANNEL_SYNC,
42  BSE_STANDARD_OSC_N_ICHANNELS
43 };
44 enum
45 {
46  BSE_STANDARD_OSC_OCHANNEL_OSC,
47  BSE_STANDARD_OSC_OCHANNEL_SYNC,
48  BSE_STANDARD_OSC_N_OCHANNELS
49 };
50 
51 #endif /* __BSE_STANDARD_OSC_H__ */
Definition: bsesource.hh:82
Definition: bsestandardosc.hh:33
Definition: bsesource.hh:90
Definition: bsestandardosc.hh:26
Definition: gsloscillator.hh:10