120 |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
121 |
*/ |
*/ |
122 |
GIG_DECLARE_ENUM(loop_type_t, |
GIG_DECLARE_ENUM(loop_type_t, |
123 |
loop_type_normal = 0x00000000, ///< Loop forward (normal) |
loop_type_normal = 0x00000000, /**< Loop forward (normal) */ |
124 |
loop_type_bidirectional = 0x00000001, ///< Alternating loop (forward/backward, also known as Ping Pong) |
loop_type_bidirectional = 0x00000001, /**< Alternating loop (forward/backward, also known as Ping Pong) */ |
125 |
loop_type_backward = 0x00000002 ///< Loop backward (reverse) |
loop_type_backward = 0x00000002 /**< Loop backward (reverse) */ |
126 |
); |
); |
127 |
|
|
128 |
/** Society of Motion Pictures and Television E time format. |
/** Society of Motion Pictures and Television E time format. |
130 |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
131 |
*/ |
*/ |
132 |
GIG_DECLARE_ENUM(smpte_format_t, |
GIG_DECLARE_ENUM(smpte_format_t, |
133 |
smpte_format_no_offset = 0x00000000, ///< no SMPTE offset |
smpte_format_no_offset = 0x00000000, /**< no SMPTE offset */ |
134 |
smpte_format_24_frames = 0x00000018, ///< 24 frames per second |
smpte_format_24_frames = 0x00000018, /**< 24 frames per second */ |
135 |
smpte_format_25_frames = 0x00000019, ///< 25 frames per second |
smpte_format_25_frames = 0x00000019, /**< 25 frames per second */ |
136 |
smpte_format_30_frames_dropping = 0x0000001D, ///< 30 frames per second with frame dropping (30 drop) |
smpte_format_30_frames_dropping = 0x0000001D, /**< 30 frames per second with frame dropping (30 drop) */ |
137 |
smpte_format_30_frames = 0x0000001E ///< 30 frames per second |
smpte_format_30_frames = 0x0000001E /**< 30 frames per second */ |
138 |
); |
); |
139 |
|
|
140 |
/** Defines the shape of a function graph. |
/** Defines the shape of a function graph. |
142 |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
143 |
*/ |
*/ |
144 |
GIG_DECLARE_ENUM(curve_type_t, |
GIG_DECLARE_ENUM(curve_type_t, |
145 |
curve_type_nonlinear = 0, |
curve_type_nonlinear = 0, /**< Non-linear curve type. */ |
146 |
curve_type_linear = 1, |
curve_type_linear = 1, /**< Linear curve type. */ |
147 |
curve_type_special = 2, |
curve_type_special = 2, /**< Special curve type. */ |
148 |
curve_type_unknown = 0xffffffff |
curve_type_unknown = 0xffffffff /**< Unknown curve type. */ |
149 |
); |
); |
150 |
|
|
151 |
/** Dimensions allow to bypass one of the following controllers. |
/** Dimensions allow to bypass one of the following controllers. |
153 |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
154 |
*/ |
*/ |
155 |
GIG_DECLARE_ENUM(dim_bypass_ctrl_t, |
GIG_DECLARE_ENUM(dim_bypass_ctrl_t, |
156 |
dim_bypass_ctrl_none, |
dim_bypass_ctrl_none, /**< No controller bypass. */ |
157 |
dim_bypass_ctrl_94, ///< Effect 4 Depth (MIDI Controller 94) |
dim_bypass_ctrl_94, /**< Effect 4 Depth (MIDI Controller 94) */ |
158 |
dim_bypass_ctrl_95 ///< Effect 5 Depth (MIDI Controller 95) |
dim_bypass_ctrl_95 /**< Effect 5 Depth (MIDI Controller 95) */ |
159 |
); |
); |
160 |
|
|
161 |
/** Defines how LFO3 is controlled by. |
/** Defines how LFO3 is controlled by. |
163 |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
164 |
*/ |
*/ |
165 |
GIG_DECLARE_ENUM(lfo3_ctrl_t, |
GIG_DECLARE_ENUM(lfo3_ctrl_t, |
166 |
lfo3_ctrl_internal = 0x00, ///< Only internally controlled. |
lfo3_ctrl_internal = 0x00, /**< Only internally controlled. */ |
167 |
lfo3_ctrl_modwheel = 0x01, ///< Only controlled by external modulation wheel. |
lfo3_ctrl_modwheel = 0x01, /**< Only controlled by external modulation wheel. */ |
168 |
lfo3_ctrl_aftertouch = 0x02, ///< Only controlled by aftertouch controller. |
lfo3_ctrl_aftertouch = 0x02, /**< Only controlled by aftertouch controller. */ |
169 |
lfo3_ctrl_internal_modwheel = 0x03, ///< Controlled internally and by external modulation wheel. |
lfo3_ctrl_internal_modwheel = 0x03, /**< Controlled internally and by external modulation wheel. */ |
170 |
lfo3_ctrl_internal_aftertouch = 0x04 ///< Controlled internally and by aftertouch controller. |
lfo3_ctrl_internal_aftertouch = 0x04 /**< Controlled internally and by aftertouch controller. */ |
171 |
); |
); |
172 |
|
|
173 |
/** Defines how LFO2 is controlled by. |
/** Defines how LFO2 is controlled by. |
175 |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
176 |
*/ |
*/ |
177 |
GIG_DECLARE_ENUM(lfo2_ctrl_t, |
GIG_DECLARE_ENUM(lfo2_ctrl_t, |
178 |
lfo2_ctrl_internal = 0x00, ///< Only internally controlled. |
lfo2_ctrl_internal = 0x00, /**< Only internally controlled. */ |
179 |
lfo2_ctrl_modwheel = 0x01, ///< Only controlled by external modulation wheel. |
lfo2_ctrl_modwheel = 0x01, /**< Only controlled by external modulation wheel. */ |
180 |
lfo2_ctrl_foot = 0x02, ///< Only controlled by external foot controller. |
lfo2_ctrl_foot = 0x02, /**< Only controlled by external foot controller. */ |
181 |
lfo2_ctrl_internal_modwheel = 0x03, ///< Controlled internally and by external modulation wheel. |
lfo2_ctrl_internal_modwheel = 0x03, /**< Controlled internally and by external modulation wheel. */ |
182 |
lfo2_ctrl_internal_foot = 0x04 ///< Controlled internally and by external foot controller. |
lfo2_ctrl_internal_foot = 0x04 /**< Controlled internally and by external foot controller. */ |
183 |
); |
); |
184 |
|
|
185 |
/** Defines how LFO1 is controlled by. |
/** Defines how LFO1 is controlled by. |
187 |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
188 |
*/ |
*/ |
189 |
GIG_DECLARE_ENUM(lfo1_ctrl_t, |
GIG_DECLARE_ENUM(lfo1_ctrl_t, |
190 |
lfo1_ctrl_internal = 0x00, ///< Only internally controlled. |
lfo1_ctrl_internal = 0x00, /**< Only internally controlled. */ |
191 |
lfo1_ctrl_modwheel = 0x01, ///< Only controlled by external modulation wheel. |
lfo1_ctrl_modwheel = 0x01, /**< Only controlled by external modulation wheel. */ |
192 |
lfo1_ctrl_breath = 0x02, ///< Only controlled by external breath controller. |
lfo1_ctrl_breath = 0x02, /**< Only controlled by external breath controller. */ |
193 |
lfo1_ctrl_internal_modwheel = 0x03, ///< Controlled internally and by external modulation wheel. |
lfo1_ctrl_internal_modwheel = 0x03, /**< Controlled internally and by external modulation wheel. */ |
194 |
lfo1_ctrl_internal_breath = 0x04 ///< Controlled internally and by external breath controller. |
lfo1_ctrl_internal_breath = 0x04 /**< Controlled internally and by external breath controller. */ |
195 |
); |
); |
196 |
|
|
197 |
/** Defines how the filter cutoff frequency is controlled by. |
/** Defines how the filter cutoff frequency is controlled by. |
199 |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
200 |
*/ |
*/ |
201 |
GIG_DECLARE_ENUM(vcf_cutoff_ctrl_t, |
GIG_DECLARE_ENUM(vcf_cutoff_ctrl_t, |
202 |
vcf_cutoff_ctrl_none = 0x00, |
vcf_cutoff_ctrl_none = 0x00, /**< No MIDI controller assigned for filter cutoff frequency. */ |
203 |
vcf_cutoff_ctrl_none2 = 0x01, ///< The difference between none and none2 is unknown |
vcf_cutoff_ctrl_none2 = 0x01, /**< The difference between none and none2 is unknown */ |
204 |
vcf_cutoff_ctrl_modwheel = 0x81, ///< Modulation Wheel (MIDI Controller 1) |
vcf_cutoff_ctrl_modwheel = 0x81, /**< Modulation Wheel (MIDI Controller 1) */ |
205 |
vcf_cutoff_ctrl_effect1 = 0x8c, ///< Effect Controller 1 (Coarse, MIDI Controller 12) |
vcf_cutoff_ctrl_effect1 = 0x8c, /**< Effect Controller 1 (Coarse, MIDI Controller 12) */ |
206 |
vcf_cutoff_ctrl_effect2 = 0x8d, ///< Effect Controller 2 (Coarse, MIDI Controller 13) |
vcf_cutoff_ctrl_effect2 = 0x8d, /**< Effect Controller 2 (Coarse, MIDI Controller 13) */ |
207 |
vcf_cutoff_ctrl_breath = 0x82, ///< Breath Controller (Coarse, MIDI Controller 2) |
vcf_cutoff_ctrl_breath = 0x82, /**< Breath Controller (Coarse, MIDI Controller 2) */ |
208 |
vcf_cutoff_ctrl_foot = 0x84, ///< Foot Pedal (Coarse, MIDI Controller 4) |
vcf_cutoff_ctrl_foot = 0x84, /**< Foot Pedal (Coarse, MIDI Controller 4) */ |
209 |
vcf_cutoff_ctrl_sustainpedal = 0xc0, ///< Sustain Pedal (MIDI Controller 64) |
vcf_cutoff_ctrl_sustainpedal = 0xc0, /**< Sustain Pedal (MIDI Controller 64) */ |
210 |
vcf_cutoff_ctrl_softpedal = 0xc3, ///< Soft Pedal (MIDI Controller 67) |
vcf_cutoff_ctrl_softpedal = 0xc3, /**< Soft Pedal (MIDI Controller 67) */ |
211 |
vcf_cutoff_ctrl_genpurpose7 = 0xd2, ///< General Purpose Controller 7 (Button, MIDI Controller 82) |
vcf_cutoff_ctrl_genpurpose7 = 0xd2, /**< General Purpose Controller 7 (Button, MIDI Controller 82) */ |
212 |
vcf_cutoff_ctrl_genpurpose8 = 0xd3, ///< General Purpose Controller 8 (Button, MIDI Controller 83) |
vcf_cutoff_ctrl_genpurpose8 = 0xd3, /**< General Purpose Controller 8 (Button, MIDI Controller 83) */ |
213 |
vcf_cutoff_ctrl_aftertouch = 0x80 ///< Key Pressure |
vcf_cutoff_ctrl_aftertouch = 0x80 /**< Key Pressure */ |
214 |
); |
); |
215 |
|
|
216 |
/** Defines how the filter resonance is controlled by. |
/** Defines how the filter resonance is controlled by. |
218 |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
219 |
*/ |
*/ |
220 |
GIG_DECLARE_ENUM(vcf_res_ctrl_t, |
GIG_DECLARE_ENUM(vcf_res_ctrl_t, |
221 |
vcf_res_ctrl_none = 0xffffffff, |
vcf_res_ctrl_none = 0xffffffff, /**< No MIDI controller assigned for filter resonance. */ |
222 |
vcf_res_ctrl_genpurpose3 = 0, ///< General Purpose Controller 3 (Slider, MIDI Controller 18) |
vcf_res_ctrl_genpurpose3 = 0, /**< General Purpose Controller 3 (Slider, MIDI Controller 18) */ |
223 |
vcf_res_ctrl_genpurpose4 = 1, ///< General Purpose Controller 4 (Slider, MIDI Controller 19) |
vcf_res_ctrl_genpurpose4 = 1, /**< General Purpose Controller 4 (Slider, MIDI Controller 19) */ |
224 |
vcf_res_ctrl_genpurpose5 = 2, ///< General Purpose Controller 5 (Button, MIDI Controller 80) |
vcf_res_ctrl_genpurpose5 = 2, /**< General Purpose Controller 5 (Button, MIDI Controller 80) */ |
225 |
vcf_res_ctrl_genpurpose6 = 3 ///< General Purpose Controller 6 (Button, MIDI Controller 81) |
vcf_res_ctrl_genpurpose6 = 3 /**< General Purpose Controller 6 (Button, MIDI Controller 81) */ |
226 |
); |
); |
227 |
|
|
228 |
/** |
/** |
239 |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
240 |
*/ |
*/ |
241 |
GIG_DECLARE_ENUM(type_t, |
GIG_DECLARE_ENUM(type_t, |
242 |
type_none = 0x00, ///< No controller defined |
type_none = 0x00, /**< No controller defined */ |
243 |
type_channelaftertouch = 0x2f, ///< Channel Key Pressure |
type_channelaftertouch = 0x2f, /**< Channel Key Pressure */ |
244 |
type_velocity = 0xff, ///< Key Velocity |
type_velocity = 0xff, /**< Key Velocity */ |
245 |
type_controlchange = 0xfe ///< Ordinary MIDI control change controller, see field 'controller_number' |
type_controlchange = 0xfe /**< Ordinary MIDI control change controller, see field 'controller_number' */ |
246 |
); |
); |
247 |
|
|
248 |
type_t type; ///< Controller type |
type_t type; ///< Controller type |
282 |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
283 |
*/ |
*/ |
284 |
GIG_DECLARE_ENUM(dimension_t, |
GIG_DECLARE_ENUM(dimension_t, |
285 |
dimension_none = 0x00, ///< Dimension not in use. |
dimension_none = 0x00, /**< Dimension not in use. */ |
286 |
dimension_samplechannel = 0x80, ///< If used sample has more than one channel (thus is not mono). |
dimension_samplechannel = 0x80, /**< If used sample has more than one channel (thus is not mono). */ |
287 |
dimension_layer = 0x81, ///< For layering of up to 8 instruments (and eventually crossfading of 2 or 4 layers). |
dimension_layer = 0x81, /**< For layering of up to 8 instruments (and eventually crossfading of 2 or 4 layers). */ |
288 |
dimension_velocity = 0x82, ///< Key Velocity (this is the only dimension in gig2 where the ranges can exactly be defined). |
dimension_velocity = 0x82, /**< Key Velocity (this is the only dimension in gig2 where the ranges can exactly be defined). */ |
289 |
dimension_channelaftertouch = 0x83, ///< Channel Key Pressure |
dimension_channelaftertouch = 0x83, /**< Channel Key Pressure */ |
290 |
dimension_releasetrigger = 0x84, ///< Special dimension for triggering samples on releasing a key. |
dimension_releasetrigger = 0x84, /**< Special dimension for triggering samples on releasing a key. */ |
291 |
dimension_keyboard = 0x85, ///< Dimension for keyswitching |
dimension_keyboard = 0x85, /**< Dimension for keyswitching */ |
292 |
dimension_roundrobin = 0x86, ///< Different samples triggered each time a note is played, dimension regions selected in sequence |
dimension_roundrobin = 0x86, /**< Different samples triggered each time a note is played, dimension regions selected in sequence */ |
293 |
dimension_random = 0x87, ///< Different samples triggered each time a note is played, random order |
dimension_random = 0x87, /**< Different samples triggered each time a note is played, random order */ |
294 |
dimension_smartmidi = 0x88, ///< For MIDI tools like legato and repetition mode |
dimension_smartmidi = 0x88, /**< For MIDI tools like legato and repetition mode */ |
295 |
dimension_roundrobinkeyboard = 0x89, ///< Different samples triggered each time a note is played, any key advances the counter |
dimension_roundrobinkeyboard = 0x89, /**< Different samples triggered each time a note is played, any key advances the counter */ |
296 |
dimension_modwheel = 0x01, ///< Modulation Wheel (MIDI Controller 1) |
dimension_modwheel = 0x01, /**< Modulation Wheel (MIDI Controller 1) */ |
297 |
dimension_breath = 0x02, ///< Breath Controller (Coarse, MIDI Controller 2) |
dimension_breath = 0x02, /**< Breath Controller (Coarse, MIDI Controller 2) */ |
298 |
dimension_foot = 0x04, ///< Foot Pedal (Coarse, MIDI Controller 4) |
dimension_foot = 0x04, /**< Foot Pedal (Coarse, MIDI Controller 4) */ |
299 |
dimension_portamentotime = 0x05, ///< Portamento Time (Coarse, MIDI Controller 5) |
dimension_portamentotime = 0x05, /**< Portamento Time (Coarse, MIDI Controller 5) */ |
300 |
dimension_effect1 = 0x0c, ///< Effect Controller 1 (Coarse, MIDI Controller 12) |
dimension_effect1 = 0x0c, /**< Effect Controller 1 (Coarse, MIDI Controller 12) */ |
301 |
dimension_effect2 = 0x0d, ///< Effect Controller 2 (Coarse, MIDI Controller 13) |
dimension_effect2 = 0x0d, /**< Effect Controller 2 (Coarse, MIDI Controller 13) */ |
302 |
dimension_genpurpose1 = 0x10, ///< General Purpose Controller 1 (Slider, MIDI Controller 16) |
dimension_genpurpose1 = 0x10, /**< General Purpose Controller 1 (Slider, MIDI Controller 16) */ |
303 |
dimension_genpurpose2 = 0x11, ///< General Purpose Controller 2 (Slider, MIDI Controller 17) |
dimension_genpurpose2 = 0x11, /**< General Purpose Controller 2 (Slider, MIDI Controller 17) */ |
304 |
dimension_genpurpose3 = 0x12, ///< General Purpose Controller 3 (Slider, MIDI Controller 18) |
dimension_genpurpose3 = 0x12, /**< General Purpose Controller 3 (Slider, MIDI Controller 18) */ |
305 |
dimension_genpurpose4 = 0x13, ///< General Purpose Controller 4 (Slider, MIDI Controller 19) |
dimension_genpurpose4 = 0x13, /**< General Purpose Controller 4 (Slider, MIDI Controller 19) */ |
306 |
dimension_sustainpedal = 0x40, ///< Sustain Pedal (MIDI Controller 64) |
dimension_sustainpedal = 0x40, /**< Sustain Pedal (MIDI Controller 64) */ |
307 |
dimension_portamento = 0x41, ///< Portamento (MIDI Controller 65) |
dimension_portamento = 0x41, /**< Portamento (MIDI Controller 65) */ |
308 |
dimension_sostenutopedal = 0x42, ///< Sostenuto Pedal (MIDI Controller 66) |
dimension_sostenutopedal = 0x42, /**< Sostenuto Pedal (MIDI Controller 66) */ |
309 |
dimension_softpedal = 0x43, ///< Soft Pedal (MIDI Controller 67) |
dimension_softpedal = 0x43, /**< Soft Pedal (MIDI Controller 67) */ |
310 |
dimension_genpurpose5 = 0x30, ///< General Purpose Controller 5 (Button, MIDI Controller 80) |
dimension_genpurpose5 = 0x30, /**< General Purpose Controller 5 (Button, MIDI Controller 80) */ |
311 |
dimension_genpurpose6 = 0x31, ///< General Purpose Controller 6 (Button, MIDI Controller 81) |
dimension_genpurpose6 = 0x31, /**< General Purpose Controller 6 (Button, MIDI Controller 81) */ |
312 |
dimension_genpurpose7 = 0x32, ///< General Purpose Controller 7 (Button, MIDI Controller 82) |
dimension_genpurpose7 = 0x32, /**< General Purpose Controller 7 (Button, MIDI Controller 82) */ |
313 |
dimension_genpurpose8 = 0x33, ///< General Purpose Controller 8 (Button, MIDI Controller 83) |
dimension_genpurpose8 = 0x33, /**< General Purpose Controller 8 (Button, MIDI Controller 83) */ |
314 |
dimension_effect1depth = 0x5b, ///< Effect 1 Depth (MIDI Controller 91) |
dimension_effect1depth = 0x5b, /**< Effect 1 Depth (MIDI Controller 91) */ |
315 |
dimension_effect2depth = 0x5c, ///< Effect 2 Depth (MIDI Controller 92) |
dimension_effect2depth = 0x5c, /**< Effect 2 Depth (MIDI Controller 92) */ |
316 |
dimension_effect3depth = 0x5d, ///< Effect 3 Depth (MIDI Controller 93) |
dimension_effect3depth = 0x5d, /**< Effect 3 Depth (MIDI Controller 93) */ |
317 |
dimension_effect4depth = 0x5e, ///< Effect 4 Depth (MIDI Controller 94) |
dimension_effect4depth = 0x5e, /**< Effect 4 Depth (MIDI Controller 94) */ |
318 |
dimension_effect5depth = 0x5f ///< Effect 5 Depth (MIDI Controller 95) |
dimension_effect5depth = 0x5f /**< Effect 5 Depth (MIDI Controller 95) */ |
319 |
); |
); |
320 |
|
|
321 |
/** |
/** |
325 |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
326 |
*/ |
*/ |
327 |
GIG_DECLARE_ENUM(split_type_t, |
GIG_DECLARE_ENUM(split_type_t, |
328 |
split_type_normal, ///< dimension value between 0-127 |
split_type_normal, /**< dimension value between 0-127 */ |
329 |
split_type_bit ///< dimension values are already the sought bit number |
split_type_bit /**< dimension values are already the sought bit number */ |
330 |
); |
); |
331 |
|
|
332 |
/** General dimension definition. */ |
/** General dimension definition. */ |
343 |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
344 |
*/ |
*/ |
345 |
GIG_DECLARE_ENUM(vcf_type_t, |
GIG_DECLARE_ENUM(vcf_type_t, |
346 |
vcf_type_lowpass = 0x00, |
vcf_type_lowpass = 0x00, /**< Standard lowpass filter type. */ |
347 |
vcf_type_lowpassturbo = 0xff, ///< More poles than normal lowpass |
vcf_type_lowpassturbo = 0xff, /**< More poles than normal lowpass. */ |
348 |
vcf_type_bandpass = 0x01, |
vcf_type_bandpass = 0x01, /**< Bandpass filter type. */ |
349 |
vcf_type_highpass = 0x02, |
vcf_type_highpass = 0x02, /**< Highpass filter type. */ |
350 |
vcf_type_bandreject = 0x03 |
vcf_type_bandreject = 0x03 /**< Highpass filter type. */ |
351 |
); |
); |
352 |
|
|
353 |
/** |
/** |