Beast - Music Synthesizer and Composer  0.11.1+10.g2da35
bsesimpleadsr.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_SIMPLE_ADSR_H__
3 #define __BSE_SIMPLE_ADSR_H__
4 
5 #include <bse/bseplugin.hh>
6 #include <bse/bsesource.hh>
7 
8 /* --- object type macros --- */
9 #define BSE_TYPE_SIMPLE_ADSR (bse_simple_adsr_get_type())
10 #define BSE_SIMPLE_ADSR(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), BSE_TYPE_SIMPLE_ADSR, BseSimpleADSR))
11 #define BSE_SIMPLE_ADSR_CLASS(class) (G_TYPE_CHECK_CLASS_CAST ((class), BSE_TYPE_SIMPLE_ADSR, BseSimpleADSRClass))
12 #define BSE_IS_SIMPLE_ADSR(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), BSE_TYPE_SIMPLE_ADSR))
13 #define BSE_IS_SIMPLE_ADSR_CLASS(class) (G_TYPE_CHECK_CLASS_TYPE ((class), BSE_TYPE_SIMPLE_ADSR))
14 #define BSE_SIMPLE_ADSR_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), BSE_TYPE_SIMPLE_ADSR, BseSimpleADSRClass))
15 
17  float attack_level;
18  float attack_inc;
19  float decay_dec;
20  float sustain_level;
21  float release_dec;
22 };
24  float attack_time;
25  float decay_time;
26  float sustain_level;
27  float release_time;
28  BseTimeRangeType time_range;
29 };
31 {};
32 
33 enum
34 {
35  BSE_SIMPLE_ADSR_ICHANNEL_GATE,
36  BSE_SIMPLE_ADSR_ICHANNEL_RETRIGGER,
37  BSE_SIMPLE_ADSR_N_ICHANNELS
38 };
39 enum
40 {
41  BSE_SIMPLE_ADSR_OCHANNEL_OUT,
42  BSE_SIMPLE_ADSR_OCHANNEL_DONE,
43  BSE_SIMPLE_ADSR_N_OCHANNELS
44 };
45 
46 #endif /* __BSE_SIMPLE_ADSR_H__ */
Definition: bsesimpleadsr.hh:30
Definition: bsesimpleadsr.hh:16
Definition: bsesimpleadsr.hh:23
Definition: bsesource.hh:82
Definition: bsesource.hh:90