BEAST/BSE - Better Audio System and Sound Engine
0.8.2
|
00001 00002 /*-------- begin ../sfi/sfidl generated code --------*/ 00003 00004 00005 00006 #include <bse/bsecxxplugin.hh> 00007 00008 00009 /* enum prototypes */ 00010 namespace Bse { 00011 #define BSE_TYPE_MUSICAL_TUNING_TYPE BSE_CXX_DECLARED_ENUM_TYPE (Bse, MusicalTuningType) 00012 #define BSE_TYPE_MIDI_SIGNAL_TYPE BSE_CXX_DECLARED_ENUM_TYPE (Bse, MidiSignalType) 00013 #define BSE_TYPE_MIDI_CONTROL_TYPE BSE_CXX_DECLARED_ENUM_TYPE (Bse, MidiControlType) 00014 #define BSE_TYPE_MIDI_CHANNEL_EVENT_TYPE BSE_CXX_DECLARED_ENUM_TYPE (Bse, MidiChannelEventType) 00015 00016 00017 /* choice prototypes */ 00018 static SfiChoiceValues MusicalTuningType_choice_values(); 00019 static SfiChoiceValues MidiSignalType_choice_values(); 00020 static SfiChoiceValues MidiControlType_choice_values(); 00021 static SfiChoiceValues MidiChannelEventType_choice_values(); 00022 00023 00024 /* record prototypes */ 00025 class MidiChannelEvent; 00026 typedef Sfi::RecordHandle<MidiChannelEvent> MidiChannelEventHandle; 00027 #define BSE_TYPE_MIDI_CHANNEL_EVENT BSE_CXX_DECLARED_RECORD_TYPE (Bse, MidiChannelEvent) 00028 class PropertyCandidates; 00029 typedef Sfi::RecordHandle<PropertyCandidates> PropertyCandidatesHandle; 00030 #define BSE_TYPE_PROPERTY_CANDIDATES BSE_CXX_DECLARED_RECORD_TYPE (Bse, PropertyCandidates) 00031 class PartNote; 00032 typedef Sfi::RecordHandle<PartNote> PartNoteHandle; 00033 #define BSE_TYPE_PART_NOTE BSE_CXX_DECLARED_RECORD_TYPE (Bse, PartNote) 00034 class PartControl; 00035 typedef Sfi::RecordHandle<PartControl> PartControlHandle; 00036 #define BSE_TYPE_PART_CONTROL BSE_CXX_DECLARED_RECORD_TYPE (Bse, PartControl) 00037 class NoteDescription; 00038 typedef Sfi::RecordHandle<NoteDescription> NoteDescriptionHandle; 00039 #define BSE_TYPE_NOTE_DESCRIPTION BSE_CXX_DECLARED_RECORD_TYPE (Bse, NoteDescription) 00040 class NoteSequence; 00041 typedef Sfi::RecordHandle<NoteSequence> NoteSequenceHandle; 00042 #define BSE_TYPE_NOTE_SEQUENCE BSE_CXX_DECLARED_RECORD_TYPE (Bse, NoteSequence) 00043 class Icon; 00044 typedef Sfi::RecordHandle<Icon> IconHandle; 00045 #define BSE_TYPE_ICON BSE_CXX_DECLARED_RECORD_TYPE (Bse, Icon) 00046 class Category; 00047 typedef Sfi::RecordHandle<Category> CategoryHandle; 00048 #define BSE_TYPE_CATEGORY BSE_CXX_DECLARED_RECORD_TYPE (Bse, Category) 00049 class Dot; 00050 typedef Sfi::RecordHandle<Dot> DotHandle; 00051 #define BSE_TYPE_DOT BSE_CXX_DECLARED_RECORD_TYPE (Bse, Dot) 00052 class PartLink; 00053 typedef Sfi::RecordHandle<PartLink> PartLinkHandle; 00054 #define BSE_TYPE_PART_LINK BSE_CXX_DECLARED_RECORD_TYPE (Bse, PartLink) 00055 class TrackPart; 00056 typedef Sfi::RecordHandle<TrackPart> TrackPartHandle; 00057 #define BSE_TYPE_TRACK_PART BSE_CXX_DECLARED_RECORD_TYPE (Bse, TrackPart) 00058 class SongTiming; 00059 typedef Sfi::RecordHandle<SongTiming> SongTimingHandle; 00060 #define BSE_TYPE_SONG_TIMING BSE_CXX_DECLARED_RECORD_TYPE (Bse, SongTiming) 00061 class SampleFileInfo; 00062 typedef Sfi::RecordHandle<SampleFileInfo> SampleFileInfoHandle; 00063 #define BSE_TYPE_SAMPLE_FILE_INFO BSE_CXX_DECLARED_RECORD_TYPE (Bse, SampleFileInfo) 00064 class GConfig; 00065 typedef Sfi::RecordHandle<GConfig> GConfigHandle; 00066 #define BSE_TYPE_GCONFIG BSE_CXX_DECLARED_RECORD_TYPE (Bse, GConfig) 00067 00068 00069 /* sequence prototypes */ 00070 class IntSeq; 00071 #define BSE_TYPE_INT_SEQ BSE_CXX_DECLARED_SEQUENCE_TYPE (Bse, IntSeq) 00072 class TypeSeq; 00073 #define BSE_TYPE_TYPE_SEQ BSE_CXX_DECLARED_SEQUENCE_TYPE (Bse, TypeSeq) 00074 class StringSeq; 00075 #define BSE_TYPE_STRING_SEQ BSE_CXX_DECLARED_SEQUENCE_TYPE (Bse, StringSeq) 00076 class FloatSeq; 00077 #define BSE_TYPE_FLOAT_SEQ BSE_CXX_DECLARED_SEQUENCE_TYPE (Bse, FloatSeq) 00078 class NoteSeq; 00079 #define BSE_TYPE_NOTE_SEQ BSE_CXX_DECLARED_SEQUENCE_TYPE (Bse, NoteSeq) 00080 class ItemSeq; 00081 #define BSE_TYPE_ITEM_SEQ BSE_CXX_DECLARED_SEQUENCE_TYPE (Bse, ItemSeq) 00082 class PartNoteSeq; 00083 #define BSE_TYPE_PART_NOTE_SEQ BSE_CXX_DECLARED_SEQUENCE_TYPE (Bse, PartNoteSeq) 00084 class PartControlSeq; 00085 #define BSE_TYPE_PART_CONTROL_SEQ BSE_CXX_DECLARED_SEQUENCE_TYPE (Bse, PartControlSeq) 00086 class PixelSeq; 00087 #define BSE_TYPE_PIXEL_SEQ BSE_CXX_DECLARED_SEQUENCE_TYPE (Bse, PixelSeq) 00088 class CategorySeq; 00089 #define BSE_TYPE_CATEGORY_SEQ BSE_CXX_DECLARED_SEQUENCE_TYPE (Bse, CategorySeq) 00090 class DotSeq; 00091 #define BSE_TYPE_DOT_SEQ BSE_CXX_DECLARED_SEQUENCE_TYPE (Bse, DotSeq) 00092 class PartLinkSeq; 00093 #define BSE_TYPE_PART_LINK_SEQ BSE_CXX_DECLARED_SEQUENCE_TYPE (Bse, PartLinkSeq) 00094 class TrackPartSeq; 00095 #define BSE_TYPE_TRACK_PART_SEQ BSE_CXX_DECLARED_SEQUENCE_TYPE (Bse, TrackPartSeq) 00096 00097 00098 /* class prototypes */ 00099 00100 00101 /* enum definitions */ 00102 enum MusicalTuningType { 00103 MUSICAL_TUNING_12_TET = 1, 00104 MUSICAL_TUNING_7_TET = 2, 00105 MUSICAL_TUNING_5_TET = 3, 00106 MUSICAL_TUNING_DIATONIC_SCALE = 4, 00107 MUSICAL_TUNING_INDIAN_SCALE = 5, 00108 MUSICAL_TUNING_PYTHAGOREAN_TUNING = 6, 00109 MUSICAL_TUNING_PENTATONIC_5_LIMIT = 7, 00110 MUSICAL_TUNING_PENTATONIC_BLUES = 8, 00111 MUSICAL_TUNING_PENTATONIC_GOGO = 9, 00112 MUSICAL_TUNING_QUARTER_COMMA_MEANTONE = 10, 00113 MUSICAL_TUNING_SILBERMANN_SORGE = 11, 00114 MUSICAL_TUNING_WERCKMEISTER_3 = 12, 00115 MUSICAL_TUNING_WERCKMEISTER_4 = 13, 00116 MUSICAL_TUNING_WERCKMEISTER_5 = 14, 00117 MUSICAL_TUNING_WERCKMEISTER_6 = 15, 00118 MUSICAL_TUNING_KIRNBERGER_3 = 16, 00119 MUSICAL_TUNING_YOUNG = 17, 00120 }; 00121 enum MidiSignalType { 00122 MIDI_SIGNAL_PROGRAM = 1, 00123 MIDI_SIGNAL_PRESSURE = 2, 00124 MIDI_SIGNAL_PITCH_BEND = 3, 00125 MIDI_SIGNAL_VELOCITY = 4, 00126 MIDI_SIGNAL_FINE_TUNE = 5, 00127 MIDI_SIGNAL_CONTINUOUS_0 = 64, 00128 MIDI_SIGNAL_CONTINUOUS_1 = 65, 00129 MIDI_SIGNAL_CONTINUOUS_2 = 66, 00130 MIDI_SIGNAL_CONTINUOUS_3 = 67, 00131 MIDI_SIGNAL_CONTINUOUS_4 = 68, 00132 MIDI_SIGNAL_CONTINUOUS_5 = 69, 00133 MIDI_SIGNAL_CONTINUOUS_6 = 70, 00134 MIDI_SIGNAL_CONTINUOUS_7 = 71, 00135 MIDI_SIGNAL_CONTINUOUS_8 = 72, 00136 MIDI_SIGNAL_CONTINUOUS_9 = 73, 00137 MIDI_SIGNAL_CONTINUOUS_10 = 74, 00138 MIDI_SIGNAL_CONTINUOUS_11 = 75, 00139 MIDI_SIGNAL_CONTINUOUS_12 = 76, 00140 MIDI_SIGNAL_CONTINUOUS_13 = 77, 00141 MIDI_SIGNAL_CONTINUOUS_14 = 78, 00142 MIDI_SIGNAL_CONTINUOUS_15 = 79, 00143 MIDI_SIGNAL_CONTINUOUS_16 = 80, 00144 MIDI_SIGNAL_CONTINUOUS_17 = 81, 00145 MIDI_SIGNAL_CONTINUOUS_18 = 82, 00146 MIDI_SIGNAL_CONTINUOUS_19 = 83, 00147 MIDI_SIGNAL_CONTINUOUS_20 = 84, 00148 MIDI_SIGNAL_CONTINUOUS_21 = 85, 00149 MIDI_SIGNAL_CONTINUOUS_22 = 86, 00150 MIDI_SIGNAL_CONTINUOUS_23 = 87, 00151 MIDI_SIGNAL_CONTINUOUS_24 = 88, 00152 MIDI_SIGNAL_CONTINUOUS_25 = 89, 00153 MIDI_SIGNAL_CONTINUOUS_26 = 90, 00154 MIDI_SIGNAL_CONTINUOUS_27 = 91, 00155 MIDI_SIGNAL_CONTINUOUS_28 = 92, 00156 MIDI_SIGNAL_CONTINUOUS_29 = 93, 00157 MIDI_SIGNAL_CONTINUOUS_30 = 94, 00158 MIDI_SIGNAL_CONTINUOUS_31 = 95, 00159 MIDI_SIGNAL_CONSTANT_HIGH = 96, 00160 MIDI_SIGNAL_CONSTANT_CENTER = 97, 00161 MIDI_SIGNAL_CONSTANT_LOW = 98, 00162 MIDI_SIGNAL_CONSTANT_NEGATIVE_CENTER = 99, 00163 MIDI_SIGNAL_CONSTANT_NEGATIVE_HIGH = 100, 00164 MIDI_SIGNAL_PARAMETER = 101, 00165 MIDI_SIGNAL_NON_PARAMETER = 102, 00166 MIDI_SIGNAL_CONTROL_0 = 128, 00167 MIDI_SIGNAL_CONTROL_1 = 129, 00168 MIDI_SIGNAL_CONTROL_2 = 130, 00169 MIDI_SIGNAL_CONTROL_3 = 131, 00170 MIDI_SIGNAL_CONTROL_4 = 132, 00171 MIDI_SIGNAL_CONTROL_5 = 133, 00172 MIDI_SIGNAL_CONTROL_6 = 134, 00173 MIDI_SIGNAL_CONTROL_7 = 135, 00174 MIDI_SIGNAL_CONTROL_8 = 136, 00175 MIDI_SIGNAL_CONTROL_9 = 137, 00176 MIDI_SIGNAL_CONTROL_10 = 138, 00177 MIDI_SIGNAL_CONTROL_11 = 139, 00178 MIDI_SIGNAL_CONTROL_12 = 140, 00179 MIDI_SIGNAL_CONTROL_13 = 141, 00180 MIDI_SIGNAL_CONTROL_14 = 142, 00181 MIDI_SIGNAL_CONTROL_15 = 143, 00182 MIDI_SIGNAL_CONTROL_16 = 144, 00183 MIDI_SIGNAL_CONTROL_17 = 145, 00184 MIDI_SIGNAL_CONTROL_18 = 146, 00185 MIDI_SIGNAL_CONTROL_19 = 147, 00186 MIDI_SIGNAL_CONTROL_20 = 148, 00187 MIDI_SIGNAL_CONTROL_21 = 149, 00188 MIDI_SIGNAL_CONTROL_22 = 150, 00189 MIDI_SIGNAL_CONTROL_23 = 151, 00190 MIDI_SIGNAL_CONTROL_24 = 152, 00191 MIDI_SIGNAL_CONTROL_25 = 153, 00192 MIDI_SIGNAL_CONTROL_26 = 154, 00193 MIDI_SIGNAL_CONTROL_27 = 155, 00194 MIDI_SIGNAL_CONTROL_28 = 156, 00195 MIDI_SIGNAL_CONTROL_29 = 157, 00196 MIDI_SIGNAL_CONTROL_30 = 158, 00197 MIDI_SIGNAL_CONTROL_31 = 159, 00198 MIDI_SIGNAL_CONTROL_32 = 160, 00199 MIDI_SIGNAL_CONTROL_33 = 161, 00200 MIDI_SIGNAL_CONTROL_34 = 162, 00201 MIDI_SIGNAL_CONTROL_35 = 163, 00202 MIDI_SIGNAL_CONTROL_36 = 164, 00203 MIDI_SIGNAL_CONTROL_37 = 165, 00204 MIDI_SIGNAL_CONTROL_38 = 166, 00205 MIDI_SIGNAL_CONTROL_39 = 167, 00206 MIDI_SIGNAL_CONTROL_40 = 168, 00207 MIDI_SIGNAL_CONTROL_41 = 169, 00208 MIDI_SIGNAL_CONTROL_42 = 170, 00209 MIDI_SIGNAL_CONTROL_43 = 171, 00210 MIDI_SIGNAL_CONTROL_44 = 172, 00211 MIDI_SIGNAL_CONTROL_45 = 173, 00212 MIDI_SIGNAL_CONTROL_46 = 174, 00213 MIDI_SIGNAL_CONTROL_47 = 175, 00214 MIDI_SIGNAL_CONTROL_48 = 176, 00215 MIDI_SIGNAL_CONTROL_49 = 177, 00216 MIDI_SIGNAL_CONTROL_50 = 178, 00217 MIDI_SIGNAL_CONTROL_51 = 179, 00218 MIDI_SIGNAL_CONTROL_52 = 180, 00219 MIDI_SIGNAL_CONTROL_53 = 181, 00220 MIDI_SIGNAL_CONTROL_54 = 182, 00221 MIDI_SIGNAL_CONTROL_55 = 183, 00222 MIDI_SIGNAL_CONTROL_56 = 184, 00223 MIDI_SIGNAL_CONTROL_57 = 185, 00224 MIDI_SIGNAL_CONTROL_58 = 186, 00225 MIDI_SIGNAL_CONTROL_59 = 187, 00226 MIDI_SIGNAL_CONTROL_60 = 188, 00227 MIDI_SIGNAL_CONTROL_61 = 189, 00228 MIDI_SIGNAL_CONTROL_62 = 190, 00229 MIDI_SIGNAL_CONTROL_63 = 191, 00230 MIDI_SIGNAL_CONTROL_64 = 192, 00231 MIDI_SIGNAL_CONTROL_65 = 193, 00232 MIDI_SIGNAL_CONTROL_66 = 194, 00233 MIDI_SIGNAL_CONTROL_67 = 195, 00234 MIDI_SIGNAL_CONTROL_68 = 196, 00235 MIDI_SIGNAL_CONTROL_69 = 197, 00236 MIDI_SIGNAL_CONTROL_70 = 198, 00237 MIDI_SIGNAL_CONTROL_71 = 199, 00238 MIDI_SIGNAL_CONTROL_72 = 200, 00239 MIDI_SIGNAL_CONTROL_73 = 201, 00240 MIDI_SIGNAL_CONTROL_74 = 202, 00241 MIDI_SIGNAL_CONTROL_75 = 203, 00242 MIDI_SIGNAL_CONTROL_76 = 204, 00243 MIDI_SIGNAL_CONTROL_77 = 205, 00244 MIDI_SIGNAL_CONTROL_78 = 206, 00245 MIDI_SIGNAL_CONTROL_79 = 207, 00246 MIDI_SIGNAL_CONTROL_80 = 208, 00247 MIDI_SIGNAL_CONTROL_81 = 209, 00248 MIDI_SIGNAL_CONTROL_82 = 210, 00249 MIDI_SIGNAL_CONTROL_83 = 211, 00250 MIDI_SIGNAL_CONTROL_84 = 212, 00251 MIDI_SIGNAL_CONTROL_85 = 213, 00252 MIDI_SIGNAL_CONTROL_86 = 214, 00253 MIDI_SIGNAL_CONTROL_87 = 215, 00254 MIDI_SIGNAL_CONTROL_88 = 216, 00255 MIDI_SIGNAL_CONTROL_89 = 217, 00256 MIDI_SIGNAL_CONTROL_90 = 218, 00257 MIDI_SIGNAL_CONTROL_91 = 219, 00258 MIDI_SIGNAL_CONTROL_92 = 220, 00259 MIDI_SIGNAL_CONTROL_93 = 221, 00260 MIDI_SIGNAL_CONTROL_94 = 222, 00261 MIDI_SIGNAL_CONTROL_95 = 223, 00262 MIDI_SIGNAL_CONTROL_96 = 224, 00263 MIDI_SIGNAL_CONTROL_97 = 225, 00264 MIDI_SIGNAL_CONTROL_98 = 226, 00265 MIDI_SIGNAL_CONTROL_99 = 227, 00266 MIDI_SIGNAL_CONTROL_100 = 228, 00267 MIDI_SIGNAL_CONTROL_101 = 229, 00268 MIDI_SIGNAL_CONTROL_102 = 230, 00269 MIDI_SIGNAL_CONTROL_103 = 231, 00270 MIDI_SIGNAL_CONTROL_104 = 232, 00271 MIDI_SIGNAL_CONTROL_105 = 233, 00272 MIDI_SIGNAL_CONTROL_106 = 234, 00273 MIDI_SIGNAL_CONTROL_107 = 235, 00274 MIDI_SIGNAL_CONTROL_108 = 236, 00275 MIDI_SIGNAL_CONTROL_109 = 237, 00276 MIDI_SIGNAL_CONTROL_110 = 238, 00277 MIDI_SIGNAL_CONTROL_111 = 239, 00278 MIDI_SIGNAL_CONTROL_112 = 240, 00279 MIDI_SIGNAL_CONTROL_113 = 241, 00280 MIDI_SIGNAL_CONTROL_114 = 242, 00281 MIDI_SIGNAL_CONTROL_115 = 243, 00282 MIDI_SIGNAL_CONTROL_116 = 244, 00283 MIDI_SIGNAL_CONTROL_117 = 245, 00284 MIDI_SIGNAL_CONTROL_118 = 246, 00285 MIDI_SIGNAL_CONTROL_119 = 247, 00286 MIDI_SIGNAL_CONTROL_120 = 248, 00287 MIDI_SIGNAL_CONTROL_121 = 249, 00288 MIDI_SIGNAL_CONTROL_122 = 250, 00289 MIDI_SIGNAL_CONTROL_123 = 251, 00290 MIDI_SIGNAL_CONTROL_124 = 252, 00291 MIDI_SIGNAL_CONTROL_125 = 253, 00292 MIDI_SIGNAL_CONTROL_126 = 254, 00293 MIDI_SIGNAL_CONTROL_127 = 255, 00294 }; 00295 enum MidiControlType { 00296 MIDI_CONTROL_NONE = 0, 00297 MIDI_CONTROL_CONTINUOUS_0 = 64, 00298 MIDI_CONTROL_CONTINUOUS_1 = 65, 00299 MIDI_CONTROL_CONTINUOUS_2 = 66, 00300 MIDI_CONTROL_CONTINUOUS_3 = 67, 00301 MIDI_CONTROL_CONTINUOUS_4 = 68, 00302 MIDI_CONTROL_CONTINUOUS_5 = 69, 00303 MIDI_CONTROL_CONTINUOUS_6 = 70, 00304 MIDI_CONTROL_CONTINUOUS_7 = 71, 00305 MIDI_CONTROL_CONTINUOUS_8 = 72, 00306 MIDI_CONTROL_CONTINUOUS_9 = 73, 00307 MIDI_CONTROL_CONTINUOUS_10 = 74, 00308 MIDI_CONTROL_CONTINUOUS_11 = 75, 00309 MIDI_CONTROL_CONTINUOUS_12 = 76, 00310 MIDI_CONTROL_CONTINUOUS_13 = 77, 00311 MIDI_CONTROL_CONTINUOUS_14 = 78, 00312 MIDI_CONTROL_CONTINUOUS_15 = 79, 00313 MIDI_CONTROL_CONTINUOUS_16 = 80, 00314 MIDI_CONTROL_CONTINUOUS_17 = 81, 00315 MIDI_CONTROL_CONTINUOUS_18 = 82, 00316 MIDI_CONTROL_CONTINUOUS_19 = 83, 00317 MIDI_CONTROL_CONTINUOUS_20 = 84, 00318 MIDI_CONTROL_CONTINUOUS_21 = 85, 00319 MIDI_CONTROL_CONTINUOUS_22 = 86, 00320 MIDI_CONTROL_CONTINUOUS_23 = 87, 00321 MIDI_CONTROL_CONTINUOUS_24 = 88, 00322 MIDI_CONTROL_CONTINUOUS_25 = 89, 00323 MIDI_CONTROL_CONTINUOUS_26 = 90, 00324 MIDI_CONTROL_CONTINUOUS_27 = 91, 00325 MIDI_CONTROL_CONTINUOUS_28 = 92, 00326 MIDI_CONTROL_CONTINUOUS_29 = 93, 00327 MIDI_CONTROL_CONTINUOUS_30 = 94, 00328 MIDI_CONTROL_CONTINUOUS_31 = 95, 00329 MIDI_CONTROL_0 = 128, 00330 MIDI_CONTROL_1 = 129, 00331 MIDI_CONTROL_2 = 130, 00332 MIDI_CONTROL_3 = 131, 00333 MIDI_CONTROL_4 = 132, 00334 MIDI_CONTROL_5 = 133, 00335 MIDI_CONTROL_6 = 134, 00336 MIDI_CONTROL_7 = 135, 00337 MIDI_CONTROL_8 = 136, 00338 MIDI_CONTROL_9 = 137, 00339 MIDI_CONTROL_10 = 138, 00340 MIDI_CONTROL_11 = 139, 00341 MIDI_CONTROL_12 = 140, 00342 MIDI_CONTROL_13 = 141, 00343 MIDI_CONTROL_14 = 142, 00344 MIDI_CONTROL_15 = 143, 00345 MIDI_CONTROL_16 = 144, 00346 MIDI_CONTROL_17 = 145, 00347 MIDI_CONTROL_18 = 146, 00348 MIDI_CONTROL_19 = 147, 00349 MIDI_CONTROL_20 = 148, 00350 MIDI_CONTROL_21 = 149, 00351 MIDI_CONTROL_22 = 150, 00352 MIDI_CONTROL_23 = 151, 00353 MIDI_CONTROL_24 = 152, 00354 MIDI_CONTROL_25 = 153, 00355 MIDI_CONTROL_26 = 154, 00356 MIDI_CONTROL_27 = 155, 00357 MIDI_CONTROL_28 = 156, 00358 MIDI_CONTROL_29 = 157, 00359 MIDI_CONTROL_30 = 158, 00360 MIDI_CONTROL_31 = 159, 00361 MIDI_CONTROL_32 = 160, 00362 MIDI_CONTROL_33 = 161, 00363 MIDI_CONTROL_34 = 162, 00364 MIDI_CONTROL_35 = 163, 00365 MIDI_CONTROL_36 = 164, 00366 MIDI_CONTROL_37 = 165, 00367 MIDI_CONTROL_38 = 166, 00368 MIDI_CONTROL_39 = 167, 00369 MIDI_CONTROL_40 = 168, 00370 MIDI_CONTROL_41 = 169, 00371 MIDI_CONTROL_42 = 170, 00372 MIDI_CONTROL_43 = 171, 00373 MIDI_CONTROL_44 = 172, 00374 MIDI_CONTROL_45 = 173, 00375 MIDI_CONTROL_46 = 174, 00376 MIDI_CONTROL_47 = 175, 00377 MIDI_CONTROL_48 = 176, 00378 MIDI_CONTROL_49 = 177, 00379 MIDI_CONTROL_50 = 178, 00380 MIDI_CONTROL_51 = 179, 00381 MIDI_CONTROL_52 = 180, 00382 MIDI_CONTROL_53 = 181, 00383 MIDI_CONTROL_54 = 182, 00384 MIDI_CONTROL_55 = 183, 00385 MIDI_CONTROL_56 = 184, 00386 MIDI_CONTROL_57 = 185, 00387 MIDI_CONTROL_58 = 186, 00388 MIDI_CONTROL_59 = 187, 00389 MIDI_CONTROL_60 = 188, 00390 MIDI_CONTROL_61 = 189, 00391 MIDI_CONTROL_62 = 190, 00392 MIDI_CONTROL_63 = 191, 00393 MIDI_CONTROL_64 = 192, 00394 MIDI_CONTROL_65 = 193, 00395 MIDI_CONTROL_66 = 194, 00396 MIDI_CONTROL_67 = 195, 00397 MIDI_CONTROL_68 = 196, 00398 MIDI_CONTROL_69 = 197, 00399 MIDI_CONTROL_70 = 198, 00400 MIDI_CONTROL_71 = 199, 00401 MIDI_CONTROL_72 = 200, 00402 MIDI_CONTROL_73 = 201, 00403 MIDI_CONTROL_74 = 202, 00404 MIDI_CONTROL_75 = 203, 00405 MIDI_CONTROL_76 = 204, 00406 MIDI_CONTROL_77 = 205, 00407 MIDI_CONTROL_78 = 206, 00408 MIDI_CONTROL_79 = 207, 00409 MIDI_CONTROL_80 = 208, 00410 MIDI_CONTROL_81 = 209, 00411 MIDI_CONTROL_82 = 210, 00412 MIDI_CONTROL_83 = 211, 00413 MIDI_CONTROL_84 = 212, 00414 MIDI_CONTROL_85 = 213, 00415 MIDI_CONTROL_86 = 214, 00416 MIDI_CONTROL_87 = 215, 00417 MIDI_CONTROL_88 = 216, 00418 MIDI_CONTROL_89 = 217, 00419 MIDI_CONTROL_90 = 218, 00420 MIDI_CONTROL_91 = 219, 00421 MIDI_CONTROL_92 = 220, 00422 MIDI_CONTROL_93 = 221, 00423 MIDI_CONTROL_94 = 222, 00424 MIDI_CONTROL_95 = 223, 00425 MIDI_CONTROL_96 = 224, 00426 MIDI_CONTROL_97 = 225, 00427 MIDI_CONTROL_98 = 226, 00428 MIDI_CONTROL_99 = 227, 00429 MIDI_CONTROL_100 = 228, 00430 MIDI_CONTROL_101 = 229, 00431 MIDI_CONTROL_102 = 230, 00432 MIDI_CONTROL_103 = 231, 00433 MIDI_CONTROL_104 = 232, 00434 MIDI_CONTROL_105 = 233, 00435 MIDI_CONTROL_106 = 234, 00436 MIDI_CONTROL_107 = 235, 00437 MIDI_CONTROL_108 = 236, 00438 MIDI_CONTROL_109 = 237, 00439 MIDI_CONTROL_110 = 238, 00440 MIDI_CONTROL_111 = 239, 00441 MIDI_CONTROL_112 = 240, 00442 MIDI_CONTROL_113 = 241, 00443 MIDI_CONTROL_114 = 242, 00444 MIDI_CONTROL_115 = 243, 00445 MIDI_CONTROL_116 = 244, 00446 MIDI_CONTROL_117 = 245, 00447 MIDI_CONTROL_118 = 246, 00448 MIDI_CONTROL_119 = 247, 00449 MIDI_CONTROL_120 = 248, 00450 MIDI_CONTROL_121 = 249, 00451 MIDI_CONTROL_122 = 250, 00452 MIDI_CONTROL_123 = 251, 00453 MIDI_CONTROL_124 = 252, 00454 MIDI_CONTROL_125 = 253, 00455 MIDI_CONTROL_126 = 254, 00456 MIDI_CONTROL_127 = 255, 00457 }; 00458 enum MidiChannelEventType { 00459 MIDI_EVENT_NONE = 0, 00460 MIDI_EVENT_NOTE_OFF = 1, 00461 MIDI_EVENT_NOTE_ON = 2, 00462 MIDI_EVENT_KEY_PRESSURE = 3, 00463 MIDI_EVENT_CONTROL_CHANGE = 4, 00464 MIDI_EVENT_PROGRAM_CHANGE = 5, 00465 MIDI_EVENT_CHANNEL_PRESSURE = 6, 00466 MIDI_EVENT_PITCH_BEND = 7, 00467 MIDI_EVENT_SYS_EX = 8, 00468 MIDI_EVENT_SONG_POINTER = 9, 00469 MIDI_EVENT_SONG_SELECT = 10, 00470 MIDI_EVENT_TUNE = 11, 00471 MIDI_EVENT_TIMING_CLOCK = 12, 00472 MIDI_EVENT_SONG_START = 13, 00473 MIDI_EVENT_SONG_CONTINUE = 14, 00474 MIDI_EVENT_SONG_STOP = 15, 00475 MIDI_EVENT_ACTIVE_SENSING = 16, 00476 MIDI_EVENT_SYSTEM_RESET = 17, 00477 }; 00478 00479 00480 /* sequence definitions */ 00481 class IntSeq : public Sfi::Sequence< Sfi::Int > { 00482 public: 00483 IntSeq (unsigned int n = 0) : Sfi::Sequence< Sfi::Int > (n) {} 00484 static inline ::Bse::IntSeq from_seq (SfiSeq *seq); 00485 static inline SfiSeq *to_seq (const ::Bse::IntSeq & seq); 00486 static inline ::Bse::IntSeq value_get_boxed (const GValue *value); 00487 static inline void value_set_boxed (GValue *value, const ::Bse::IntSeq & self); 00488 static inline const char* options () { return ""; } 00489 static inline const char* blurb () { return ""; } 00490 static inline const char* authors () { return ""; } 00491 static inline const char* license () { return ""; } 00492 static inline const char* type_name () { return "BseIntSeq"; } 00493 static inline GParamSpec* get_element (); 00494 }; 00495 00496 class TypeSeq : public Sfi::Sequence< Sfi::String > { 00497 public: 00498 TypeSeq (unsigned int n = 0) : Sfi::Sequence< Sfi::String > (n) {} 00499 static inline ::Bse::TypeSeq from_seq (SfiSeq *seq); 00500 static inline SfiSeq *to_seq (const ::Bse::TypeSeq & seq); 00501 static inline ::Bse::TypeSeq value_get_boxed (const GValue *value); 00502 static inline void value_set_boxed (GValue *value, const ::Bse::TypeSeq & self); 00503 static inline const char* options () { return ""; } 00504 static inline const char* blurb () { return ""; } 00505 static inline const char* authors () { return ""; } 00506 static inline const char* license () { return ""; } 00507 static inline const char* type_name () { return "BseTypeSeq"; } 00508 static inline GParamSpec* get_element (); 00509 }; 00510 00511 class StringSeq : public Sfi::Sequence< Sfi::String > { 00512 public: 00513 StringSeq (unsigned int n = 0) : Sfi::Sequence< Sfi::String > (n) {} 00514 static inline ::Bse::StringSeq from_seq (SfiSeq *seq); 00515 static inline SfiSeq *to_seq (const ::Bse::StringSeq & seq); 00516 static inline ::Bse::StringSeq value_get_boxed (const GValue *value); 00517 static inline void value_set_boxed (GValue *value, const ::Bse::StringSeq & self); 00518 static inline const char* options () { return ""; } 00519 static inline const char* blurb () { return ""; } 00520 static inline const char* authors () { return ""; } 00521 static inline const char* license () { return ""; } 00522 static inline const char* type_name () { return "BseStringSeq"; } 00523 static inline GParamSpec* get_element (); 00524 }; 00525 00526 class FloatSeq : public Sfi::Sequence< Sfi::Real > { 00527 public: 00528 FloatSeq (unsigned int n = 0) : Sfi::Sequence< Sfi::Real > (n) {} 00529 static inline ::Bse::FloatSeq from_seq (SfiSeq *seq); 00530 static inline SfiSeq *to_seq (const ::Bse::FloatSeq & seq); 00531 static inline ::Bse::FloatSeq value_get_boxed (const GValue *value); 00532 static inline void value_set_boxed (GValue *value, const ::Bse::FloatSeq & self); 00533 static inline const char* options () { return ""; } 00534 static inline const char* blurb () { return ""; } 00535 static inline const char* authors () { return ""; } 00536 static inline const char* license () { return ""; } 00537 static inline const char* type_name () { return "BseFloatSeq"; } 00538 static inline GParamSpec* get_element (); 00539 }; 00540 00541 class NoteSeq : public Sfi::Sequence< Sfi::Int > { 00542 public: 00543 NoteSeq (unsigned int n = 0) : Sfi::Sequence< Sfi::Int > (n) {} 00544 static inline ::Bse::NoteSeq from_seq (SfiSeq *seq); 00545 static inline SfiSeq *to_seq (const ::Bse::NoteSeq & seq); 00546 static inline ::Bse::NoteSeq value_get_boxed (const GValue *value); 00547 static inline void value_set_boxed (GValue *value, const ::Bse::NoteSeq & self); 00548 static inline const char* options () { return ""; } 00549 static inline const char* blurb () { return ""; } 00550 static inline const char* authors () { return ""; } 00551 static inline const char* license () { return ""; } 00552 static inline const char* type_name () { return "BseNoteSeq"; } 00553 static inline GParamSpec* get_element (); 00554 }; 00555 00556 class ItemSeq : public Sfi::Sequence< BseItem* > { 00557 public: 00558 ItemSeq (unsigned int n = 0) : Sfi::Sequence< BseItem* > (n) {} 00559 static inline ::Bse::ItemSeq from_seq (SfiSeq *seq); 00560 static inline SfiSeq *to_seq (const ::Bse::ItemSeq & seq); 00561 static inline ::Bse::ItemSeq value_get_boxed (const GValue *value); 00562 static inline void value_set_boxed (GValue *value, const ::Bse::ItemSeq & self); 00563 static inline const char* options () { return ""; } 00564 static inline const char* blurb () { return "A list of BSE items or derived types."; } 00565 static inline const char* authors () { return ""; } 00566 static inline const char* license () { return ""; } 00567 static inline const char* type_name () { return "BseItemSeq"; } 00568 static inline GParamSpec* get_element (); 00569 }; 00570 00571 class PartNoteSeq : public Sfi::Sequence< ::Bse::PartNoteHandle > { 00572 public: 00573 PartNoteSeq (unsigned int n = 0) : Sfi::Sequence< ::Bse::PartNoteHandle > (n) {} 00574 static inline ::Bse::PartNoteSeq from_seq (SfiSeq *seq); 00575 static inline SfiSeq *to_seq (const ::Bse::PartNoteSeq & seq); 00576 static inline ::Bse::PartNoteSeq value_get_boxed (const GValue *value); 00577 static inline void value_set_boxed (GValue *value, const ::Bse::PartNoteSeq & self); 00578 static inline const char* options () { return ""; } 00579 static inline const char* blurb () { return "A list of part notes"; } 00580 static inline const char* authors () { return ""; } 00581 static inline const char* license () { return ""; } 00582 static inline const char* type_name () { return "BsePartNoteSeq"; } 00583 static inline GParamSpec* get_element (); 00584 }; 00585 00586 class PartControlSeq : public Sfi::Sequence< ::Bse::PartControlHandle > { 00587 public: 00588 PartControlSeq (unsigned int n = 0) : Sfi::Sequence< ::Bse::PartControlHandle > (n) {} 00589 static inline ::Bse::PartControlSeq from_seq (SfiSeq *seq); 00590 static inline SfiSeq *to_seq (const ::Bse::PartControlSeq & seq); 00591 static inline ::Bse::PartControlSeq value_get_boxed (const GValue *value); 00592 static inline void value_set_boxed (GValue *value, const ::Bse::PartControlSeq & self); 00593 static inline const char* options () { return ""; } 00594 static inline const char* blurb () { return "A list of part control events"; } 00595 static inline const char* authors () { return ""; } 00596 static inline const char* license () { return ""; } 00597 static inline const char* type_name () { return "BsePartControlSeq"; } 00598 static inline GParamSpec* get_element (); 00599 }; 00600 00601 class PixelSeq : public Sfi::Sequence< Sfi::Int > { 00602 public: 00603 PixelSeq (unsigned int n = 0) : Sfi::Sequence< Sfi::Int > (n) {} 00604 static inline ::Bse::PixelSeq from_seq (SfiSeq *seq); 00605 static inline SfiSeq *to_seq (const ::Bse::PixelSeq & seq); 00606 static inline ::Bse::PixelSeq value_get_boxed (const GValue *value); 00607 static inline void value_set_boxed (GValue *value, const ::Bse::PixelSeq & self); 00608 static inline const char* options () { return ""; } 00609 static inline const char* blurb () { return ""; } 00610 static inline const char* authors () { return ""; } 00611 static inline const char* license () { return ""; } 00612 static inline const char* type_name () { return "BsePixelSeq"; } 00613 static inline GParamSpec* get_element (); 00614 }; 00615 00616 class CategorySeq : public Sfi::Sequence< ::Bse::CategoryHandle > { 00617 public: 00618 CategorySeq (unsigned int n = 0) : Sfi::Sequence< ::Bse::CategoryHandle > (n) {} 00619 static inline ::Bse::CategorySeq from_seq (SfiSeq *seq); 00620 static inline SfiSeq *to_seq (const ::Bse::CategorySeq & seq); 00621 static inline ::Bse::CategorySeq value_get_boxed (const GValue *value); 00622 static inline void value_set_boxed (GValue *value, const ::Bse::CategorySeq & self); 00623 static inline const char* options () { return ""; } 00624 static inline const char* blurb () { return ""; } 00625 static inline const char* authors () { return ""; } 00626 static inline const char* license () { return ""; } 00627 static inline const char* type_name () { return "BseCategorySeq"; } 00628 static inline GParamSpec* get_element (); 00629 }; 00630 00631 class DotSeq : public Sfi::Sequence< ::Bse::DotHandle > { 00632 public: 00633 DotSeq (unsigned int n = 0) : Sfi::Sequence< ::Bse::DotHandle > (n) {} 00634 static inline ::Bse::DotSeq from_seq (SfiSeq *seq); 00635 static inline SfiSeq *to_seq (const ::Bse::DotSeq & seq); 00636 static inline ::Bse::DotSeq value_get_boxed (const GValue *value); 00637 static inline void value_set_boxed (GValue *value, const ::Bse::DotSeq & self); 00638 static inline const char* options () { return ""; } 00639 static inline const char* blurb () { return ""; } 00640 static inline const char* authors () { return ""; } 00641 static inline const char* license () { return ""; } 00642 static inline const char* type_name () { return "BseDotSeq"; } 00643 static inline GParamSpec* get_element (); 00644 }; 00645 00646 class PartLinkSeq : public Sfi::Sequence< ::Bse::PartLinkHandle > { 00647 public: 00648 PartLinkSeq (unsigned int n = 0) : Sfi::Sequence< ::Bse::PartLinkHandle > (n) {} 00649 static inline ::Bse::PartLinkSeq from_seq (SfiSeq *seq); 00650 static inline SfiSeq *to_seq (const ::Bse::PartLinkSeq & seq); 00651 static inline ::Bse::PartLinkSeq value_get_boxed (const GValue *value); 00652 static inline void value_set_boxed (GValue *value, const ::Bse::PartLinkSeq & self); 00653 static inline const char* options () { return ""; } 00654 static inline const char* blurb () { return ""; } 00655 static inline const char* authors () { return ""; } 00656 static inline const char* license () { return ""; } 00657 static inline const char* type_name () { return "BsePartLinkSeq"; } 00658 static inline GParamSpec* get_element (); 00659 }; 00660 00661 class TrackPartSeq : public Sfi::Sequence< ::Bse::TrackPartHandle > { 00662 public: 00663 TrackPartSeq (unsigned int n = 0) : Sfi::Sequence< ::Bse::TrackPartHandle > (n) {} 00664 static inline ::Bse::TrackPartSeq from_seq (SfiSeq *seq); 00665 static inline SfiSeq *to_seq (const ::Bse::TrackPartSeq & seq); 00666 static inline ::Bse::TrackPartSeq value_get_boxed (const GValue *value); 00667 static inline void value_set_boxed (GValue *value, const ::Bse::TrackPartSeq & self); 00668 static inline const char* options () { return ""; } 00669 static inline const char* blurb () { return ""; } 00670 static inline const char* authors () { return ""; } 00671 static inline const char* license () { return ""; } 00672 static inline const char* type_name () { return "BseTrackPartSeq"; } 00673 static inline GParamSpec* get_element (); 00674 }; 00675 00676 00677 00678 /* record definitions */ 00679 class MidiChannelEvent : public ::Sfi::GNewable { 00680 public: 00681 ::Bse::MidiChannelEventType event_type; 00682 Sfi::Int channel; 00683 Sfi::Num tick_stamp; 00684 Sfi::Real frequency; 00685 Sfi::Real velocity; 00686 Sfi::Int control; 00687 Sfi::Real value; 00688 Sfi::Int program; 00689 Sfi::Real intensity; 00690 Sfi::Real pitch_bend; 00691 Sfi::Int song_pointer; 00692 Sfi::Int song_number; 00693 static inline ::Bse::MidiChannelEventHandle from_rec (SfiRec *rec); 00694 static inline SfiRec *to_rec (const ::Bse::MidiChannelEventHandle & ptr); 00695 static inline ::Bse::MidiChannelEventHandle value_get_boxed (const GValue *value); 00696 static inline void value_set_boxed (GValue *value, const ::Bse::MidiChannelEventHandle & self); 00697 static inline const char* options () { return ""; } 00698 static inline const char* blurb () { return ""; } 00699 static inline const char* authors () { return ""; } 00700 static inline const char* license () { return ""; } 00701 static inline const char* type_name () { return "BseMidiChannelEvent"; } 00702 static inline SfiRecFields get_fields (); 00703 }; 00704 00705 class PropertyCandidates : public ::Sfi::GNewable { 00706 public: 00707 Sfi::String label; 00708 Sfi::String tooltip; 00709 ::Bse::ItemSeq items; 00710 ::Bse::TypeSeq partitions; 00711 static inline ::Bse::PropertyCandidatesHandle from_rec (SfiRec *rec); 00712 static inline SfiRec *to_rec (const ::Bse::PropertyCandidatesHandle & ptr); 00713 static inline ::Bse::PropertyCandidatesHandle value_get_boxed (const GValue *value); 00714 static inline void value_set_boxed (GValue *value, const ::Bse::PropertyCandidatesHandle & self); 00715 static inline const char* options () { return ""; } 00716 static inline const char* blurb () { return "A strcuture describing tentative property values."; } 00717 static inline const char* authors () { return ""; } 00718 static inline const char* license () { return ""; } 00719 static inline const char* type_name () { return "BsePropertyCandidates"; } 00720 static inline SfiRecFields get_fields (); 00721 }; 00722 00723 class PartNote : public ::Sfi::GNewable { 00724 public: 00725 Sfi::Int id; 00726 Sfi::Int channel; 00727 Sfi::Int tick; 00728 Sfi::Int duration; 00729 Sfi::Int note; 00730 Sfi::Int fine_tune; 00731 Sfi::Real velocity; 00732 bool selected; 00733 static inline ::Bse::PartNoteHandle from_rec (SfiRec *rec); 00734 static inline SfiRec *to_rec (const ::Bse::PartNoteHandle & ptr); 00735 static inline ::Bse::PartNoteHandle value_get_boxed (const GValue *value); 00736 static inline void value_set_boxed (GValue *value, const ::Bse::PartNoteHandle & self); 00737 static inline const char* options () { return ""; } 00738 static inline const char* blurb () { return "Part specific note representation"; } 00739 static inline const char* authors () { return ""; } 00740 static inline const char* license () { return ""; } 00741 static inline const char* type_name () { return "BsePartNote"; } 00742 static inline SfiRecFields get_fields (); 00743 }; 00744 00745 class PartControl : public ::Sfi::GNewable { 00746 public: 00747 Sfi::Int id; 00748 Sfi::Int tick; 00749 ::Bse::MidiSignalType control_type; 00750 Sfi::Real value; 00751 bool selected; 00752 static inline ::Bse::PartControlHandle from_rec (SfiRec *rec); 00753 static inline SfiRec *to_rec (const ::Bse::PartControlHandle & ptr); 00754 static inline ::Bse::PartControlHandle value_get_boxed (const GValue *value); 00755 static inline void value_set_boxed (GValue *value, const ::Bse::PartControlHandle & self); 00756 static inline const char* options () { return ""; } 00757 static inline const char* blurb () { return "Part specific control event representation"; } 00758 static inline const char* authors () { return ""; } 00759 static inline const char* license () { return ""; } 00760 static inline const char* type_name () { return "BsePartControl"; } 00761 static inline SfiRecFields get_fields (); 00762 }; 00763 00764 class NoteDescription : public ::Sfi::GNewable { 00765 public: 00766 ::Bse::MusicalTuningType musical_tuning; 00767 Sfi::Int note; 00768 Sfi::Int octave; 00769 Sfi::Real freq; 00770 Sfi::Int fine_tune; 00771 Sfi::Int semitone; 00772 bool upshift; 00773 Sfi::Int letter; 00774 Sfi::String name; 00775 Sfi::Int max_fine_tune; 00776 Sfi::Int kammer_note; 00777 static inline ::Bse::NoteDescriptionHandle from_rec (SfiRec *rec); 00778 static inline SfiRec *to_rec (const ::Bse::NoteDescriptionHandle & ptr); 00779 static inline ::Bse::NoteDescriptionHandle value_get_boxed (const GValue *value); 00780 static inline void value_set_boxed (GValue *value, const ::Bse::NoteDescriptionHandle & self); 00781 static inline const char* options () { return ""; } 00782 static inline const char* blurb () { return "A note description provides all necessary details about a specific note. Various procedures exist to retrieve a note description; given different key values. The max_fine_tune and kammer_note fields are constants, which are provided for compatibility reasons and will vanish in future APIs."; } 00783 static inline const char* authors () { return ""; } 00784 static inline const char* license () { return ""; } 00785 static inline const char* type_name () { return "BseNoteDescription"; } 00786 static inline SfiRecFields get_fields (); 00787 }; 00788 00789 class NoteSequence : public ::Sfi::GNewable { 00790 public: 00791 Sfi::Int offset; 00792 ::Bse::NoteSeq notes; 00793 static inline ::Bse::NoteSequenceHandle from_rec (SfiRec *rec); 00794 static inline SfiRec *to_rec (const ::Bse::NoteSequenceHandle & ptr); 00795 static inline ::Bse::NoteSequenceHandle value_get_boxed (const GValue *value); 00796 static inline void value_set_boxed (GValue *value, const ::Bse::NoteSequenceHandle & self); 00797 static inline const char* options () { return ""; } 00798 static inline const char* blurb () { return ""; } 00799 static inline const char* authors () { return ""; } 00800 static inline const char* license () { return ""; } 00801 static inline const char* type_name () { return "BseNoteSequence"; } 00802 static inline SfiRecFields get_fields (); 00803 }; 00804 00805 class Icon : public ::Sfi::GNewable { 00806 public: 00807 Sfi::Int width; 00808 Sfi::Int height; 00809 ::Bse::PixelSeq pixel_seq; 00810 static inline ::Bse::IconHandle from_rec (SfiRec *rec); 00811 static inline SfiRec *to_rec (const ::Bse::IconHandle & ptr); 00812 static inline ::Bse::IconHandle value_get_boxed (const GValue *value); 00813 static inline void value_set_boxed (GValue *value, const ::Bse::IconHandle & self); 00814 static inline const char* options () { return ""; } 00815 static inline const char* blurb () { return "BSE icon representation."; } 00816 static inline const char* authors () { return ""; } 00817 static inline const char* license () { return ""; } 00818 static inline const char* type_name () { return "BseIcon"; } 00819 static inline SfiRecFields get_fields (); 00820 }; 00821 00822 class Category : public ::Sfi::GNewable { 00823 public: 00824 Sfi::Int category_id; 00825 Sfi::String category; 00826 Sfi::Int mindex; 00827 Sfi::Int lindex; 00828 Sfi::String type; 00829 ::Bse::IconHandle icon; 00830 static inline ::Bse::CategoryHandle from_rec (SfiRec *rec); 00831 static inline SfiRec *to_rec (const ::Bse::CategoryHandle & ptr); 00832 static inline ::Bse::CategoryHandle value_get_boxed (const GValue *value); 00833 static inline void value_set_boxed (GValue *value, const ::Bse::CategoryHandle & self); 00834 static inline const char* options () { return ""; } 00835 static inline const char* blurb () { return ""; } 00836 static inline const char* authors () { return ""; } 00837 static inline const char* license () { return ""; } 00838 static inline const char* type_name () { return "BseCategory"; } 00839 static inline SfiRecFields get_fields (); 00840 }; 00841 00842 class Dot : public ::Sfi::GNewable { 00843 public: 00844 Sfi::Real x; 00845 Sfi::Real y; 00846 static inline ::Bse::DotHandle from_rec (SfiRec *rec); 00847 static inline SfiRec *to_rec (const ::Bse::DotHandle & ptr); 00848 static inline ::Bse::DotHandle value_get_boxed (const GValue *value); 00849 static inline void value_set_boxed (GValue *value, const ::Bse::DotHandle & self); 00850 static inline const char* options () { return ""; } 00851 static inline const char* blurb () { return ""; } 00852 static inline const char* authors () { return ""; } 00853 static inline const char* license () { return ""; } 00854 static inline const char* type_name () { return "BseDot"; } 00855 static inline SfiRecFields get_fields (); 00856 }; 00857 00858 class PartLink : public ::Sfi::GNewable { 00859 public: 00860 BseTrack* track; 00861 Sfi::Int tick; 00862 BsePart* part; 00863 Sfi::Int duration; 00864 static inline ::Bse::PartLinkHandle from_rec (SfiRec *rec); 00865 static inline SfiRec *to_rec (const ::Bse::PartLinkHandle & ptr); 00866 static inline ::Bse::PartLinkHandle value_get_boxed (const GValue *value); 00867 static inline void value_set_boxed (GValue *value, const ::Bse::PartLinkHandle & self); 00868 static inline const char* options () { return ""; } 00869 static inline const char* blurb () { return ""; } 00870 static inline const char* authors () { return ""; } 00871 static inline const char* license () { return ""; } 00872 static inline const char* type_name () { return "BsePartLink"; } 00873 static inline SfiRecFields get_fields (); 00874 }; 00875 00876 class TrackPart : public ::Sfi::GNewable { 00877 public: 00878 Sfi::Int tick; 00879 BsePart* part; 00880 Sfi::Int duration; 00881 static inline ::Bse::TrackPartHandle from_rec (SfiRec *rec); 00882 static inline SfiRec *to_rec (const ::Bse::TrackPartHandle & ptr); 00883 static inline ::Bse::TrackPartHandle value_get_boxed (const GValue *value); 00884 static inline void value_set_boxed (GValue *value, const ::Bse::TrackPartHandle & self); 00885 static inline const char* options () { return ""; } 00886 static inline const char* blurb () { return ""; } 00887 static inline const char* authors () { return ""; } 00888 static inline const char* license () { return ""; } 00889 static inline const char* type_name () { return "BseTrackPart"; } 00890 static inline SfiRecFields get_fields (); 00891 }; 00892 00893 class SongTiming : public ::Sfi::GNewable { 00894 public: 00895 Sfi::Int tick; 00896 Sfi::Real bpm; 00897 Sfi::Int numerator; 00898 Sfi::Int denominator; 00899 Sfi::Int tpqn; 00900 Sfi::Int tpt; 00901 Sfi::Real stamp_ticks; 00902 static inline ::Bse::SongTimingHandle from_rec (SfiRec *rec); 00903 static inline SfiRec *to_rec (const ::Bse::SongTimingHandle & ptr); 00904 static inline ::Bse::SongTimingHandle value_get_boxed (const GValue *value); 00905 static inline void value_set_boxed (GValue *value, const ::Bse::SongTimingHandle & self); 00906 static inline const char* options () { return ""; } 00907 static inline const char* blurb () { return ""; } 00908 static inline const char* authors () { return ""; } 00909 static inline const char* license () { return ""; } 00910 static inline const char* type_name () { return "BseSongTiming"; } 00911 static inline SfiRecFields get_fields (); 00912 }; 00913 00914 class SampleFileInfo : public ::Sfi::GNewable { 00915 public: 00916 Sfi::String file; 00917 Sfi::Int size; 00918 Sfi::Num mtime; 00919 Sfi::String loader; 00920 ::Bse::StringSeq waves; 00921 Sfi::Int error; 00922 static inline ::Bse::SampleFileInfoHandle from_rec (SfiRec *rec); 00923 static inline SfiRec *to_rec (const ::Bse::SampleFileInfoHandle & ptr); 00924 static inline ::Bse::SampleFileInfoHandle value_get_boxed (const GValue *value); 00925 static inline void value_set_boxed (GValue *value, const ::Bse::SampleFileInfoHandle & self); 00926 static inline const char* options () { return ""; } 00927 static inline const char* blurb () { return ""; } 00928 static inline const char* authors () { return ""; } 00929 static inline const char* license () { return ""; } 00930 static inline const char* type_name () { return "BseSampleFileInfo"; } 00931 static inline SfiRecFields get_fields (); 00932 }; 00933 00934 class GConfig : public ::Sfi::GNewable { 00935 public: 00936 Sfi::Int synth_latency; 00937 Sfi::Int synth_mixing_freq; 00938 Sfi::Int synth_control_freq; 00939 bool invert_sustain; 00940 Sfi::String author_default; 00941 Sfi::String license_default; 00942 Sfi::String sample_path; 00943 Sfi::String effect_path; 00944 Sfi::String instrument_path; 00945 Sfi::String script_path; 00946 Sfi::String plugin_path; 00947 Sfi::String ladspa_path; 00948 static inline ::Bse::GConfigHandle from_rec (SfiRec *rec); 00949 static inline SfiRec *to_rec (const ::Bse::GConfigHandle & ptr); 00950 static inline ::Bse::GConfigHandle value_get_boxed (const GValue *value); 00951 static inline void value_set_boxed (GValue *value, const ::Bse::GConfigHandle & self); 00952 static inline const char* options () { return ""; } 00953 static inline const char* blurb () { return ""; } 00954 static inline const char* authors () { return ""; } 00955 static inline const char* license () { return ""; } 00956 static inline const char* type_name () { return "BseGConfig"; } 00957 static inline SfiRecFields get_fields (); 00958 }; 00959 00960 00961 00962 /* enum declarations */ 00963 BSE_CXX_DECLARE_ENUM (MusicalTuningType, "BseMusicalTuningType", 17, 00964 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_12_TET, "BSE_MUSICAL_TUNING_12_TET", _("12 Tone Equal Temperament") ); 00965 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_7_TET, "BSE_MUSICAL_TUNING_7_TET", _("7 Tone Equal Temperament") ); 00966 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_5_TET, "BSE_MUSICAL_TUNING_5_TET", _("5 Tone Equal Temperament") ); 00967 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_DIATONIC_SCALE, "BSE_MUSICAL_TUNING_DIATONIC_SCALE", _("Diatonic Scale") ); 00968 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_INDIAN_SCALE, "BSE_MUSICAL_TUNING_INDIAN_SCALE", _("Indian Scale") ); 00969 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_PYTHAGOREAN_TUNING, "BSE_MUSICAL_TUNING_PYTHAGOREAN_TUNING", _("Pythagorean Tuning") ); 00970 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_PENTATONIC_5_LIMIT, "BSE_MUSICAL_TUNING_PENTATONIC_5_LIMIT", _("Pentatonic 5-limit") ); 00971 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_PENTATONIC_BLUES, "BSE_MUSICAL_TUNING_PENTATONIC_BLUES", _("Pentatonic Blues") ); 00972 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_PENTATONIC_GOGO, "BSE_MUSICAL_TUNING_PENTATONIC_GOGO", _("Pentatonic Gogo") ); 00973 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_QUARTER_COMMA_MEANTONE, "BSE_MUSICAL_TUNING_QUARTER_COMMA_MEANTONE", _("Quarter-Comma Meantone") ); 00974 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_SILBERMANN_SORGE, "BSE_MUSICAL_TUNING_SILBERMANN_SORGE", _("Silbermann-Sorge Temperament") ); 00975 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_WERCKMEISTER_3, "BSE_MUSICAL_TUNING_WERCKMEISTER_3", _("Werckmeister III") ); 00976 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_WERCKMEISTER_4, "BSE_MUSICAL_TUNING_WERCKMEISTER_4", _("Werckmeister IV") ); 00977 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_WERCKMEISTER_5, "BSE_MUSICAL_TUNING_WERCKMEISTER_5", _("Werckmeister V") ); 00978 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_WERCKMEISTER_6, "BSE_MUSICAL_TUNING_WERCKMEISTER_6", _("Werckmeister VI") ); 00979 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_KIRNBERGER_3, "BSE_MUSICAL_TUNING_KIRNBERGER_3", _("Kirnberger III") ); 00980 *v++ = ::Bse::EnumValue (MUSICAL_TUNING_YOUNG, "BSE_MUSICAL_TUNING_YOUNG", _("Young Temperament") ); 00981 ); 00982 BSE_CXX_DECLARE_ENUM (MidiSignalType, "BseMidiSignalType", 172, 00983 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_PROGRAM, "BSE_MIDI_SIGNAL_PROGRAM", _("Program Change") ); 00984 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_PRESSURE, "BSE_MIDI_SIGNAL_PRESSURE", _("Channel Pressure") ); 00985 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_PITCH_BEND, "BSE_MIDI_SIGNAL_PITCH_BEND", _("Pitch Bend") ); 00986 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_VELOCITY, "BSE_MIDI_SIGNAL_VELOCITY", _("Note Velocity") ); 00987 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_FINE_TUNE, "BSE_MIDI_SIGNAL_FINE_TUNE", _("Note Fine Tune") ); 00988 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_0, "BSE_MIDI_SIGNAL_CONTINUOUS_0", _("Bank Select") ); 00989 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_1, "BSE_MIDI_SIGNAL_CONTINUOUS_1", _("Modulation Depth") ); 00990 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_2, "BSE_MIDI_SIGNAL_CONTINUOUS_2", _("Breath Control") ); 00991 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_3, "BSE_MIDI_SIGNAL_CONTINUOUS_3", _("Continuous 3") ); 00992 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_4, "BSE_MIDI_SIGNAL_CONTINUOUS_4", _("Foot Controller") ); 00993 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_5, "BSE_MIDI_SIGNAL_CONTINUOUS_5", _("Portamento Time") ); 00994 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_6, "BSE_MIDI_SIGNAL_CONTINUOUS_6", _("Data Entry") ); 00995 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_7, "BSE_MIDI_SIGNAL_CONTINUOUS_7", _("Volume") ); 00996 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_8, "BSE_MIDI_SIGNAL_CONTINUOUS_8", _("Balance") ); 00997 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_9, "BSE_MIDI_SIGNAL_CONTINUOUS_9", _("Continuous 9") ); 00998 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_10, "BSE_MIDI_SIGNAL_CONTINUOUS_10", _("Panorama") ); 00999 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_11, "BSE_MIDI_SIGNAL_CONTINUOUS_11", _("Expression") ); 01000 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_12, "BSE_MIDI_SIGNAL_CONTINUOUS_12", _("Effect Control 1") ); 01001 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_13, "BSE_MIDI_SIGNAL_CONTINUOUS_13", _("Effect Control 2") ); 01002 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_14, "BSE_MIDI_SIGNAL_CONTINUOUS_14", _("Continuous 14") ); 01003 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_15, "BSE_MIDI_SIGNAL_CONTINUOUS_15", _("Continuous 15") ); 01004 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_16, "BSE_MIDI_SIGNAL_CONTINUOUS_16", _("General Purpose Controller 1") ); 01005 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_17, "BSE_MIDI_SIGNAL_CONTINUOUS_17", _("General Purpose Controller 2") ); 01006 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_18, "BSE_MIDI_SIGNAL_CONTINUOUS_18", _("General Purpose Controller 3") ); 01007 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_19, "BSE_MIDI_SIGNAL_CONTINUOUS_19", _("General Purpose Controller 4") ); 01008 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_20, "BSE_MIDI_SIGNAL_CONTINUOUS_20", _("Continuous 20") ); 01009 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_21, "BSE_MIDI_SIGNAL_CONTINUOUS_21", _("Continuous 21") ); 01010 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_22, "BSE_MIDI_SIGNAL_CONTINUOUS_22", _("Continuous 22") ); 01011 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_23, "BSE_MIDI_SIGNAL_CONTINUOUS_23", _("Continuous 23") ); 01012 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_24, "BSE_MIDI_SIGNAL_CONTINUOUS_24", _("Continuous 24") ); 01013 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_25, "BSE_MIDI_SIGNAL_CONTINUOUS_25", _("Continuous 25") ); 01014 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_26, "BSE_MIDI_SIGNAL_CONTINUOUS_26", _("Continuous 26") ); 01015 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_27, "BSE_MIDI_SIGNAL_CONTINUOUS_27", _("Continuous 27") ); 01016 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_28, "BSE_MIDI_SIGNAL_CONTINUOUS_28", _("Continuous 28") ); 01017 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_29, "BSE_MIDI_SIGNAL_CONTINUOUS_29", _("Continuous 29") ); 01018 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_30, "BSE_MIDI_SIGNAL_CONTINUOUS_30", _("Continuous 30") ); 01019 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTINUOUS_31, "BSE_MIDI_SIGNAL_CONTINUOUS_31", _("Continuous 31") ); 01020 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONSTANT_HIGH, "BSE_MIDI_SIGNAL_CONSTANT_HIGH", _("Constant HIGH") ); 01021 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONSTANT_CENTER, "BSE_MIDI_SIGNAL_CONSTANT_CENTER", _("Constant CENTER") ); 01022 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONSTANT_LOW, "BSE_MIDI_SIGNAL_CONSTANT_LOW", _("Constant LOW") ); 01023 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONSTANT_NEGATIVE_CENTER, "BSE_MIDI_SIGNAL_CONSTANT_NEGATIVE_CENTER", _("Constant Negative CENTER") ); 01024 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONSTANT_NEGATIVE_HIGH, "BSE_MIDI_SIGNAL_CONSTANT_NEGATIVE_HIGH", _("Constant Negative HIGH") ); 01025 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_PARAMETER, "BSE_MIDI_SIGNAL_PARAMETER", _("Registered Parameter") ); 01026 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_NON_PARAMETER, "BSE_MIDI_SIGNAL_NON_PARAMETER", _("Non-Registered Parameter") ); 01027 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_0, "BSE_MIDI_SIGNAL_CONTROL_0", _("Control 0 Bank Select MSB") ); 01028 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_1, "BSE_MIDI_SIGNAL_CONTROL_1", _("Control 1 Modulation Depth MSB") ); 01029 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_2, "BSE_MIDI_SIGNAL_CONTROL_2", _("Control 2 Breath Control MSB") ); 01030 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_3, "BSE_MIDI_SIGNAL_CONTROL_3", _("control-3") ); 01031 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_4, "BSE_MIDI_SIGNAL_CONTROL_4", _("Control 4 Foot Controller MSB") ); 01032 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_5, "BSE_MIDI_SIGNAL_CONTROL_5", _("Control 5 Portamento Time MSB") ); 01033 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_6, "BSE_MIDI_SIGNAL_CONTROL_6", _("Control 6 Data Entry MSB") ); 01034 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_7, "BSE_MIDI_SIGNAL_CONTROL_7", _("Control 7 Volume MSB") ); 01035 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_8, "BSE_MIDI_SIGNAL_CONTROL_8", _("Control 8 Balance MSB") ); 01036 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_9, "BSE_MIDI_SIGNAL_CONTROL_9", _("control-9") ); 01037 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_10, "BSE_MIDI_SIGNAL_CONTROL_10", _("Control 10 Panorama MSB") ); 01038 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_11, "BSE_MIDI_SIGNAL_CONTROL_11", _("Control 11 Expression MSB") ); 01039 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_12, "BSE_MIDI_SIGNAL_CONTROL_12", _("Control 12 Effect Control 1 MSB") ); 01040 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_13, "BSE_MIDI_SIGNAL_CONTROL_13", _("Control 13 Effect Control 2 MSB") ); 01041 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_14, "BSE_MIDI_SIGNAL_CONTROL_14", _("control-14") ); 01042 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_15, "BSE_MIDI_SIGNAL_CONTROL_15", _("control-15") ); 01043 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_16, "BSE_MIDI_SIGNAL_CONTROL_16", _("Control 16 General Purpose Controller 1 MSB") ); 01044 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_17, "BSE_MIDI_SIGNAL_CONTROL_17", _("Control 17 General Purpose Controller 2 MSB") ); 01045 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_18, "BSE_MIDI_SIGNAL_CONTROL_18", _("Control 18 General Purpose Controller 3 MSB") ); 01046 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_19, "BSE_MIDI_SIGNAL_CONTROL_19", _("Control 19 General Purpose Controller 4 MSB") ); 01047 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_20, "BSE_MIDI_SIGNAL_CONTROL_20", _("control-20") ); 01048 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_21, "BSE_MIDI_SIGNAL_CONTROL_21", _("control-21") ); 01049 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_22, "BSE_MIDI_SIGNAL_CONTROL_22", _("control-22") ); 01050 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_23, "BSE_MIDI_SIGNAL_CONTROL_23", _("control-23") ); 01051 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_24, "BSE_MIDI_SIGNAL_CONTROL_24", _("control-24") ); 01052 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_25, "BSE_MIDI_SIGNAL_CONTROL_25", _("control-25") ); 01053 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_26, "BSE_MIDI_SIGNAL_CONTROL_26", _("control-26") ); 01054 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_27, "BSE_MIDI_SIGNAL_CONTROL_27", _("control-27") ); 01055 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_28, "BSE_MIDI_SIGNAL_CONTROL_28", _("control-28") ); 01056 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_29, "BSE_MIDI_SIGNAL_CONTROL_29", _("control-29") ); 01057 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_30, "BSE_MIDI_SIGNAL_CONTROL_30", _("control-30") ); 01058 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_31, "BSE_MIDI_SIGNAL_CONTROL_31", _("control-31") ); 01059 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_32, "BSE_MIDI_SIGNAL_CONTROL_32", _("Control 32 Bank Select LSB") ); 01060 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_33, "BSE_MIDI_SIGNAL_CONTROL_33", _("Control 33 Modulation Depth LSB") ); 01061 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_34, "BSE_MIDI_SIGNAL_CONTROL_34", _("Control 34 Breath Control LSB") ); 01062 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_35, "BSE_MIDI_SIGNAL_CONTROL_35", _("control-35") ); 01063 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_36, "BSE_MIDI_SIGNAL_CONTROL_36", _("Control 36 Foot Controller LSB") ); 01064 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_37, "BSE_MIDI_SIGNAL_CONTROL_37", _("Control 37 Portamento Time LSB") ); 01065 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_38, "BSE_MIDI_SIGNAL_CONTROL_38", _("Control 38 Data Entry LSB") ); 01066 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_39, "BSE_MIDI_SIGNAL_CONTROL_39", _("Control 39 Volume LSB") ); 01067 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_40, "BSE_MIDI_SIGNAL_CONTROL_40", _("Control 40 Balance LSB") ); 01068 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_41, "BSE_MIDI_SIGNAL_CONTROL_41", _("control-41") ); 01069 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_42, "BSE_MIDI_SIGNAL_CONTROL_42", _("Control 42 Panorama LSB") ); 01070 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_43, "BSE_MIDI_SIGNAL_CONTROL_43", _("Control 43 Expression LSB") ); 01071 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_44, "BSE_MIDI_SIGNAL_CONTROL_44", _("Control 44 Effect Control 1 LSB") ); 01072 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_45, "BSE_MIDI_SIGNAL_CONTROL_45", _("Control 45 Effect Control 2 LSB") ); 01073 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_46, "BSE_MIDI_SIGNAL_CONTROL_46", _("control-46") ); 01074 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_47, "BSE_MIDI_SIGNAL_CONTROL_47", _("control-47") ); 01075 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_48, "BSE_MIDI_SIGNAL_CONTROL_48", _("Control 48 General Purpose Controller 1 LSB") ); 01076 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_49, "BSE_MIDI_SIGNAL_CONTROL_49", _("Control 49 General Purpose Controller 2 LSB") ); 01077 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_50, "BSE_MIDI_SIGNAL_CONTROL_50", _("Control 50 General Purpose Controller 3 LSB") ); 01078 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_51, "BSE_MIDI_SIGNAL_CONTROL_51", _("Control 51 General Purpose Controller 4 LSB") ); 01079 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_52, "BSE_MIDI_SIGNAL_CONTROL_52", _("control-52") ); 01080 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_53, "BSE_MIDI_SIGNAL_CONTROL_53", _("control-53") ); 01081 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_54, "BSE_MIDI_SIGNAL_CONTROL_54", _("control-54") ); 01082 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_55, "BSE_MIDI_SIGNAL_CONTROL_55", _("control-55") ); 01083 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_56, "BSE_MIDI_SIGNAL_CONTROL_56", _("control-56") ); 01084 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_57, "BSE_MIDI_SIGNAL_CONTROL_57", _("control-57") ); 01085 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_58, "BSE_MIDI_SIGNAL_CONTROL_58", _("control-58") ); 01086 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_59, "BSE_MIDI_SIGNAL_CONTROL_59", _("control-59") ); 01087 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_60, "BSE_MIDI_SIGNAL_CONTROL_60", _("control-60") ); 01088 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_61, "BSE_MIDI_SIGNAL_CONTROL_61", _("control-61") ); 01089 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_62, "BSE_MIDI_SIGNAL_CONTROL_62", _("control-62") ); 01090 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_63, "BSE_MIDI_SIGNAL_CONTROL_63", _("control-63") ); 01091 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_64, "BSE_MIDI_SIGNAL_CONTROL_64", _("Control 64 Damper Pedal Switch (Sustain)") ); 01092 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_65, "BSE_MIDI_SIGNAL_CONTROL_65", _("Control 65 Portamento Switch") ); 01093 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_66, "BSE_MIDI_SIGNAL_CONTROL_66", _("Control 66 Sustenuto Switch") ); 01094 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_67, "BSE_MIDI_SIGNAL_CONTROL_67", _("Control 67 Soft Switch") ); 01095 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_68, "BSE_MIDI_SIGNAL_CONTROL_68", _("Control 68 Legato Pedal Switch") ); 01096 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_69, "BSE_MIDI_SIGNAL_CONTROL_69", _("Control 69 Hold Pedal Switch") ); 01097 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_70, "BSE_MIDI_SIGNAL_CONTROL_70", _("Control 70 Sound Variation") ); 01098 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_71, "BSE_MIDI_SIGNAL_CONTROL_71", _("Control 71 Filter Resonance (Timbre)") ); 01099 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_72, "BSE_MIDI_SIGNAL_CONTROL_72", _("Control 72 Sound Release Time") ); 01100 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_73, "BSE_MIDI_SIGNAL_CONTROL_73", _("Control 73 Sound Attack Time") ); 01101 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_74, "BSE_MIDI_SIGNAL_CONTROL_74", _("Control 74 Sound Brightness") ); 01102 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_75, "BSE_MIDI_SIGNAL_CONTROL_75", _("Control 75 Sound Decay Time") ); 01103 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_76, "BSE_MIDI_SIGNAL_CONTROL_76", _("Control 76 Vibrato Rate") ); 01104 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_77, "BSE_MIDI_SIGNAL_CONTROL_77", _("Control 77 Vibrato Depth") ); 01105 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_78, "BSE_MIDI_SIGNAL_CONTROL_78", _("Control 78 Vibrato Delay") ); 01106 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_79, "BSE_MIDI_SIGNAL_CONTROL_79", _("Control 79 Sound Control 10") ); 01107 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_80, "BSE_MIDI_SIGNAL_CONTROL_80", _("Control 80 General Purpose Switch 5") ); 01108 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_81, "BSE_MIDI_SIGNAL_CONTROL_81", _("Control 81 General Purpose Switch 6") ); 01109 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_82, "BSE_MIDI_SIGNAL_CONTROL_82", _("Control 82 General Purpose Switch 7") ); 01110 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_83, "BSE_MIDI_SIGNAL_CONTROL_83", _("Control 83 General Purpose Switch 8") ); 01111 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_84, "BSE_MIDI_SIGNAL_CONTROL_84", _("Control 84 Portamento Control (Note)") ); 01112 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_85, "BSE_MIDI_SIGNAL_CONTROL_85", _("control-85") ); 01113 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_86, "BSE_MIDI_SIGNAL_CONTROL_86", _("control-86") ); 01114 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_87, "BSE_MIDI_SIGNAL_CONTROL_87", _("control-87") ); 01115 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_88, "BSE_MIDI_SIGNAL_CONTROL_88", _("control-88") ); 01116 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_89, "BSE_MIDI_SIGNAL_CONTROL_89", _("control-89") ); 01117 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_90, "BSE_MIDI_SIGNAL_CONTROL_90", _("control-90") ); 01118 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_91, "BSE_MIDI_SIGNAL_CONTROL_91", _("Control 91 Reverb Depth") ); 01119 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_92, "BSE_MIDI_SIGNAL_CONTROL_92", _("Control 92 Tremolo Depth") ); 01120 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_93, "BSE_MIDI_SIGNAL_CONTROL_93", _("Control 93 Chorus Depth") ); 01121 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_94, "BSE_MIDI_SIGNAL_CONTROL_94", _("Control 93 Detune Depth") ); 01122 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_95, "BSE_MIDI_SIGNAL_CONTROL_95", _("Control 95 Phase Depth") ); 01123 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_96, "BSE_MIDI_SIGNAL_CONTROL_96", _("Control 96 Data Increment Trigger") ); 01124 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_97, "BSE_MIDI_SIGNAL_CONTROL_97", _("Control 97 Data Decrement Trigger") ); 01125 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_98, "BSE_MIDI_SIGNAL_CONTROL_98", _("Control 98 Non-Registered Parameter MSB") ); 01126 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_99, "BSE_MIDI_SIGNAL_CONTROL_99", _("Control 99 Non-Registered Parameter LSB") ); 01127 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_100, "BSE_MIDI_SIGNAL_CONTROL_100", _("Control 100 Registered Parameter MSB") ); 01128 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_101, "BSE_MIDI_SIGNAL_CONTROL_101", _("Control 101 Registered Parameter LSB") ); 01129 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_102, "BSE_MIDI_SIGNAL_CONTROL_102", _("control-102") ); 01130 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_103, "BSE_MIDI_SIGNAL_CONTROL_103", _("control-103") ); 01131 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_104, "BSE_MIDI_SIGNAL_CONTROL_104", _("control-104") ); 01132 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_105, "BSE_MIDI_SIGNAL_CONTROL_105", _("control-105") ); 01133 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_106, "BSE_MIDI_SIGNAL_CONTROL_106", _("control-106") ); 01134 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_107, "BSE_MIDI_SIGNAL_CONTROL_107", _("control-107") ); 01135 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_108, "BSE_MIDI_SIGNAL_CONTROL_108", _("control-108") ); 01136 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_109, "BSE_MIDI_SIGNAL_CONTROL_109", _("control-109") ); 01137 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_110, "BSE_MIDI_SIGNAL_CONTROL_110", _("control-110") ); 01138 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_111, "BSE_MIDI_SIGNAL_CONTROL_111", _("control-111") ); 01139 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_112, "BSE_MIDI_SIGNAL_CONTROL_112", _("control-112") ); 01140 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_113, "BSE_MIDI_SIGNAL_CONTROL_113", _("control-113") ); 01141 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_114, "BSE_MIDI_SIGNAL_CONTROL_114", _("control-114") ); 01142 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_115, "BSE_MIDI_SIGNAL_CONTROL_115", _("control-115") ); 01143 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_116, "BSE_MIDI_SIGNAL_CONTROL_116", _("control-116") ); 01144 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_117, "BSE_MIDI_SIGNAL_CONTROL_117", _("control-117") ); 01145 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_118, "BSE_MIDI_SIGNAL_CONTROL_118", _("control-118") ); 01146 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_119, "BSE_MIDI_SIGNAL_CONTROL_119", _("control-119") ); 01147 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_120, "BSE_MIDI_SIGNAL_CONTROL_120", _("Control 120 All Sound Off ITrigger") ); 01148 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_121, "BSE_MIDI_SIGNAL_CONTROL_121", _("Control 121 All Controllers Off ITrigger") ); 01149 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_122, "BSE_MIDI_SIGNAL_CONTROL_122", _("Control 122 Local Control Switch") ); 01150 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_123, "BSE_MIDI_SIGNAL_CONTROL_123", _("Control 123 All Notes Off ITrigger") ); 01151 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_124, "BSE_MIDI_SIGNAL_CONTROL_124", _("Control 124 Omni Mode Off ITrigger") ); 01152 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_125, "BSE_MIDI_SIGNAL_CONTROL_125", _("Control 125 Omni Mode On ITrigger") ); 01153 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_126, "BSE_MIDI_SIGNAL_CONTROL_126", _("Control 126 Monophonic Voices Mode") ); 01154 *v++ = ::Bse::EnumValue (MIDI_SIGNAL_CONTROL_127, "BSE_MIDI_SIGNAL_CONTROL_127", _("Control 127 Polyphonic Mode On ITrigger") ); 01155 ); 01156 BSE_CXX_DECLARE_ENUM (MidiControlType, "BseMidiControlType", 161, 01157 *v++ = ::Bse::EnumValue (MIDI_CONTROL_NONE, "BSE_MIDI_CONTROL_NONE", _("None") ); 01158 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_0, "BSE_MIDI_CONTROL_CONTINUOUS_0", _("Bank Select") ); 01159 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_1, "BSE_MIDI_CONTROL_CONTINUOUS_1", _("Modulation Depth") ); 01160 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_2, "BSE_MIDI_CONTROL_CONTINUOUS_2", _("Breath Control") ); 01161 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_3, "BSE_MIDI_CONTROL_CONTINUOUS_3", _("Continuous 3") ); 01162 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_4, "BSE_MIDI_CONTROL_CONTINUOUS_4", _("Foot Controller") ); 01163 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_5, "BSE_MIDI_CONTROL_CONTINUOUS_5", _("Portamento Time") ); 01164 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_6, "BSE_MIDI_CONTROL_CONTINUOUS_6", _("Data Entry") ); 01165 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_7, "BSE_MIDI_CONTROL_CONTINUOUS_7", _("Volume") ); 01166 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_8, "BSE_MIDI_CONTROL_CONTINUOUS_8", _("Balance") ); 01167 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_9, "BSE_MIDI_CONTROL_CONTINUOUS_9", _("Continuous 9") ); 01168 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_10, "BSE_MIDI_CONTROL_CONTINUOUS_10", _("Panorama") ); 01169 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_11, "BSE_MIDI_CONTROL_CONTINUOUS_11", _("Expression") ); 01170 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_12, "BSE_MIDI_CONTROL_CONTINUOUS_12", _("Effect Control 1") ); 01171 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_13, "BSE_MIDI_CONTROL_CONTINUOUS_13", _("Effect Control 2") ); 01172 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_14, "BSE_MIDI_CONTROL_CONTINUOUS_14", _("Continuous 14") ); 01173 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_15, "BSE_MIDI_CONTROL_CONTINUOUS_15", _("Continuous 15") ); 01174 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_16, "BSE_MIDI_CONTROL_CONTINUOUS_16", _("General Purpose Controller 1") ); 01175 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_17, "BSE_MIDI_CONTROL_CONTINUOUS_17", _("General Purpose Controller 2") ); 01176 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_18, "BSE_MIDI_CONTROL_CONTINUOUS_18", _("General Purpose Controller 3") ); 01177 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_19, "BSE_MIDI_CONTROL_CONTINUOUS_19", _("General Purpose Controller 4") ); 01178 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_20, "BSE_MIDI_CONTROL_CONTINUOUS_20", _("Continuous 20") ); 01179 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_21, "BSE_MIDI_CONTROL_CONTINUOUS_21", _("Continuous 21") ); 01180 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_22, "BSE_MIDI_CONTROL_CONTINUOUS_22", _("Continuous 22") ); 01181 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_23, "BSE_MIDI_CONTROL_CONTINUOUS_23", _("Continuous 23") ); 01182 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_24, "BSE_MIDI_CONTROL_CONTINUOUS_24", _("Continuous 24") ); 01183 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_25, "BSE_MIDI_CONTROL_CONTINUOUS_25", _("Continuous 25") ); 01184 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_26, "BSE_MIDI_CONTROL_CONTINUOUS_26", _("Continuous 26") ); 01185 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_27, "BSE_MIDI_CONTROL_CONTINUOUS_27", _("Continuous 27") ); 01186 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_28, "BSE_MIDI_CONTROL_CONTINUOUS_28", _("Continuous 28") ); 01187 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_29, "BSE_MIDI_CONTROL_CONTINUOUS_29", _("Continuous 29") ); 01188 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_30, "BSE_MIDI_CONTROL_CONTINUOUS_30", _("Continuous 30") ); 01189 *v++ = ::Bse::EnumValue (MIDI_CONTROL_CONTINUOUS_31, "BSE_MIDI_CONTROL_CONTINUOUS_31", _("Continuous 31") ); 01190 *v++ = ::Bse::EnumValue (MIDI_CONTROL_0, "BSE_MIDI_CONTROL_0", _("Control 0 Bank Select MSB") ); 01191 *v++ = ::Bse::EnumValue (MIDI_CONTROL_1, "BSE_MIDI_CONTROL_1", _("Control 1 Modulation Depth MSB") ); 01192 *v++ = ::Bse::EnumValue (MIDI_CONTROL_2, "BSE_MIDI_CONTROL_2", _("Control 2 Breath Control MSB") ); 01193 *v++ = ::Bse::EnumValue (MIDI_CONTROL_3, "BSE_MIDI_CONTROL_3", _("control-3") ); 01194 *v++ = ::Bse::EnumValue (MIDI_CONTROL_4, "BSE_MIDI_CONTROL_4", _("Control 4 Foot Controller MSB") ); 01195 *v++ = ::Bse::EnumValue (MIDI_CONTROL_5, "BSE_MIDI_CONTROL_5", _("Control 5 Portamento Time MSB") ); 01196 *v++ = ::Bse::EnumValue (MIDI_CONTROL_6, "BSE_MIDI_CONTROL_6", _("Control 6 Data Entry MSB") ); 01197 *v++ = ::Bse::EnumValue (MIDI_CONTROL_7, "BSE_MIDI_CONTROL_7", _("Control 7 Volume MSB") ); 01198 *v++ = ::Bse::EnumValue (MIDI_CONTROL_8, "BSE_MIDI_CONTROL_8", _("Control 8 Balance MSB") ); 01199 *v++ = ::Bse::EnumValue (MIDI_CONTROL_9, "BSE_MIDI_CONTROL_9", _("control-9") ); 01200 *v++ = ::Bse::EnumValue (MIDI_CONTROL_10, "BSE_MIDI_CONTROL_10", _("Control 10 Panorama MSB") ); 01201 *v++ = ::Bse::EnumValue (MIDI_CONTROL_11, "BSE_MIDI_CONTROL_11", _("Control 11 Expression MSB") ); 01202 *v++ = ::Bse::EnumValue (MIDI_CONTROL_12, "BSE_MIDI_CONTROL_12", _("Control 12 Effect Control 1 MSB") ); 01203 *v++ = ::Bse::EnumValue (MIDI_CONTROL_13, "BSE_MIDI_CONTROL_13", _("Control 13 Effect Control 2 MSB") ); 01204 *v++ = ::Bse::EnumValue (MIDI_CONTROL_14, "BSE_MIDI_CONTROL_14", _("control-14") ); 01205 *v++ = ::Bse::EnumValue (MIDI_CONTROL_15, "BSE_MIDI_CONTROL_15", _("control-15") ); 01206 *v++ = ::Bse::EnumValue (MIDI_CONTROL_16, "BSE_MIDI_CONTROL_16", _("Control 16 General Purpose Controller 1 MSB") ); 01207 *v++ = ::Bse::EnumValue (MIDI_CONTROL_17, "BSE_MIDI_CONTROL_17", _("Control 17 General Purpose Controller 2 MSB") ); 01208 *v++ = ::Bse::EnumValue (MIDI_CONTROL_18, "BSE_MIDI_CONTROL_18", _("Control 18 General Purpose Controller 3 MSB") ); 01209 *v++ = ::Bse::EnumValue (MIDI_CONTROL_19, "BSE_MIDI_CONTROL_19", _("Control 19 General Purpose Controller 4 MSB") ); 01210 *v++ = ::Bse::EnumValue (MIDI_CONTROL_20, "BSE_MIDI_CONTROL_20", _("control-20") ); 01211 *v++ = ::Bse::EnumValue (MIDI_CONTROL_21, "BSE_MIDI_CONTROL_21", _("control-21") ); 01212 *v++ = ::Bse::EnumValue (MIDI_CONTROL_22, "BSE_MIDI_CONTROL_22", _("control-22") ); 01213 *v++ = ::Bse::EnumValue (MIDI_CONTROL_23, "BSE_MIDI_CONTROL_23", _("control-23") ); 01214 *v++ = ::Bse::EnumValue (MIDI_CONTROL_24, "BSE_MIDI_CONTROL_24", _("control-24") ); 01215 *v++ = ::Bse::EnumValue (MIDI_CONTROL_25, "BSE_MIDI_CONTROL_25", _("control-25") ); 01216 *v++ = ::Bse::EnumValue (MIDI_CONTROL_26, "BSE_MIDI_CONTROL_26", _("control-26") ); 01217 *v++ = ::Bse::EnumValue (MIDI_CONTROL_27, "BSE_MIDI_CONTROL_27", _("control-27") ); 01218 *v++ = ::Bse::EnumValue (MIDI_CONTROL_28, "BSE_MIDI_CONTROL_28", _("control-28") ); 01219 *v++ = ::Bse::EnumValue (MIDI_CONTROL_29, "BSE_MIDI_CONTROL_29", _("control-29") ); 01220 *v++ = ::Bse::EnumValue (MIDI_CONTROL_30, "BSE_MIDI_CONTROL_30", _("control-30") ); 01221 *v++ = ::Bse::EnumValue (MIDI_CONTROL_31, "BSE_MIDI_CONTROL_31", _("control-31") ); 01222 *v++ = ::Bse::EnumValue (MIDI_CONTROL_32, "BSE_MIDI_CONTROL_32", _("Control 32 Bank Select LSB") ); 01223 *v++ = ::Bse::EnumValue (MIDI_CONTROL_33, "BSE_MIDI_CONTROL_33", _("Control 33 Modulation Depth LSB") ); 01224 *v++ = ::Bse::EnumValue (MIDI_CONTROL_34, "BSE_MIDI_CONTROL_34", _("Control 34 Breath Control LSB") ); 01225 *v++ = ::Bse::EnumValue (MIDI_CONTROL_35, "BSE_MIDI_CONTROL_35", _("control-35") ); 01226 *v++ = ::Bse::EnumValue (MIDI_CONTROL_36, "BSE_MIDI_CONTROL_36", _("Control 36 Foot Controller LSB") ); 01227 *v++ = ::Bse::EnumValue (MIDI_CONTROL_37, "BSE_MIDI_CONTROL_37", _("Control 37 Portamento Time LSB") ); 01228 *v++ = ::Bse::EnumValue (MIDI_CONTROL_38, "BSE_MIDI_CONTROL_38", _("Control 38 Data Entry LSB") ); 01229 *v++ = ::Bse::EnumValue (MIDI_CONTROL_39, "BSE_MIDI_CONTROL_39", _("Control 39 Volume LSB") ); 01230 *v++ = ::Bse::EnumValue (MIDI_CONTROL_40, "BSE_MIDI_CONTROL_40", _("Control 40 Balance LSB") ); 01231 *v++ = ::Bse::EnumValue (MIDI_CONTROL_41, "BSE_MIDI_CONTROL_41", _("control-41") ); 01232 *v++ = ::Bse::EnumValue (MIDI_CONTROL_42, "BSE_MIDI_CONTROL_42", _("Control 42 Panorama LSB") ); 01233 *v++ = ::Bse::EnumValue (MIDI_CONTROL_43, "BSE_MIDI_CONTROL_43", _("Control 43 Expression LSB") ); 01234 *v++ = ::Bse::EnumValue (MIDI_CONTROL_44, "BSE_MIDI_CONTROL_44", _("Control 44 Effect Control 1 LSB") ); 01235 *v++ = ::Bse::EnumValue (MIDI_CONTROL_45, "BSE_MIDI_CONTROL_45", _("Control 45 Effect Control 2 LSB") ); 01236 *v++ = ::Bse::EnumValue (MIDI_CONTROL_46, "BSE_MIDI_CONTROL_46", _("control-46") ); 01237 *v++ = ::Bse::EnumValue (MIDI_CONTROL_47, "BSE_MIDI_CONTROL_47", _("control-47") ); 01238 *v++ = ::Bse::EnumValue (MIDI_CONTROL_48, "BSE_MIDI_CONTROL_48", _("Control 48 General Purpose Controller 1 LSB") ); 01239 *v++ = ::Bse::EnumValue (MIDI_CONTROL_49, "BSE_MIDI_CONTROL_49", _("Control 49 General Purpose Controller 2 LSB") ); 01240 *v++ = ::Bse::EnumValue (MIDI_CONTROL_50, "BSE_MIDI_CONTROL_50", _("Control 50 General Purpose Controller 3 LSB") ); 01241 *v++ = ::Bse::EnumValue (MIDI_CONTROL_51, "BSE_MIDI_CONTROL_51", _("Control 51 General Purpose Controller 4 LSB") ); 01242 *v++ = ::Bse::EnumValue (MIDI_CONTROL_52, "BSE_MIDI_CONTROL_52", _("control-52") ); 01243 *v++ = ::Bse::EnumValue (MIDI_CONTROL_53, "BSE_MIDI_CONTROL_53", _("control-53") ); 01244 *v++ = ::Bse::EnumValue (MIDI_CONTROL_54, "BSE_MIDI_CONTROL_54", _("control-54") ); 01245 *v++ = ::Bse::EnumValue (MIDI_CONTROL_55, "BSE_MIDI_CONTROL_55", _("control-55") ); 01246 *v++ = ::Bse::EnumValue (MIDI_CONTROL_56, "BSE_MIDI_CONTROL_56", _("control-56") ); 01247 *v++ = ::Bse::EnumValue (MIDI_CONTROL_57, "BSE_MIDI_CONTROL_57", _("control-57") ); 01248 *v++ = ::Bse::EnumValue (MIDI_CONTROL_58, "BSE_MIDI_CONTROL_58", _("control-58") ); 01249 *v++ = ::Bse::EnumValue (MIDI_CONTROL_59, "BSE_MIDI_CONTROL_59", _("control-59") ); 01250 *v++ = ::Bse::EnumValue (MIDI_CONTROL_60, "BSE_MIDI_CONTROL_60", _("control-60") ); 01251 *v++ = ::Bse::EnumValue (MIDI_CONTROL_61, "BSE_MIDI_CONTROL_61", _("control-61") ); 01252 *v++ = ::Bse::EnumValue (MIDI_CONTROL_62, "BSE_MIDI_CONTROL_62", _("control-62") ); 01253 *v++ = ::Bse::EnumValue (MIDI_CONTROL_63, "BSE_MIDI_CONTROL_63", _("control-63") ); 01254 *v++ = ::Bse::EnumValue (MIDI_CONTROL_64, "BSE_MIDI_CONTROL_64", _("Control 64 Damper Pedal Switch (Sustain)") ); 01255 *v++ = ::Bse::EnumValue (MIDI_CONTROL_65, "BSE_MIDI_CONTROL_65", _("Control 65 Portamento Switch") ); 01256 *v++ = ::Bse::EnumValue (MIDI_CONTROL_66, "BSE_MIDI_CONTROL_66", _("Control 66 Sustenuto Switch") ); 01257 *v++ = ::Bse::EnumValue (MIDI_CONTROL_67, "BSE_MIDI_CONTROL_67", _("Control 67 Soft Switch") ); 01258 *v++ = ::Bse::EnumValue (MIDI_CONTROL_68, "BSE_MIDI_CONTROL_68", _("Control 68 Legato Pedal Switch") ); 01259 *v++ = ::Bse::EnumValue (MIDI_CONTROL_69, "BSE_MIDI_CONTROL_69", _("Control 69 Hold Pedal Switch") ); 01260 *v++ = ::Bse::EnumValue (MIDI_CONTROL_70, "BSE_MIDI_CONTROL_70", _("Control 70 Sound Variation") ); 01261 *v++ = ::Bse::EnumValue (MIDI_CONTROL_71, "BSE_MIDI_CONTROL_71", _("Control 71 Filter Resonance (Timbre)") ); 01262 *v++ = ::Bse::EnumValue (MIDI_CONTROL_72, "BSE_MIDI_CONTROL_72", _("Control 72 Sound Release Time") ); 01263 *v++ = ::Bse::EnumValue (MIDI_CONTROL_73, "BSE_MIDI_CONTROL_73", _("Control 73 Sound Attack Time") ); 01264 *v++ = ::Bse::EnumValue (MIDI_CONTROL_74, "BSE_MIDI_CONTROL_74", _("Control 74 Sound Brightness") ); 01265 *v++ = ::Bse::EnumValue (MIDI_CONTROL_75, "BSE_MIDI_CONTROL_75", _("Control 75 Sound Decay Time") ); 01266 *v++ = ::Bse::EnumValue (MIDI_CONTROL_76, "BSE_MIDI_CONTROL_76", _("Control 76 Vibrato Rate") ); 01267 *v++ = ::Bse::EnumValue (MIDI_CONTROL_77, "BSE_MIDI_CONTROL_77", _("Control 77 Vibrato Depth") ); 01268 *v++ = ::Bse::EnumValue (MIDI_CONTROL_78, "BSE_MIDI_CONTROL_78", _("Control 78 Vibrato Delay") ); 01269 *v++ = ::Bse::EnumValue (MIDI_CONTROL_79, "BSE_MIDI_CONTROL_79", _("Control 79 Sound Control 10") ); 01270 *v++ = ::Bse::EnumValue (MIDI_CONTROL_80, "BSE_MIDI_CONTROL_80", _("Control 80 General Purpose Switch 5") ); 01271 *v++ = ::Bse::EnumValue (MIDI_CONTROL_81, "BSE_MIDI_CONTROL_81", _("Control 81 General Purpose Switch 6") ); 01272 *v++ = ::Bse::EnumValue (MIDI_CONTROL_82, "BSE_MIDI_CONTROL_82", _("Control 82 General Purpose Switch 7") ); 01273 *v++ = ::Bse::EnumValue (MIDI_CONTROL_83, "BSE_MIDI_CONTROL_83", _("Control 83 General Purpose Switch 8") ); 01274 *v++ = ::Bse::EnumValue (MIDI_CONTROL_84, "BSE_MIDI_CONTROL_84", _("Control 84 Portamento Control (Note)") ); 01275 *v++ = ::Bse::EnumValue (MIDI_CONTROL_85, "BSE_MIDI_CONTROL_85", _("control-85") ); 01276 *v++ = ::Bse::EnumValue (MIDI_CONTROL_86, "BSE_MIDI_CONTROL_86", _("control-86") ); 01277 *v++ = ::Bse::EnumValue (MIDI_CONTROL_87, "BSE_MIDI_CONTROL_87", _("control-87") ); 01278 *v++ = ::Bse::EnumValue (MIDI_CONTROL_88, "BSE_MIDI_CONTROL_88", _("control-88") ); 01279 *v++ = ::Bse::EnumValue (MIDI_CONTROL_89, "BSE_MIDI_CONTROL_89", _("control-89") ); 01280 *v++ = ::Bse::EnumValue (MIDI_CONTROL_90, "BSE_MIDI_CONTROL_90", _("control-90") ); 01281 *v++ = ::Bse::EnumValue (MIDI_CONTROL_91, "BSE_MIDI_CONTROL_91", _("Control 91 Reverb Depth") ); 01282 *v++ = ::Bse::EnumValue (MIDI_CONTROL_92, "BSE_MIDI_CONTROL_92", _("Control 92 Tremolo Depth") ); 01283 *v++ = ::Bse::EnumValue (MIDI_CONTROL_93, "BSE_MIDI_CONTROL_93", _("Control 93 Chorus Depth") ); 01284 *v++ = ::Bse::EnumValue (MIDI_CONTROL_94, "BSE_MIDI_CONTROL_94", _("Control 93 Detune Depth") ); 01285 *v++ = ::Bse::EnumValue (MIDI_CONTROL_95, "BSE_MIDI_CONTROL_95", _("Control 95 Phase Depth") ); 01286 *v++ = ::Bse::EnumValue (MIDI_CONTROL_96, "BSE_MIDI_CONTROL_96", _("Control 96 Data Increment Trigger") ); 01287 *v++ = ::Bse::EnumValue (MIDI_CONTROL_97, "BSE_MIDI_CONTROL_97", _("Control 97 Data Decrement Trigger") ); 01288 *v++ = ::Bse::EnumValue (MIDI_CONTROL_98, "BSE_MIDI_CONTROL_98", _("Control 98 Non-Registered Parameter MSB") ); 01289 *v++ = ::Bse::EnumValue (MIDI_CONTROL_99, "BSE_MIDI_CONTROL_99", _("Control 99 Non-Registered Parameter LSB") ); 01290 *v++ = ::Bse::EnumValue (MIDI_CONTROL_100, "BSE_MIDI_CONTROL_100", _("Control 100 Registered Parameter MSB") ); 01291 *v++ = ::Bse::EnumValue (MIDI_CONTROL_101, "BSE_MIDI_CONTROL_101", _("Control 101 Registered Parameter LSB") ); 01292 *v++ = ::Bse::EnumValue (MIDI_CONTROL_102, "BSE_MIDI_CONTROL_102", _("control-102") ); 01293 *v++ = ::Bse::EnumValue (MIDI_CONTROL_103, "BSE_MIDI_CONTROL_103", _("control-103") ); 01294 *v++ = ::Bse::EnumValue (MIDI_CONTROL_104, "BSE_MIDI_CONTROL_104", _("control-104") ); 01295 *v++ = ::Bse::EnumValue (MIDI_CONTROL_105, "BSE_MIDI_CONTROL_105", _("control-105") ); 01296 *v++ = ::Bse::EnumValue (MIDI_CONTROL_106, "BSE_MIDI_CONTROL_106", _("control-106") ); 01297 *v++ = ::Bse::EnumValue (MIDI_CONTROL_107, "BSE_MIDI_CONTROL_107", _("control-107") ); 01298 *v++ = ::Bse::EnumValue (MIDI_CONTROL_108, "BSE_MIDI_CONTROL_108", _("control-108") ); 01299 *v++ = ::Bse::EnumValue (MIDI_CONTROL_109, "BSE_MIDI_CONTROL_109", _("control-109") ); 01300 *v++ = ::Bse::EnumValue (MIDI_CONTROL_110, "BSE_MIDI_CONTROL_110", _("control-110") ); 01301 *v++ = ::Bse::EnumValue (MIDI_CONTROL_111, "BSE_MIDI_CONTROL_111", _("control-111") ); 01302 *v++ = ::Bse::EnumValue (MIDI_CONTROL_112, "BSE_MIDI_CONTROL_112", _("control-112") ); 01303 *v++ = ::Bse::EnumValue (MIDI_CONTROL_113, "BSE_MIDI_CONTROL_113", _("control-113") ); 01304 *v++ = ::Bse::EnumValue (MIDI_CONTROL_114, "BSE_MIDI_CONTROL_114", _("control-114") ); 01305 *v++ = ::Bse::EnumValue (MIDI_CONTROL_115, "BSE_MIDI_CONTROL_115", _("control-115") ); 01306 *v++ = ::Bse::EnumValue (MIDI_CONTROL_116, "BSE_MIDI_CONTROL_116", _("control-116") ); 01307 *v++ = ::Bse::EnumValue (MIDI_CONTROL_117, "BSE_MIDI_CONTROL_117", _("control-117") ); 01308 *v++ = ::Bse::EnumValue (MIDI_CONTROL_118, "BSE_MIDI_CONTROL_118", _("control-118") ); 01309 *v++ = ::Bse::EnumValue (MIDI_CONTROL_119, "BSE_MIDI_CONTROL_119", _("control-119") ); 01310 *v++ = ::Bse::EnumValue (MIDI_CONTROL_120, "BSE_MIDI_CONTROL_120", _("Control 120 All Sound Off ITrigger") ); 01311 *v++ = ::Bse::EnumValue (MIDI_CONTROL_121, "BSE_MIDI_CONTROL_121", _("Control 121 All Controllers Off ITrigger") ); 01312 *v++ = ::Bse::EnumValue (MIDI_CONTROL_122, "BSE_MIDI_CONTROL_122", _("Control 122 Local Control Switch") ); 01313 *v++ = ::Bse::EnumValue (MIDI_CONTROL_123, "BSE_MIDI_CONTROL_123", _("Control 123 All Notes Off ITrigger") ); 01314 *v++ = ::Bse::EnumValue (MIDI_CONTROL_124, "BSE_MIDI_CONTROL_124", _("Control 124 Omni Mode Off ITrigger") ); 01315 *v++ = ::Bse::EnumValue (MIDI_CONTROL_125, "BSE_MIDI_CONTROL_125", _("Control 125 Omni Mode On ITrigger") ); 01316 *v++ = ::Bse::EnumValue (MIDI_CONTROL_126, "BSE_MIDI_CONTROL_126", _("Control 126 Monophonic Voices Mode") ); 01317 *v++ = ::Bse::EnumValue (MIDI_CONTROL_127, "BSE_MIDI_CONTROL_127", _("Control 127 Polyphonic Mode On ITrigger") ); 01318 ); 01319 BSE_CXX_DECLARE_ENUM (MidiChannelEventType, "BseMidiChannelEventType", 18, 01320 *v++ = ::Bse::EnumValue (MIDI_EVENT_NONE, "BSE_MIDI_EVENT_NONE", "bse-midi-event-none" ); 01321 *v++ = ::Bse::EnumValue (MIDI_EVENT_NOTE_OFF, "BSE_MIDI_EVENT_NOTE_OFF", "bse-midi-event-note-off" ); 01322 *v++ = ::Bse::EnumValue (MIDI_EVENT_NOTE_ON, "BSE_MIDI_EVENT_NOTE_ON", "bse-midi-event-note-on" ); 01323 *v++ = ::Bse::EnumValue (MIDI_EVENT_KEY_PRESSURE, "BSE_MIDI_EVENT_KEY_PRESSURE", "bse-midi-event-key-pressure" ); 01324 *v++ = ::Bse::EnumValue (MIDI_EVENT_CONTROL_CHANGE, "BSE_MIDI_EVENT_CONTROL_CHANGE", "bse-midi-event-control-change" ); 01325 *v++ = ::Bse::EnumValue (MIDI_EVENT_PROGRAM_CHANGE, "BSE_MIDI_EVENT_PROGRAM_CHANGE", "bse-midi-event-program-change" ); 01326 *v++ = ::Bse::EnumValue (MIDI_EVENT_CHANNEL_PRESSURE, "BSE_MIDI_EVENT_CHANNEL_PRESSURE", "bse-midi-event-channel-pressure" ); 01327 *v++ = ::Bse::EnumValue (MIDI_EVENT_PITCH_BEND, "BSE_MIDI_EVENT_PITCH_BEND", "bse-midi-event-pitch-bend" ); 01328 *v++ = ::Bse::EnumValue (MIDI_EVENT_SYS_EX, "BSE_MIDI_EVENT_SYS_EX", "bse-midi-event-sys-ex" ); 01329 *v++ = ::Bse::EnumValue (MIDI_EVENT_SONG_POINTER, "BSE_MIDI_EVENT_SONG_POINTER", "bse-midi-event-song-pointer" ); 01330 *v++ = ::Bse::EnumValue (MIDI_EVENT_SONG_SELECT, "BSE_MIDI_EVENT_SONG_SELECT", "bse-midi-event-song-select" ); 01331 *v++ = ::Bse::EnumValue (MIDI_EVENT_TUNE, "BSE_MIDI_EVENT_TUNE", "bse-midi-event-tune" ); 01332 *v++ = ::Bse::EnumValue (MIDI_EVENT_TIMING_CLOCK, "BSE_MIDI_EVENT_TIMING_CLOCK", "bse-midi-event-timing-clock" ); 01333 *v++ = ::Bse::EnumValue (MIDI_EVENT_SONG_START, "BSE_MIDI_EVENT_SONG_START", "bse-midi-event-song-start" ); 01334 *v++ = ::Bse::EnumValue (MIDI_EVENT_SONG_CONTINUE, "BSE_MIDI_EVENT_SONG_CONTINUE", "bse-midi-event-song-continue" ); 01335 *v++ = ::Bse::EnumValue (MIDI_EVENT_SONG_STOP, "BSE_MIDI_EVENT_SONG_STOP", "bse-midi-event-song-stop" ); 01336 *v++ = ::Bse::EnumValue (MIDI_EVENT_ACTIVE_SENSING, "BSE_MIDI_EVENT_ACTIVE_SENSING", "bse-midi-event-active-sensing" ); 01337 *v++ = ::Bse::EnumValue (MIDI_EVENT_SYSTEM_RESET, "BSE_MIDI_EVENT_SYSTEM_RESET", "bse-midi-event-system-reset" ); 01338 ); 01339 01340 01341 /* sequence type declarations */ 01342 BSE_CXX_DECLARE_SEQUENCE (IntSeq); 01343 01344 BSE_CXX_DECLARE_SEQUENCE (TypeSeq); 01345 01346 BSE_CXX_DECLARE_SEQUENCE (StringSeq); 01347 01348 BSE_CXX_DECLARE_SEQUENCE (FloatSeq); 01349 01350 BSE_CXX_DECLARE_SEQUENCE (NoteSeq); 01351 01352 BSE_CXX_DECLARE_SEQUENCE (ItemSeq); 01353 01354 BSE_CXX_DECLARE_SEQUENCE (PartNoteSeq); 01355 01356 BSE_CXX_DECLARE_SEQUENCE (PartControlSeq); 01357 01358 BSE_CXX_DECLARE_SEQUENCE (PixelSeq); 01359 01360 BSE_CXX_DECLARE_SEQUENCE (CategorySeq); 01361 01362 BSE_CXX_DECLARE_SEQUENCE (DotSeq); 01363 01364 BSE_CXX_DECLARE_SEQUENCE (PartLinkSeq); 01365 01366 BSE_CXX_DECLARE_SEQUENCE (TrackPartSeq); 01367 01368 01369 01370 /* record type declarations */ 01371 BSE_CXX_DECLARE_RECORD (MidiChannelEvent); 01372 01373 BSE_CXX_DECLARE_RECORD (PropertyCandidates); 01374 01375 BSE_CXX_DECLARE_RECORD (PartNote); 01376 01377 BSE_CXX_DECLARE_RECORD (PartControl); 01378 01379 BSE_CXX_DECLARE_RECORD (NoteDescription); 01380 01381 BSE_CXX_DECLARE_RECORD (NoteSequence); 01382 01383 BSE_CXX_DECLARE_RECORD (Icon); 01384 01385 BSE_CXX_DECLARE_RECORD (Category); 01386 01387 BSE_CXX_DECLARE_RECORD (Dot); 01388 01389 BSE_CXX_DECLARE_RECORD (PartLink); 01390 01391 BSE_CXX_DECLARE_RECORD (TrackPart); 01392 01393 BSE_CXX_DECLARE_RECORD (SongTiming); 01394 01395 BSE_CXX_DECLARE_RECORD (SampleFileInfo); 01396 01397 BSE_CXX_DECLARE_RECORD (GConfig); 01398 01399 01400 01401 /* procedure prototypes */ 01402 01403 01404 /* class definitions */ 01405 01406 01407 /* choice implementations */ 01408 static SfiChoiceValues 01409 MusicalTuningType_choice_values() 01410 { 01411 static SfiChoiceValue values[17]; 01412 static const SfiChoiceValues choice_values = { 01413 G_N_ELEMENTS (values), values, 01414 }; 01415 if (!values[0].choice_ident) 01416 { 01417 values[0].choice_ident = "BSE_MUSICAL_TUNING_12_TET"; 01418 values[0].choice_label = _("12 Tone Equal Temperament"); 01419 values[0].choice_blurb = _("The most common tuning system for modern Western music, is the twelve-tone equal temperament, abbreviated as 12-TET, which divides the octave into 12 equal parts."); 01420 values[1].choice_ident = "BSE_MUSICAL_TUNING_7_TET"; 01421 values[1].choice_label = _("7 Tone Equal Temperament"); 01422 values[1].choice_blurb = _("A fairly common tuning system is the seven-tone equal temperament tuning system, abbreviated as 7-TET. It divides the octave into 7 equal parts using 171 cent steps."); 01423 values[2].choice_ident = "BSE_MUSICAL_TUNING_5_TET"; 01424 values[2].choice_label = _("5 Tone Equal Temperament"); 01425 values[2].choice_blurb = _("A fairly common tuning system is the five-tone equal temperament tuning system, abbreviated as 5-TET. It divides the octave into 5 equal parts using 240 cent steps."); 01426 values[3].choice_ident = "BSE_MUSICAL_TUNING_DIATONIC_SCALE"; 01427 values[3].choice_label = _("Diatonic Scale"); 01428 values[3].choice_blurb = _("In music theory, a diatonic scale (also: heptatonia prima) is a seven-note musical scale comprising five whole-tone and two half-tone steps. The half tones are maximally separated, so between two half-tone steps there are either two or three whole tones, repeating per octave."); 01429 values[4].choice_ident = "BSE_MUSICAL_TUNING_INDIAN_SCALE"; 01430 values[4].choice_label = _("Indian Scale"); 01431 values[4].choice_blurb = _("Diatonic scale used in Indian music with wolf interval at Dha, close to 3/2"); 01432 values[5].choice_ident = "BSE_MUSICAL_TUNING_PYTHAGOREAN_TUNING"; 01433 values[5].choice_label = _("Pythagorean Tuning"); 01434 values[5].choice_blurb = _("Pythagorean tuning is the oldest way of tuning the 12-note chromatic scale, in which the frequency relationships of all intervals are based on the ratio 3:2. Its discovery is generally credited to Pythagoras."); 01435 values[6].choice_ident = "BSE_MUSICAL_TUNING_PENTATONIC_5_LIMIT"; 01436 values[6].choice_label = _("Pentatonic 5-limit"); 01437 values[6].choice_blurb = _("Pentatonic scales are used in modern jazz and pop/rock contexts because they work exceedingly well over several chords diatonic to the same key, often better than the parent scale."); 01438 values[7].choice_ident = "BSE_MUSICAL_TUNING_PENTATONIC_BLUES"; 01439 values[7].choice_label = _("Pentatonic Blues"); 01440 values[7].choice_blurb = _("The blues scale is the minor pentatonic with an additional augmented fourth, which is referred to as the \"blues note\"."); 01441 values[8].choice_ident = "BSE_MUSICAL_TUNING_PENTATONIC_GOGO"; 01442 values[8].choice_label = _("Pentatonic Gogo"); 01443 values[8].choice_blurb = _("The Pentatonic Gogo scale is an anhemitonic pentatonic scale used to tune the instruments of the Gogo people of Tanzania."); 01444 values[9].choice_ident = "BSE_MUSICAL_TUNING_QUARTER_COMMA_MEANTONE"; 01445 values[9].choice_label = _("Quarter-Comma Meantone"); 01446 values[9].choice_blurb = _("Quarter-comma meantone was the most common meantone temperament in the sixteenth and seventeenth centuries and sometimes used later."); 01447 values[10].choice_ident = "BSE_MUSICAL_TUNING_SILBERMANN_SORGE"; 01448 values[10].choice_label = _("Silbermann-Sorge Temperament"); 01449 values[10].choice_blurb = _("The Silbermann-Sorge temperament is a meantone temperament used for Baroque era organs by Gottfried Silbermann."); 01450 values[11].choice_ident = "BSE_MUSICAL_TUNING_WERCKMEISTER_3"; 01451 values[11].choice_label = _("Werckmeister III"); 01452 values[11].choice_blurb = _("This tuning uses mostly pure (perfect) fifths, as in Pythagorean tuning, but each of the fifths C-G, G-D, D-A and B-F# is made smaller, i.e. tempered by 1/4 comma. Werckmeister designated this tuning as particularly suited for playing chromatic music."); 01453 values[12].choice_ident = "BSE_MUSICAL_TUNING_WERCKMEISTER_4"; 01454 values[12].choice_label = _("Werckmeister IV"); 01455 values[12].choice_blurb = _("In this tuning the fifths C-G, D-A, E-B, F#-C#, and Bb-F are tempered narrow by 1/3 comma, and the fifths G#-D# and Eb-Bb are widened by 1/3 comma. The other fifths are pure. Most of its intervals are close to sixth-comma meantone. Werckmeister designed this tuning for playing mainly diatonic music."); 01456 values[13].choice_ident = "BSE_MUSICAL_TUNING_WERCKMEISTER_5"; 01457 values[13].choice_label = _("Werckmeister V"); 01458 values[13].choice_blurb = _("In this tuning the fifths D-A, A-E, F#-C#, C#-G#, and F-C are narrowed by 1/4 comma, and the fifth G#-D# is widened by 1/4 comma. The other fifths are pure. This temperament is closer to equal temperament than Werckmeister III or IV."); 01459 values[14].choice_ident = "BSE_MUSICAL_TUNING_WERCKMEISTER_6"; 01460 values[14].choice_label = _("Werckmeister VI"); 01461 values[14].choice_blurb = _("This tuning is also known as Septenarius tuning is based on a division of the monochord length into 196 = 7 * 7 * 4 parts. The resulting scale has rational frequency relationships, but in practice involves pure and impure sounding fifths. Werckmeister described the Septenarius as a \"temperament which has nothing at all to do with the divisions of the comma, nevertheless in practice so correct that one can be really satisfied with it\"."); 01462 values[15].choice_ident = "BSE_MUSICAL_TUNING_KIRNBERGER_3"; 01463 values[15].choice_label = _("Kirnberger III"); 01464 values[15].choice_blurb = _("Kirnberger's method of compensating for and closing the circle of fifths is to split the \"wolf\" interval known to those who have used meantone temperaments between four fifths instead, allowing for four 1/4-comma wolves to take their place. 1/4-comma wolves are used extensively in meantone and are much easier to tune and to listen to. Therefore, only one third remains pure (between C and E)."); 01465 values[16].choice_ident = "BSE_MUSICAL_TUNING_YOUNG"; 01466 values[16].choice_label = _("Young Temperament"); 01467 values[16].choice_blurb = _("Thomas Young devised a form of musical tuning to make the harmony most perfect in those keys which are the most frequently used (give better major thirds in those keys), but to not have any unplayable keys. This is attempted by tuning upwards from C a sequence of six pure fourths, as well as six equally imperfect fifths."); 01468 } 01469 return choice_values; 01470 } 01471 01472 static SfiChoiceValues 01473 MidiSignalType_choice_values() 01474 { 01475 static SfiChoiceValue values[172]; 01476 static const SfiChoiceValues choice_values = { 01477 G_N_ELEMENTS (values), values, 01478 }; 01479 if (!values[0].choice_ident) 01480 { 01481 values[0].choice_ident = "BSE_MIDI_SIGNAL_PROGRAM"; 01482 values[0].choice_label = _("Program Change"); 01483 values[0].choice_blurb = ""; 01484 values[1].choice_ident = "BSE_MIDI_SIGNAL_PRESSURE"; 01485 values[1].choice_label = _("Channel Pressure"); 01486 values[1].choice_blurb = ""; 01487 values[2].choice_ident = "BSE_MIDI_SIGNAL_PITCH_BEND"; 01488 values[2].choice_label = _("Pitch Bend"); 01489 values[2].choice_blurb = ""; 01490 values[3].choice_ident = "BSE_MIDI_SIGNAL_VELOCITY"; 01491 values[3].choice_label = _("Note Velocity"); 01492 values[3].choice_blurb = ""; 01493 values[4].choice_ident = "BSE_MIDI_SIGNAL_FINE_TUNE"; 01494 values[4].choice_label = _("Note Fine Tune"); 01495 values[4].choice_blurb = ""; 01496 values[5].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_0"; 01497 values[5].choice_label = _("Bank Select"); 01498 values[5].choice_blurb = ""; 01499 values[6].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_1"; 01500 values[6].choice_label = _("Modulation Depth"); 01501 values[6].choice_blurb = ""; 01502 values[7].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_2"; 01503 values[7].choice_label = _("Breath Control"); 01504 values[7].choice_blurb = ""; 01505 values[8].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_3"; 01506 values[8].choice_label = _("Continuous 3"); 01507 values[8].choice_blurb = ""; 01508 values[9].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_4"; 01509 values[9].choice_label = _("Foot Controller"); 01510 values[9].choice_blurb = ""; 01511 values[10].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_5"; 01512 values[10].choice_label = _("Portamento Time"); 01513 values[10].choice_blurb = ""; 01514 values[11].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_6"; 01515 values[11].choice_label = _("Data Entry"); 01516 values[11].choice_blurb = ""; 01517 values[12].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_7"; 01518 values[12].choice_label = _("Volume"); 01519 values[12].choice_blurb = ""; 01520 values[13].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_8"; 01521 values[13].choice_label = _("Balance"); 01522 values[13].choice_blurb = ""; 01523 values[14].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_9"; 01524 values[14].choice_label = _("Continuous 9"); 01525 values[14].choice_blurb = ""; 01526 values[15].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_10"; 01527 values[15].choice_label = _("Panorama"); 01528 values[15].choice_blurb = ""; 01529 values[16].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_11"; 01530 values[16].choice_label = _("Expression"); 01531 values[16].choice_blurb = ""; 01532 values[17].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_12"; 01533 values[17].choice_label = _("Effect Control 1"); 01534 values[17].choice_blurb = ""; 01535 values[18].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_13"; 01536 values[18].choice_label = _("Effect Control 2"); 01537 values[18].choice_blurb = ""; 01538 values[19].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_14"; 01539 values[19].choice_label = _("Continuous 14"); 01540 values[19].choice_blurb = ""; 01541 values[20].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_15"; 01542 values[20].choice_label = _("Continuous 15"); 01543 values[20].choice_blurb = ""; 01544 values[21].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_16"; 01545 values[21].choice_label = _("General Purpose Controller 1"); 01546 values[21].choice_blurb = ""; 01547 values[22].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_17"; 01548 values[22].choice_label = _("General Purpose Controller 2"); 01549 values[22].choice_blurb = ""; 01550 values[23].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_18"; 01551 values[23].choice_label = _("General Purpose Controller 3"); 01552 values[23].choice_blurb = ""; 01553 values[24].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_19"; 01554 values[24].choice_label = _("General Purpose Controller 4"); 01555 values[24].choice_blurb = ""; 01556 values[25].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_20"; 01557 values[25].choice_label = _("Continuous 20"); 01558 values[25].choice_blurb = ""; 01559 values[26].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_21"; 01560 values[26].choice_label = _("Continuous 21"); 01561 values[26].choice_blurb = ""; 01562 values[27].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_22"; 01563 values[27].choice_label = _("Continuous 22"); 01564 values[27].choice_blurb = ""; 01565 values[28].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_23"; 01566 values[28].choice_label = _("Continuous 23"); 01567 values[28].choice_blurb = ""; 01568 values[29].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_24"; 01569 values[29].choice_label = _("Continuous 24"); 01570 values[29].choice_blurb = ""; 01571 values[30].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_25"; 01572 values[30].choice_label = _("Continuous 25"); 01573 values[30].choice_blurb = ""; 01574 values[31].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_26"; 01575 values[31].choice_label = _("Continuous 26"); 01576 values[31].choice_blurb = ""; 01577 values[32].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_27"; 01578 values[32].choice_label = _("Continuous 27"); 01579 values[32].choice_blurb = ""; 01580 values[33].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_28"; 01581 values[33].choice_label = _("Continuous 28"); 01582 values[33].choice_blurb = ""; 01583 values[34].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_29"; 01584 values[34].choice_label = _("Continuous 29"); 01585 values[34].choice_blurb = ""; 01586 values[35].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_30"; 01587 values[35].choice_label = _("Continuous 30"); 01588 values[35].choice_blurb = ""; 01589 values[36].choice_ident = "BSE_MIDI_SIGNAL_CONTINUOUS_31"; 01590 values[36].choice_label = _("Continuous 31"); 01591 values[36].choice_blurb = ""; 01592 values[37].choice_ident = "BSE_MIDI_SIGNAL_CONSTANT_HIGH"; 01593 values[37].choice_label = _("Constant HIGH"); 01594 values[37].choice_blurb = ""; 01595 values[38].choice_ident = "BSE_MIDI_SIGNAL_CONSTANT_CENTER"; 01596 values[38].choice_label = _("Constant CENTER"); 01597 values[38].choice_blurb = ""; 01598 values[39].choice_ident = "BSE_MIDI_SIGNAL_CONSTANT_LOW"; 01599 values[39].choice_label = _("Constant LOW"); 01600 values[39].choice_blurb = ""; 01601 values[40].choice_ident = "BSE_MIDI_SIGNAL_CONSTANT_NEGATIVE_CENTER"; 01602 values[40].choice_label = _("Constant Negative CENTER"); 01603 values[40].choice_blurb = ""; 01604 values[41].choice_ident = "BSE_MIDI_SIGNAL_CONSTANT_NEGATIVE_HIGH"; 01605 values[41].choice_label = _("Constant Negative HIGH"); 01606 values[41].choice_blurb = ""; 01607 values[42].choice_ident = "BSE_MIDI_SIGNAL_PARAMETER"; 01608 values[42].choice_label = _("Registered Parameter"); 01609 values[42].choice_blurb = ""; 01610 values[43].choice_ident = "BSE_MIDI_SIGNAL_NON_PARAMETER"; 01611 values[43].choice_label = _("Non-Registered Parameter"); 01612 values[43].choice_blurb = ""; 01613 values[44].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_0"; 01614 values[44].choice_label = _("Control 0 Bank Select MSB"); 01615 values[44].choice_blurb = ""; 01616 values[45].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_1"; 01617 values[45].choice_label = _("Control 1 Modulation Depth MSB"); 01618 values[45].choice_blurb = ""; 01619 values[46].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_2"; 01620 values[46].choice_label = _("Control 2 Breath Control MSB"); 01621 values[46].choice_blurb = ""; 01622 values[47].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_3"; 01623 values[47].choice_label = _("control-3"); 01624 values[47].choice_blurb = ""; 01625 values[48].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_4"; 01626 values[48].choice_label = _("Control 4 Foot Controller MSB"); 01627 values[48].choice_blurb = ""; 01628 values[49].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_5"; 01629 values[49].choice_label = _("Control 5 Portamento Time MSB"); 01630 values[49].choice_blurb = ""; 01631 values[50].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_6"; 01632 values[50].choice_label = _("Control 6 Data Entry MSB"); 01633 values[50].choice_blurb = ""; 01634 values[51].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_7"; 01635 values[51].choice_label = _("Control 7 Volume MSB"); 01636 values[51].choice_blurb = ""; 01637 values[52].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_8"; 01638 values[52].choice_label = _("Control 8 Balance MSB"); 01639 values[52].choice_blurb = ""; 01640 values[53].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_9"; 01641 values[53].choice_label = _("control-9"); 01642 values[53].choice_blurb = ""; 01643 values[54].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_10"; 01644 values[54].choice_label = _("Control 10 Panorama MSB"); 01645 values[54].choice_blurb = ""; 01646 values[55].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_11"; 01647 values[55].choice_label = _("Control 11 Expression MSB"); 01648 values[55].choice_blurb = ""; 01649 values[56].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_12"; 01650 values[56].choice_label = _("Control 12 Effect Control 1 MSB"); 01651 values[56].choice_blurb = ""; 01652 values[57].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_13"; 01653 values[57].choice_label = _("Control 13 Effect Control 2 MSB"); 01654 values[57].choice_blurb = ""; 01655 values[58].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_14"; 01656 values[58].choice_label = _("control-14"); 01657 values[58].choice_blurb = ""; 01658 values[59].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_15"; 01659 values[59].choice_label = _("control-15"); 01660 values[59].choice_blurb = ""; 01661 values[60].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_16"; 01662 values[60].choice_label = _("Control 16 General Purpose Controller 1 MSB"); 01663 values[60].choice_blurb = ""; 01664 values[61].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_17"; 01665 values[61].choice_label = _("Control 17 General Purpose Controller 2 MSB"); 01666 values[61].choice_blurb = ""; 01667 values[62].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_18"; 01668 values[62].choice_label = _("Control 18 General Purpose Controller 3 MSB"); 01669 values[62].choice_blurb = ""; 01670 values[63].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_19"; 01671 values[63].choice_label = _("Control 19 General Purpose Controller 4 MSB"); 01672 values[63].choice_blurb = ""; 01673 values[64].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_20"; 01674 values[64].choice_label = _("control-20"); 01675 values[64].choice_blurb = ""; 01676 values[65].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_21"; 01677 values[65].choice_label = _("control-21"); 01678 values[65].choice_blurb = ""; 01679 values[66].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_22"; 01680 values[66].choice_label = _("control-22"); 01681 values[66].choice_blurb = ""; 01682 values[67].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_23"; 01683 values[67].choice_label = _("control-23"); 01684 values[67].choice_blurb = ""; 01685 values[68].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_24"; 01686 values[68].choice_label = _("control-24"); 01687 values[68].choice_blurb = ""; 01688 values[69].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_25"; 01689 values[69].choice_label = _("control-25"); 01690 values[69].choice_blurb = ""; 01691 values[70].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_26"; 01692 values[70].choice_label = _("control-26"); 01693 values[70].choice_blurb = ""; 01694 values[71].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_27"; 01695 values[71].choice_label = _("control-27"); 01696 values[71].choice_blurb = ""; 01697 values[72].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_28"; 01698 values[72].choice_label = _("control-28"); 01699 values[72].choice_blurb = ""; 01700 values[73].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_29"; 01701 values[73].choice_label = _("control-29"); 01702 values[73].choice_blurb = ""; 01703 values[74].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_30"; 01704 values[74].choice_label = _("control-30"); 01705 values[74].choice_blurb = ""; 01706 values[75].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_31"; 01707 values[75].choice_label = _("control-31"); 01708 values[75].choice_blurb = ""; 01709 values[76].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_32"; 01710 values[76].choice_label = _("Control 32 Bank Select LSB"); 01711 values[76].choice_blurb = ""; 01712 values[77].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_33"; 01713 values[77].choice_label = _("Control 33 Modulation Depth LSB"); 01714 values[77].choice_blurb = ""; 01715 values[78].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_34"; 01716 values[78].choice_label = _("Control 34 Breath Control LSB"); 01717 values[78].choice_blurb = ""; 01718 values[79].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_35"; 01719 values[79].choice_label = _("control-35"); 01720 values[79].choice_blurb = ""; 01721 values[80].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_36"; 01722 values[80].choice_label = _("Control 36 Foot Controller LSB"); 01723 values[80].choice_blurb = ""; 01724 values[81].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_37"; 01725 values[81].choice_label = _("Control 37 Portamento Time LSB"); 01726 values[81].choice_blurb = ""; 01727 values[82].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_38"; 01728 values[82].choice_label = _("Control 38 Data Entry LSB"); 01729 values[82].choice_blurb = ""; 01730 values[83].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_39"; 01731 values[83].choice_label = _("Control 39 Volume LSB"); 01732 values[83].choice_blurb = ""; 01733 values[84].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_40"; 01734 values[84].choice_label = _("Control 40 Balance LSB"); 01735 values[84].choice_blurb = ""; 01736 values[85].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_41"; 01737 values[85].choice_label = _("control-41"); 01738 values[85].choice_blurb = ""; 01739 values[86].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_42"; 01740 values[86].choice_label = _("Control 42 Panorama LSB"); 01741 values[86].choice_blurb = ""; 01742 values[87].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_43"; 01743 values[87].choice_label = _("Control 43 Expression LSB"); 01744 values[87].choice_blurb = ""; 01745 values[88].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_44"; 01746 values[88].choice_label = _("Control 44 Effect Control 1 LSB"); 01747 values[88].choice_blurb = ""; 01748 values[89].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_45"; 01749 values[89].choice_label = _("Control 45 Effect Control 2 LSB"); 01750 values[89].choice_blurb = ""; 01751 values[90].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_46"; 01752 values[90].choice_label = _("control-46"); 01753 values[90].choice_blurb = ""; 01754 values[91].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_47"; 01755 values[91].choice_label = _("control-47"); 01756 values[91].choice_blurb = ""; 01757 values[92].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_48"; 01758 values[92].choice_label = _("Control 48 General Purpose Controller 1 LSB"); 01759 values[92].choice_blurb = ""; 01760 values[93].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_49"; 01761 values[93].choice_label = _("Control 49 General Purpose Controller 2 LSB"); 01762 values[93].choice_blurb = ""; 01763 values[94].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_50"; 01764 values[94].choice_label = _("Control 50 General Purpose Controller 3 LSB"); 01765 values[94].choice_blurb = ""; 01766 values[95].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_51"; 01767 values[95].choice_label = _("Control 51 General Purpose Controller 4 LSB"); 01768 values[95].choice_blurb = ""; 01769 values[96].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_52"; 01770 values[96].choice_label = _("control-52"); 01771 values[96].choice_blurb = ""; 01772 values[97].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_53"; 01773 values[97].choice_label = _("control-53"); 01774 values[97].choice_blurb = ""; 01775 values[98].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_54"; 01776 values[98].choice_label = _("control-54"); 01777 values[98].choice_blurb = ""; 01778 values[99].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_55"; 01779 values[99].choice_label = _("control-55"); 01780 values[99].choice_blurb = ""; 01781 values[100].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_56"; 01782 values[100].choice_label = _("control-56"); 01783 values[100].choice_blurb = ""; 01784 values[101].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_57"; 01785 values[101].choice_label = _("control-57"); 01786 values[101].choice_blurb = ""; 01787 values[102].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_58"; 01788 values[102].choice_label = _("control-58"); 01789 values[102].choice_blurb = ""; 01790 values[103].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_59"; 01791 values[103].choice_label = _("control-59"); 01792 values[103].choice_blurb = ""; 01793 values[104].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_60"; 01794 values[104].choice_label = _("control-60"); 01795 values[104].choice_blurb = ""; 01796 values[105].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_61"; 01797 values[105].choice_label = _("control-61"); 01798 values[105].choice_blurb = ""; 01799 values[106].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_62"; 01800 values[106].choice_label = _("control-62"); 01801 values[106].choice_blurb = ""; 01802 values[107].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_63"; 01803 values[107].choice_label = _("control-63"); 01804 values[107].choice_blurb = ""; 01805 values[108].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_64"; 01806 values[108].choice_label = _("Control 64 Damper Pedal Switch (Sustain)"); 01807 values[108].choice_blurb = ""; 01808 values[109].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_65"; 01809 values[109].choice_label = _("Control 65 Portamento Switch"); 01810 values[109].choice_blurb = ""; 01811 values[110].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_66"; 01812 values[110].choice_label = _("Control 66 Sustenuto Switch"); 01813 values[110].choice_blurb = ""; 01814 values[111].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_67"; 01815 values[111].choice_label = _("Control 67 Soft Switch"); 01816 values[111].choice_blurb = ""; 01817 values[112].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_68"; 01818 values[112].choice_label = _("Control 68 Legato Pedal Switch"); 01819 values[112].choice_blurb = ""; 01820 values[113].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_69"; 01821 values[113].choice_label = _("Control 69 Hold Pedal Switch"); 01822 values[113].choice_blurb = ""; 01823 values[114].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_70"; 01824 values[114].choice_label = _("Control 70 Sound Variation"); 01825 values[114].choice_blurb = ""; 01826 values[115].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_71"; 01827 values[115].choice_label = _("Control 71 Filter Resonance (Timbre)"); 01828 values[115].choice_blurb = ""; 01829 values[116].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_72"; 01830 values[116].choice_label = _("Control 72 Sound Release Time"); 01831 values[116].choice_blurb = ""; 01832 values[117].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_73"; 01833 values[117].choice_label = _("Control 73 Sound Attack Time"); 01834 values[117].choice_blurb = ""; 01835 values[118].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_74"; 01836 values[118].choice_label = _("Control 74 Sound Brightness"); 01837 values[118].choice_blurb = ""; 01838 values[119].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_75"; 01839 values[119].choice_label = _("Control 75 Sound Decay Time"); 01840 values[119].choice_blurb = ""; 01841 values[120].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_76"; 01842 values[120].choice_label = _("Control 76 Vibrato Rate"); 01843 values[120].choice_blurb = ""; 01844 values[121].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_77"; 01845 values[121].choice_label = _("Control 77 Vibrato Depth"); 01846 values[121].choice_blurb = ""; 01847 values[122].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_78"; 01848 values[122].choice_label = _("Control 78 Vibrato Delay"); 01849 values[122].choice_blurb = ""; 01850 values[123].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_79"; 01851 values[123].choice_label = _("Control 79 Sound Control 10"); 01852 values[123].choice_blurb = ""; 01853 values[124].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_80"; 01854 values[124].choice_label = _("Control 80 General Purpose Switch 5"); 01855 values[124].choice_blurb = ""; 01856 values[125].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_81"; 01857 values[125].choice_label = _("Control 81 General Purpose Switch 6"); 01858 values[125].choice_blurb = ""; 01859 values[126].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_82"; 01860 values[126].choice_label = _("Control 82 General Purpose Switch 7"); 01861 values[126].choice_blurb = ""; 01862 values[127].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_83"; 01863 values[127].choice_label = _("Control 83 General Purpose Switch 8"); 01864 values[127].choice_blurb = ""; 01865 values[128].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_84"; 01866 values[128].choice_label = _("Control 84 Portamento Control (Note)"); 01867 values[128].choice_blurb = ""; 01868 values[129].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_85"; 01869 values[129].choice_label = _("control-85"); 01870 values[129].choice_blurb = ""; 01871 values[130].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_86"; 01872 values[130].choice_label = _("control-86"); 01873 values[130].choice_blurb = ""; 01874 values[131].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_87"; 01875 values[131].choice_label = _("control-87"); 01876 values[131].choice_blurb = ""; 01877 values[132].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_88"; 01878 values[132].choice_label = _("control-88"); 01879 values[132].choice_blurb = ""; 01880 values[133].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_89"; 01881 values[133].choice_label = _("control-89"); 01882 values[133].choice_blurb = ""; 01883 values[134].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_90"; 01884 values[134].choice_label = _("control-90"); 01885 values[134].choice_blurb = ""; 01886 values[135].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_91"; 01887 values[135].choice_label = _("Control 91 Reverb Depth"); 01888 values[135].choice_blurb = ""; 01889 values[136].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_92"; 01890 values[136].choice_label = _("Control 92 Tremolo Depth"); 01891 values[136].choice_blurb = ""; 01892 values[137].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_93"; 01893 values[137].choice_label = _("Control 93 Chorus Depth"); 01894 values[137].choice_blurb = ""; 01895 values[138].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_94"; 01896 values[138].choice_label = _("Control 93 Detune Depth"); 01897 values[138].choice_blurb = ""; 01898 values[139].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_95"; 01899 values[139].choice_label = _("Control 95 Phase Depth"); 01900 values[139].choice_blurb = ""; 01901 values[140].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_96"; 01902 values[140].choice_label = _("Control 96 Data Increment Trigger"); 01903 values[140].choice_blurb = ""; 01904 values[141].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_97"; 01905 values[141].choice_label = _("Control 97 Data Decrement Trigger"); 01906 values[141].choice_blurb = ""; 01907 values[142].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_98"; 01908 values[142].choice_label = _("Control 98 Non-Registered Parameter MSB"); 01909 values[142].choice_blurb = ""; 01910 values[143].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_99"; 01911 values[143].choice_label = _("Control 99 Non-Registered Parameter LSB"); 01912 values[143].choice_blurb = ""; 01913 values[144].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_100"; 01914 values[144].choice_label = _("Control 100 Registered Parameter MSB"); 01915 values[144].choice_blurb = ""; 01916 values[145].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_101"; 01917 values[145].choice_label = _("Control 101 Registered Parameter LSB"); 01918 values[145].choice_blurb = ""; 01919 values[146].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_102"; 01920 values[146].choice_label = _("control-102"); 01921 values[146].choice_blurb = ""; 01922 values[147].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_103"; 01923 values[147].choice_label = _("control-103"); 01924 values[147].choice_blurb = ""; 01925 values[148].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_104"; 01926 values[148].choice_label = _("control-104"); 01927 values[148].choice_blurb = ""; 01928 values[149].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_105"; 01929 values[149].choice_label = _("control-105"); 01930 values[149].choice_blurb = ""; 01931 values[150].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_106"; 01932 values[150].choice_label = _("control-106"); 01933 values[150].choice_blurb = ""; 01934 values[151].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_107"; 01935 values[151].choice_label = _("control-107"); 01936 values[151].choice_blurb = ""; 01937 values[152].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_108"; 01938 values[152].choice_label = _("control-108"); 01939 values[152].choice_blurb = ""; 01940 values[153].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_109"; 01941 values[153].choice_label = _("control-109"); 01942 values[153].choice_blurb = ""; 01943 values[154].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_110"; 01944 values[154].choice_label = _("control-110"); 01945 values[154].choice_blurb = ""; 01946 values[155].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_111"; 01947 values[155].choice_label = _("control-111"); 01948 values[155].choice_blurb = ""; 01949 values[156].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_112"; 01950 values[156].choice_label = _("control-112"); 01951 values[156].choice_blurb = ""; 01952 values[157].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_113"; 01953 values[157].choice_label = _("control-113"); 01954 values[157].choice_blurb = ""; 01955 values[158].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_114"; 01956 values[158].choice_label = _("control-114"); 01957 values[158].choice_blurb = ""; 01958 values[159].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_115"; 01959 values[159].choice_label = _("control-115"); 01960 values[159].choice_blurb = ""; 01961 values[160].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_116"; 01962 values[160].choice_label = _("control-116"); 01963 values[160].choice_blurb = ""; 01964 values[161].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_117"; 01965 values[161].choice_label = _("control-117"); 01966 values[161].choice_blurb = ""; 01967 values[162].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_118"; 01968 values[162].choice_label = _("control-118"); 01969 values[162].choice_blurb = ""; 01970 values[163].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_119"; 01971 values[163].choice_label = _("control-119"); 01972 values[163].choice_blurb = ""; 01973 values[164].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_120"; 01974 values[164].choice_label = _("Control 120 All Sound Off ITrigger"); 01975 values[164].choice_blurb = ""; 01976 values[165].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_121"; 01977 values[165].choice_label = _("Control 121 All Controllers Off ITrigger"); 01978 values[165].choice_blurb = ""; 01979 values[166].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_122"; 01980 values[166].choice_label = _("Control 122 Local Control Switch"); 01981 values[166].choice_blurb = ""; 01982 values[167].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_123"; 01983 values[167].choice_label = _("Control 123 All Notes Off ITrigger"); 01984 values[167].choice_blurb = ""; 01985 values[168].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_124"; 01986 values[168].choice_label = _("Control 124 Omni Mode Off ITrigger"); 01987 values[168].choice_blurb = ""; 01988 values[169].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_125"; 01989 values[169].choice_label = _("Control 125 Omni Mode On ITrigger"); 01990 values[169].choice_blurb = ""; 01991 values[170].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_126"; 01992 values[170].choice_label = _("Control 126 Monophonic Voices Mode"); 01993 values[170].choice_blurb = ""; 01994 values[171].choice_ident = "BSE_MIDI_SIGNAL_CONTROL_127"; 01995 values[171].choice_label = _("Control 127 Polyphonic Mode On ITrigger"); 01996 values[171].choice_blurb = ""; 01997 } 01998 return choice_values; 01999 } 02000 02001 static SfiChoiceValues 02002 MidiControlType_choice_values() 02003 { 02004 static SfiChoiceValue values[161]; 02005 static const SfiChoiceValues choice_values = { 02006 G_N_ELEMENTS (values), values, 02007 }; 02008 if (!values[0].choice_ident) 02009 { 02010 values[0].choice_ident = "BSE_MIDI_CONTROL_NONE"; 02011 values[0].choice_label = _("None"); 02012 values[0].choice_blurb = ""; 02013 values[1].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_0"; 02014 values[1].choice_label = _("Bank Select"); 02015 values[1].choice_blurb = _("Continuous MIDI Control #1 - Bank Select"); 02016 values[2].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_1"; 02017 values[2].choice_label = _("Modulation Depth"); 02018 values[2].choice_blurb = ""; 02019 values[3].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_2"; 02020 values[3].choice_label = _("Breath Control"); 02021 values[3].choice_blurb = ""; 02022 values[4].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_3"; 02023 values[4].choice_label = _("Continuous 3"); 02024 values[4].choice_blurb = ""; 02025 values[5].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_4"; 02026 values[5].choice_label = _("Foot Controller"); 02027 values[5].choice_blurb = ""; 02028 values[6].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_5"; 02029 values[6].choice_label = _("Portamento Time"); 02030 values[6].choice_blurb = ""; 02031 values[7].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_6"; 02032 values[7].choice_label = _("Data Entry"); 02033 values[7].choice_blurb = ""; 02034 values[8].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_7"; 02035 values[8].choice_label = _("Volume"); 02036 values[8].choice_blurb = ""; 02037 values[9].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_8"; 02038 values[9].choice_label = _("Balance"); 02039 values[9].choice_blurb = ""; 02040 values[10].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_9"; 02041 values[10].choice_label = _("Continuous 9"); 02042 values[10].choice_blurb = ""; 02043 values[11].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_10"; 02044 values[11].choice_label = _("Panorama"); 02045 values[11].choice_blurb = ""; 02046 values[12].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_11"; 02047 values[12].choice_label = _("Expression"); 02048 values[12].choice_blurb = ""; 02049 values[13].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_12"; 02050 values[13].choice_label = _("Effect Control 1"); 02051 values[13].choice_blurb = ""; 02052 values[14].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_13"; 02053 values[14].choice_label = _("Effect Control 2"); 02054 values[14].choice_blurb = ""; 02055 values[15].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_14"; 02056 values[15].choice_label = _("Continuous 14"); 02057 values[15].choice_blurb = ""; 02058 values[16].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_15"; 02059 values[16].choice_label = _("Continuous 15"); 02060 values[16].choice_blurb = ""; 02061 values[17].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_16"; 02062 values[17].choice_label = _("General Purpose Controller 1"); 02063 values[17].choice_blurb = ""; 02064 values[18].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_17"; 02065 values[18].choice_label = _("General Purpose Controller 2"); 02066 values[18].choice_blurb = ""; 02067 values[19].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_18"; 02068 values[19].choice_label = _("General Purpose Controller 3"); 02069 values[19].choice_blurb = ""; 02070 values[20].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_19"; 02071 values[20].choice_label = _("General Purpose Controller 4"); 02072 values[20].choice_blurb = ""; 02073 values[21].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_20"; 02074 values[21].choice_label = _("Continuous 20"); 02075 values[21].choice_blurb = ""; 02076 values[22].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_21"; 02077 values[22].choice_label = _("Continuous 21"); 02078 values[22].choice_blurb = ""; 02079 values[23].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_22"; 02080 values[23].choice_label = _("Continuous 22"); 02081 values[23].choice_blurb = ""; 02082 values[24].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_23"; 02083 values[24].choice_label = _("Continuous 23"); 02084 values[24].choice_blurb = ""; 02085 values[25].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_24"; 02086 values[25].choice_label = _("Continuous 24"); 02087 values[25].choice_blurb = ""; 02088 values[26].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_25"; 02089 values[26].choice_label = _("Continuous 25"); 02090 values[26].choice_blurb = ""; 02091 values[27].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_26"; 02092 values[27].choice_label = _("Continuous 26"); 02093 values[27].choice_blurb = ""; 02094 values[28].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_27"; 02095 values[28].choice_label = _("Continuous 27"); 02096 values[28].choice_blurb = ""; 02097 values[29].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_28"; 02098 values[29].choice_label = _("Continuous 28"); 02099 values[29].choice_blurb = ""; 02100 values[30].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_29"; 02101 values[30].choice_label = _("Continuous 29"); 02102 values[30].choice_blurb = ""; 02103 values[31].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_30"; 02104 values[31].choice_label = _("Continuous 30"); 02105 values[31].choice_blurb = ""; 02106 values[32].choice_ident = "BSE_MIDI_CONTROL_CONTINUOUS_31"; 02107 values[32].choice_label = _("Continuous 31"); 02108 values[32].choice_blurb = ""; 02109 values[33].choice_ident = "BSE_MIDI_CONTROL_0"; 02110 values[33].choice_label = _("Control 0 Bank Select MSB"); 02111 values[33].choice_blurb = ""; 02112 values[34].choice_ident = "BSE_MIDI_CONTROL_1"; 02113 values[34].choice_label = _("Control 1 Modulation Depth MSB"); 02114 values[34].choice_blurb = ""; 02115 values[35].choice_ident = "BSE_MIDI_CONTROL_2"; 02116 values[35].choice_label = _("Control 2 Breath Control MSB"); 02117 values[35].choice_blurb = ""; 02118 values[36].choice_ident = "BSE_MIDI_CONTROL_3"; 02119 values[36].choice_label = _("control-3"); 02120 values[36].choice_blurb = ""; 02121 values[37].choice_ident = "BSE_MIDI_CONTROL_4"; 02122 values[37].choice_label = _("Control 4 Foot Controller MSB"); 02123 values[37].choice_blurb = ""; 02124 values[38].choice_ident = "BSE_MIDI_CONTROL_5"; 02125 values[38].choice_label = _("Control 5 Portamento Time MSB"); 02126 values[38].choice_blurb = ""; 02127 values[39].choice_ident = "BSE_MIDI_CONTROL_6"; 02128 values[39].choice_label = _("Control 6 Data Entry MSB"); 02129 values[39].choice_blurb = ""; 02130 values[40].choice_ident = "BSE_MIDI_CONTROL_7"; 02131 values[40].choice_label = _("Control 7 Volume MSB"); 02132 values[40].choice_blurb = ""; 02133 values[41].choice_ident = "BSE_MIDI_CONTROL_8"; 02134 values[41].choice_label = _("Control 8 Balance MSB"); 02135 values[41].choice_blurb = ""; 02136 values[42].choice_ident = "BSE_MIDI_CONTROL_9"; 02137 values[42].choice_label = _("control-9"); 02138 values[42].choice_blurb = ""; 02139 values[43].choice_ident = "BSE_MIDI_CONTROL_10"; 02140 values[43].choice_label = _("Control 10 Panorama MSB"); 02141 values[43].choice_blurb = ""; 02142 values[44].choice_ident = "BSE_MIDI_CONTROL_11"; 02143 values[44].choice_label = _("Control 11 Expression MSB"); 02144 values[44].choice_blurb = ""; 02145 values[45].choice_ident = "BSE_MIDI_CONTROL_12"; 02146 values[45].choice_label = _("Control 12 Effect Control 1 MSB"); 02147 values[45].choice_blurb = ""; 02148 values[46].choice_ident = "BSE_MIDI_CONTROL_13"; 02149 values[46].choice_label = _("Control 13 Effect Control 2 MSB"); 02150 values[46].choice_blurb = ""; 02151 values[47].choice_ident = "BSE_MIDI_CONTROL_14"; 02152 values[47].choice_label = _("control-14"); 02153 values[47].choice_blurb = ""; 02154 values[48].choice_ident = "BSE_MIDI_CONTROL_15"; 02155 values[48].choice_label = _("control-15"); 02156 values[48].choice_blurb = ""; 02157 values[49].choice_ident = "BSE_MIDI_CONTROL_16"; 02158 values[49].choice_label = _("Control 16 General Purpose Controller 1 MSB"); 02159 values[49].choice_blurb = ""; 02160 values[50].choice_ident = "BSE_MIDI_CONTROL_17"; 02161 values[50].choice_label = _("Control 17 General Purpose Controller 2 MSB"); 02162 values[50].choice_blurb = ""; 02163 values[51].choice_ident = "BSE_MIDI_CONTROL_18"; 02164 values[51].choice_label = _("Control 18 General Purpose Controller 3 MSB"); 02165 values[51].choice_blurb = ""; 02166 values[52].choice_ident = "BSE_MIDI_CONTROL_19"; 02167 values[52].choice_label = _("Control 19 General Purpose Controller 4 MSB"); 02168 values[52].choice_blurb = ""; 02169 values[53].choice_ident = "BSE_MIDI_CONTROL_20"; 02170 values[53].choice_label = _("control-20"); 02171 values[53].choice_blurb = ""; 02172 values[54].choice_ident = "BSE_MIDI_CONTROL_21"; 02173 values[54].choice_label = _("control-21"); 02174 values[54].choice_blurb = ""; 02175 values[55].choice_ident = "BSE_MIDI_CONTROL_22"; 02176 values[55].choice_label = _("control-22"); 02177 values[55].choice_blurb = ""; 02178 values[56].choice_ident = "BSE_MIDI_CONTROL_23"; 02179 values[56].choice_label = _("control-23"); 02180 values[56].choice_blurb = ""; 02181 values[57].choice_ident = "BSE_MIDI_CONTROL_24"; 02182 values[57].choice_label = _("control-24"); 02183 values[57].choice_blurb = ""; 02184 values[58].choice_ident = "BSE_MIDI_CONTROL_25"; 02185 values[58].choice_label = _("control-25"); 02186 values[58].choice_blurb = ""; 02187 values[59].choice_ident = "BSE_MIDI_CONTROL_26"; 02188 values[59].choice_label = _("control-26"); 02189 values[59].choice_blurb = ""; 02190 values[60].choice_ident = "BSE_MIDI_CONTROL_27"; 02191 values[60].choice_label = _("control-27"); 02192 values[60].choice_blurb = ""; 02193 values[61].choice_ident = "BSE_MIDI_CONTROL_28"; 02194 values[61].choice_label = _("control-28"); 02195 values[61].choice_blurb = ""; 02196 values[62].choice_ident = "BSE_MIDI_CONTROL_29"; 02197 values[62].choice_label = _("control-29"); 02198 values[62].choice_blurb = ""; 02199 values[63].choice_ident = "BSE_MIDI_CONTROL_30"; 02200 values[63].choice_label = _("control-30"); 02201 values[63].choice_blurb = ""; 02202 values[64].choice_ident = "BSE_MIDI_CONTROL_31"; 02203 values[64].choice_label = _("control-31"); 02204 values[64].choice_blurb = ""; 02205 values[65].choice_ident = "BSE_MIDI_CONTROL_32"; 02206 values[65].choice_label = _("Control 32 Bank Select LSB"); 02207 values[65].choice_blurb = ""; 02208 values[66].choice_ident = "BSE_MIDI_CONTROL_33"; 02209 values[66].choice_label = _("Control 33 Modulation Depth LSB"); 02210 values[66].choice_blurb = ""; 02211 values[67].choice_ident = "BSE_MIDI_CONTROL_34"; 02212 values[67].choice_label = _("Control 34 Breath Control LSB"); 02213 values[67].choice_blurb = ""; 02214 values[68].choice_ident = "BSE_MIDI_CONTROL_35"; 02215 values[68].choice_label = _("control-35"); 02216 values[68].choice_blurb = ""; 02217 values[69].choice_ident = "BSE_MIDI_CONTROL_36"; 02218 values[69].choice_label = _("Control 36 Foot Controller LSB"); 02219 values[69].choice_blurb = ""; 02220 values[70].choice_ident = "BSE_MIDI_CONTROL_37"; 02221 values[70].choice_label = _("Control 37 Portamento Time LSB"); 02222 values[70].choice_blurb = ""; 02223 values[71].choice_ident = "BSE_MIDI_CONTROL_38"; 02224 values[71].choice_label = _("Control 38 Data Entry LSB"); 02225 values[71].choice_blurb = ""; 02226 values[72].choice_ident = "BSE_MIDI_CONTROL_39"; 02227 values[72].choice_label = _("Control 39 Volume LSB"); 02228 values[72].choice_blurb = ""; 02229 values[73].choice_ident = "BSE_MIDI_CONTROL_40"; 02230 values[73].choice_label = _("Control 40 Balance LSB"); 02231 values[73].choice_blurb = ""; 02232 values[74].choice_ident = "BSE_MIDI_CONTROL_41"; 02233 values[74].choice_label = _("control-41"); 02234 values[74].choice_blurb = ""; 02235 values[75].choice_ident = "BSE_MIDI_CONTROL_42"; 02236 values[75].choice_label = _("Control 42 Panorama LSB"); 02237 values[75].choice_blurb = ""; 02238 values[76].choice_ident = "BSE_MIDI_CONTROL_43"; 02239 values[76].choice_label = _("Control 43 Expression LSB"); 02240 values[76].choice_blurb = ""; 02241 values[77].choice_ident = "BSE_MIDI_CONTROL_44"; 02242 values[77].choice_label = _("Control 44 Effect Control 1 LSB"); 02243 values[77].choice_blurb = ""; 02244 values[78].choice_ident = "BSE_MIDI_CONTROL_45"; 02245 values[78].choice_label = _("Control 45 Effect Control 2 LSB"); 02246 values[78].choice_blurb = ""; 02247 values[79].choice_ident = "BSE_MIDI_CONTROL_46"; 02248 values[79].choice_label = _("control-46"); 02249 values[79].choice_blurb = ""; 02250 values[80].choice_ident = "BSE_MIDI_CONTROL_47"; 02251 values[80].choice_label = _("control-47"); 02252 values[80].choice_blurb = ""; 02253 values[81].choice_ident = "BSE_MIDI_CONTROL_48"; 02254 values[81].choice_label = _("Control 48 General Purpose Controller 1 LSB"); 02255 values[81].choice_blurb = ""; 02256 values[82].choice_ident = "BSE_MIDI_CONTROL_49"; 02257 values[82].choice_label = _("Control 49 General Purpose Controller 2 LSB"); 02258 values[82].choice_blurb = ""; 02259 values[83].choice_ident = "BSE_MIDI_CONTROL_50"; 02260 values[83].choice_label = _("Control 50 General Purpose Controller 3 LSB"); 02261 values[83].choice_blurb = ""; 02262 values[84].choice_ident = "BSE_MIDI_CONTROL_51"; 02263 values[84].choice_label = _("Control 51 General Purpose Controller 4 LSB"); 02264 values[84].choice_blurb = ""; 02265 values[85].choice_ident = "BSE_MIDI_CONTROL_52"; 02266 values[85].choice_label = _("control-52"); 02267 values[85].choice_blurb = ""; 02268 values[86].choice_ident = "BSE_MIDI_CONTROL_53"; 02269 values[86].choice_label = _("control-53"); 02270 values[86].choice_blurb = ""; 02271 values[87].choice_ident = "BSE_MIDI_CONTROL_54"; 02272 values[87].choice_label = _("control-54"); 02273 values[87].choice_blurb = ""; 02274 values[88].choice_ident = "BSE_MIDI_CONTROL_55"; 02275 values[88].choice_label = _("control-55"); 02276 values[88].choice_blurb = ""; 02277 values[89].choice_ident = "BSE_MIDI_CONTROL_56"; 02278 values[89].choice_label = _("control-56"); 02279 values[89].choice_blurb = ""; 02280 values[90].choice_ident = "BSE_MIDI_CONTROL_57"; 02281 values[90].choice_label = _("control-57"); 02282 values[90].choice_blurb = ""; 02283 values[91].choice_ident = "BSE_MIDI_CONTROL_58"; 02284 values[91].choice_label = _("control-58"); 02285 values[91].choice_blurb = ""; 02286 values[92].choice_ident = "BSE_MIDI_CONTROL_59"; 02287 values[92].choice_label = _("control-59"); 02288 values[92].choice_blurb = ""; 02289 values[93].choice_ident = "BSE_MIDI_CONTROL_60"; 02290 values[93].choice_label = _("control-60"); 02291 values[93].choice_blurb = ""; 02292 values[94].choice_ident = "BSE_MIDI_CONTROL_61"; 02293 values[94].choice_label = _("control-61"); 02294 values[94].choice_blurb = ""; 02295 values[95].choice_ident = "BSE_MIDI_CONTROL_62"; 02296 values[95].choice_label = _("control-62"); 02297 values[95].choice_blurb = ""; 02298 values[96].choice_ident = "BSE_MIDI_CONTROL_63"; 02299 values[96].choice_label = _("control-63"); 02300 values[96].choice_blurb = ""; 02301 values[97].choice_ident = "BSE_MIDI_CONTROL_64"; 02302 values[97].choice_label = _("Control 64 Damper Pedal Switch (Sustain)"); 02303 values[97].choice_blurb = ""; 02304 values[98].choice_ident = "BSE_MIDI_CONTROL_65"; 02305 values[98].choice_label = _("Control 65 Portamento Switch"); 02306 values[98].choice_blurb = ""; 02307 values[99].choice_ident = "BSE_MIDI_CONTROL_66"; 02308 values[99].choice_label = _("Control 66 Sustenuto Switch"); 02309 values[99].choice_blurb = ""; 02310 values[100].choice_ident = "BSE_MIDI_CONTROL_67"; 02311 values[100].choice_label = _("Control 67 Soft Switch"); 02312 values[100].choice_blurb = ""; 02313 values[101].choice_ident = "BSE_MIDI_CONTROL_68"; 02314 values[101].choice_label = _("Control 68 Legato Pedal Switch"); 02315 values[101].choice_blurb = ""; 02316 values[102].choice_ident = "BSE_MIDI_CONTROL_69"; 02317 values[102].choice_label = _("Control 69 Hold Pedal Switch"); 02318 values[102].choice_blurb = ""; 02319 values[103].choice_ident = "BSE_MIDI_CONTROL_70"; 02320 values[103].choice_label = _("Control 70 Sound Variation"); 02321 values[103].choice_blurb = ""; 02322 values[104].choice_ident = "BSE_MIDI_CONTROL_71"; 02323 values[104].choice_label = _("Control 71 Filter Resonance (Timbre)"); 02324 values[104].choice_blurb = ""; 02325 values[105].choice_ident = "BSE_MIDI_CONTROL_72"; 02326 values[105].choice_label = _("Control 72 Sound Release Time"); 02327 values[105].choice_blurb = ""; 02328 values[106].choice_ident = "BSE_MIDI_CONTROL_73"; 02329 values[106].choice_label = _("Control 73 Sound Attack Time"); 02330 values[106].choice_blurb = ""; 02331 values[107].choice_ident = "BSE_MIDI_CONTROL_74"; 02332 values[107].choice_label = _("Control 74 Sound Brightness"); 02333 values[107].choice_blurb = ""; 02334 values[108].choice_ident = "BSE_MIDI_CONTROL_75"; 02335 values[108].choice_label = _("Control 75 Sound Decay Time"); 02336 values[108].choice_blurb = ""; 02337 values[109].choice_ident = "BSE_MIDI_CONTROL_76"; 02338 values[109].choice_label = _("Control 76 Vibrato Rate"); 02339 values[109].choice_blurb = ""; 02340 values[110].choice_ident = "BSE_MIDI_CONTROL_77"; 02341 values[110].choice_label = _("Control 77 Vibrato Depth"); 02342 values[110].choice_blurb = ""; 02343 values[111].choice_ident = "BSE_MIDI_CONTROL_78"; 02344 values[111].choice_label = _("Control 78 Vibrato Delay"); 02345 values[111].choice_blurb = ""; 02346 values[112].choice_ident = "BSE_MIDI_CONTROL_79"; 02347 values[112].choice_label = _("Control 79 Sound Control 10"); 02348 values[112].choice_blurb = ""; 02349 values[113].choice_ident = "BSE_MIDI_CONTROL_80"; 02350 values[113].choice_label = _("Control 80 General Purpose Switch 5"); 02351 values[113].choice_blurb = ""; 02352 values[114].choice_ident = "BSE_MIDI_CONTROL_81"; 02353 values[114].choice_label = _("Control 81 General Purpose Switch 6"); 02354 values[114].choice_blurb = ""; 02355 values[115].choice_ident = "BSE_MIDI_CONTROL_82"; 02356 values[115].choice_label = _("Control 82 General Purpose Switch 7"); 02357 values[115].choice_blurb = ""; 02358 values[116].choice_ident = "BSE_MIDI_CONTROL_83"; 02359 values[116].choice_label = _("Control 83 General Purpose Switch 8"); 02360 values[116].choice_blurb = ""; 02361 values[117].choice_ident = "BSE_MIDI_CONTROL_84"; 02362 values[117].choice_label = _("Control 84 Portamento Control (Note)"); 02363 values[117].choice_blurb = ""; 02364 values[118].choice_ident = "BSE_MIDI_CONTROL_85"; 02365 values[118].choice_label = _("control-85"); 02366 values[118].choice_blurb = ""; 02367 values[119].choice_ident = "BSE_MIDI_CONTROL_86"; 02368 values[119].choice_label = _("control-86"); 02369 values[119].choice_blurb = ""; 02370 values[120].choice_ident = "BSE_MIDI_CONTROL_87"; 02371 values[120].choice_label = _("control-87"); 02372 values[120].choice_blurb = ""; 02373 values[121].choice_ident = "BSE_MIDI_CONTROL_88"; 02374 values[121].choice_label = _("control-88"); 02375 values[121].choice_blurb = ""; 02376 values[122].choice_ident = "BSE_MIDI_CONTROL_89"; 02377 values[122].choice_label = _("control-89"); 02378 values[122].choice_blurb = ""; 02379 values[123].choice_ident = "BSE_MIDI_CONTROL_90"; 02380 values[123].choice_label = _("control-90"); 02381 values[123].choice_blurb = ""; 02382 values[124].choice_ident = "BSE_MIDI_CONTROL_91"; 02383 values[124].choice_label = _("Control 91 Reverb Depth"); 02384 values[124].choice_blurb = ""; 02385 values[125].choice_ident = "BSE_MIDI_CONTROL_92"; 02386 values[125].choice_label = _("Control 92 Tremolo Depth"); 02387 values[125].choice_blurb = ""; 02388 values[126].choice_ident = "BSE_MIDI_CONTROL_93"; 02389 values[126].choice_label = _("Control 93 Chorus Depth"); 02390 values[126].choice_blurb = ""; 02391 values[127].choice_ident = "BSE_MIDI_CONTROL_94"; 02392 values[127].choice_label = _("Control 93 Detune Depth"); 02393 values[127].choice_blurb = ""; 02394 values[128].choice_ident = "BSE_MIDI_CONTROL_95"; 02395 values[128].choice_label = _("Control 95 Phase Depth"); 02396 values[128].choice_blurb = ""; 02397 values[129].choice_ident = "BSE_MIDI_CONTROL_96"; 02398 values[129].choice_label = _("Control 96 Data Increment Trigger"); 02399 values[129].choice_blurb = ""; 02400 values[130].choice_ident = "BSE_MIDI_CONTROL_97"; 02401 values[130].choice_label = _("Control 97 Data Decrement Trigger"); 02402 values[130].choice_blurb = ""; 02403 values[131].choice_ident = "BSE_MIDI_CONTROL_98"; 02404 values[131].choice_label = _("Control 98 Non-Registered Parameter MSB"); 02405 values[131].choice_blurb = ""; 02406 values[132].choice_ident = "BSE_MIDI_CONTROL_99"; 02407 values[132].choice_label = _("Control 99 Non-Registered Parameter LSB"); 02408 values[132].choice_blurb = ""; 02409 values[133].choice_ident = "BSE_MIDI_CONTROL_100"; 02410 values[133].choice_label = _("Control 100 Registered Parameter MSB"); 02411 values[133].choice_blurb = ""; 02412 values[134].choice_ident = "BSE_MIDI_CONTROL_101"; 02413 values[134].choice_label = _("Control 101 Registered Parameter LSB"); 02414 values[134].choice_blurb = ""; 02415 values[135].choice_ident = "BSE_MIDI_CONTROL_102"; 02416 values[135].choice_label = _("control-102"); 02417 values[135].choice_blurb = ""; 02418 values[136].choice_ident = "BSE_MIDI_CONTROL_103"; 02419 values[136].choice_label = _("control-103"); 02420 values[136].choice_blurb = ""; 02421 values[137].choice_ident = "BSE_MIDI_CONTROL_104"; 02422 values[137].choice_label = _("control-104"); 02423 values[137].choice_blurb = ""; 02424 values[138].choice_ident = "BSE_MIDI_CONTROL_105"; 02425 values[138].choice_label = _("control-105"); 02426 values[138].choice_blurb = ""; 02427 values[139].choice_ident = "BSE_MIDI_CONTROL_106"; 02428 values[139].choice_label = _("control-106"); 02429 values[139].choice_blurb = ""; 02430 values[140].choice_ident = "BSE_MIDI_CONTROL_107"; 02431 values[140].choice_label = _("control-107"); 02432 values[140].choice_blurb = ""; 02433 values[141].choice_ident = "BSE_MIDI_CONTROL_108"; 02434 values[141].choice_label = _("control-108"); 02435 values[141].choice_blurb = ""; 02436 values[142].choice_ident = "BSE_MIDI_CONTROL_109"; 02437 values[142].choice_label = _("control-109"); 02438 values[142].choice_blurb = ""; 02439 values[143].choice_ident = "BSE_MIDI_CONTROL_110"; 02440 values[143].choice_label = _("control-110"); 02441 values[143].choice_blurb = ""; 02442 values[144].choice_ident = "BSE_MIDI_CONTROL_111"; 02443 values[144].choice_label = _("control-111"); 02444 values[144].choice_blurb = ""; 02445 values[145].choice_ident = "BSE_MIDI_CONTROL_112"; 02446 values[145].choice_label = _("control-112"); 02447 values[145].choice_blurb = ""; 02448 values[146].choice_ident = "BSE_MIDI_CONTROL_113"; 02449 values[146].choice_label = _("control-113"); 02450 values[146].choice_blurb = ""; 02451 values[147].choice_ident = "BSE_MIDI_CONTROL_114"; 02452 values[147].choice_label = _("control-114"); 02453 values[147].choice_blurb = ""; 02454 values[148].choice_ident = "BSE_MIDI_CONTROL_115"; 02455 values[148].choice_label = _("control-115"); 02456 values[148].choice_blurb = ""; 02457 values[149].choice_ident = "BSE_MIDI_CONTROL_116"; 02458 values[149].choice_label = _("control-116"); 02459 values[149].choice_blurb = ""; 02460 values[150].choice_ident = "BSE_MIDI_CONTROL_117"; 02461 values[150].choice_label = _("control-117"); 02462 values[150].choice_blurb = ""; 02463 values[151].choice_ident = "BSE_MIDI_CONTROL_118"; 02464 values[151].choice_label = _("control-118"); 02465 values[151].choice_blurb = ""; 02466 values[152].choice_ident = "BSE_MIDI_CONTROL_119"; 02467 values[152].choice_label = _("control-119"); 02468 values[152].choice_blurb = ""; 02469 values[153].choice_ident = "BSE_MIDI_CONTROL_120"; 02470 values[153].choice_label = _("Control 120 All Sound Off ITrigger"); 02471 values[153].choice_blurb = ""; 02472 values[154].choice_ident = "BSE_MIDI_CONTROL_121"; 02473 values[154].choice_label = _("Control 121 All Controllers Off ITrigger"); 02474 values[154].choice_blurb = ""; 02475 values[155].choice_ident = "BSE_MIDI_CONTROL_122"; 02476 values[155].choice_label = _("Control 122 Local Control Switch"); 02477 values[155].choice_blurb = ""; 02478 values[156].choice_ident = "BSE_MIDI_CONTROL_123"; 02479 values[156].choice_label = _("Control 123 All Notes Off ITrigger"); 02480 values[156].choice_blurb = ""; 02481 values[157].choice_ident = "BSE_MIDI_CONTROL_124"; 02482 values[157].choice_label = _("Control 124 Omni Mode Off ITrigger"); 02483 values[157].choice_blurb = ""; 02484 values[158].choice_ident = "BSE_MIDI_CONTROL_125"; 02485 values[158].choice_label = _("Control 125 Omni Mode On ITrigger"); 02486 values[158].choice_blurb = ""; 02487 values[159].choice_ident = "BSE_MIDI_CONTROL_126"; 02488 values[159].choice_label = _("Control 126 Monophonic Voices Mode"); 02489 values[159].choice_blurb = ""; 02490 values[160].choice_ident = "BSE_MIDI_CONTROL_127"; 02491 values[160].choice_label = _("Control 127 Polyphonic Mode On ITrigger"); 02492 values[160].choice_blurb = ""; 02493 } 02494 return choice_values; 02495 } 02496 02497 static SfiChoiceValues 02498 MidiChannelEventType_choice_values() 02499 { 02500 static SfiChoiceValue values[18]; 02501 static const SfiChoiceValues choice_values = { 02502 G_N_ELEMENTS (values), values, 02503 }; 02504 if (!values[0].choice_ident) 02505 { 02506 values[0].choice_ident = "BSE_MIDI_EVENT_NONE"; 02507 values[0].choice_label = "bse-midi-event-none"; 02508 values[0].choice_blurb = ""; 02509 values[1].choice_ident = "BSE_MIDI_EVENT_NOTE_OFF"; 02510 values[1].choice_label = "bse-midi-event-note-off"; 02511 values[1].choice_blurb = ""; 02512 values[2].choice_ident = "BSE_MIDI_EVENT_NOTE_ON"; 02513 values[2].choice_label = "bse-midi-event-note-on"; 02514 values[2].choice_blurb = ""; 02515 values[3].choice_ident = "BSE_MIDI_EVENT_KEY_PRESSURE"; 02516 values[3].choice_label = "bse-midi-event-key-pressure"; 02517 values[3].choice_blurb = ""; 02518 values[4].choice_ident = "BSE_MIDI_EVENT_CONTROL_CHANGE"; 02519 values[4].choice_label = "bse-midi-event-control-change"; 02520 values[4].choice_blurb = ""; 02521 values[5].choice_ident = "BSE_MIDI_EVENT_PROGRAM_CHANGE"; 02522 values[5].choice_label = "bse-midi-event-program-change"; 02523 values[5].choice_blurb = ""; 02524 values[6].choice_ident = "BSE_MIDI_EVENT_CHANNEL_PRESSURE"; 02525 values[6].choice_label = "bse-midi-event-channel-pressure"; 02526 values[6].choice_blurb = ""; 02527 values[7].choice_ident = "BSE_MIDI_EVENT_PITCH_BEND"; 02528 values[7].choice_label = "bse-midi-event-pitch-bend"; 02529 values[7].choice_blurb = ""; 02530 values[8].choice_ident = "BSE_MIDI_EVENT_SYS_EX"; 02531 values[8].choice_label = "bse-midi-event-sys-ex"; 02532 values[8].choice_blurb = ""; 02533 values[9].choice_ident = "BSE_MIDI_EVENT_SONG_POINTER"; 02534 values[9].choice_label = "bse-midi-event-song-pointer"; 02535 values[9].choice_blurb = ""; 02536 values[10].choice_ident = "BSE_MIDI_EVENT_SONG_SELECT"; 02537 values[10].choice_label = "bse-midi-event-song-select"; 02538 values[10].choice_blurb = ""; 02539 values[11].choice_ident = "BSE_MIDI_EVENT_TUNE"; 02540 values[11].choice_label = "bse-midi-event-tune"; 02541 values[11].choice_blurb = ""; 02542 values[12].choice_ident = "BSE_MIDI_EVENT_TIMING_CLOCK"; 02543 values[12].choice_label = "bse-midi-event-timing-clock"; 02544 values[12].choice_blurb = ""; 02545 values[13].choice_ident = "BSE_MIDI_EVENT_SONG_START"; 02546 values[13].choice_label = "bse-midi-event-song-start"; 02547 values[13].choice_blurb = ""; 02548 values[14].choice_ident = "BSE_MIDI_EVENT_SONG_CONTINUE"; 02549 values[14].choice_label = "bse-midi-event-song-continue"; 02550 values[14].choice_blurb = ""; 02551 values[15].choice_ident = "BSE_MIDI_EVENT_SONG_STOP"; 02552 values[15].choice_label = "bse-midi-event-song-stop"; 02553 values[15].choice_blurb = ""; 02554 values[16].choice_ident = "BSE_MIDI_EVENT_ACTIVE_SENSING"; 02555 values[16].choice_label = "bse-midi-event-active-sensing"; 02556 values[16].choice_blurb = ""; 02557 values[17].choice_ident = "BSE_MIDI_EVENT_SYSTEM_RESET"; 02558 values[17].choice_label = "bse-midi-event-system-reset"; 02559 values[17].choice_blurb = ""; 02560 } 02561 return choice_values; 02562 } 02563 02564 02565 02566 /* record implementations */ 02567 ::Bse::MidiChannelEventHandle 02568 MidiChannelEvent::from_rec (SfiRec *sfi_rec) 02569 { 02570 GValue *element; 02571 02572 if (!sfi_rec) 02573 return Sfi::INIT_NULL; 02574 02575 ::Bse::MidiChannelEventHandle rec = Sfi::INIT_DEFAULT; 02576 element = sfi_rec_get (sfi_rec, "event_type"); 02577 if (element) 02578 rec->event_type = (::Bse::MidiChannelEventType) sfi_value_get_enum_auto SFI_START_ARGS() BSE_TYPE_MIDI_CHANNEL_EVENT_TYPE, SFI_END_ARGS1 (element); 02579 element = sfi_rec_get (sfi_rec, "channel"); 02580 if (element) 02581 rec->channel = sfi_value_get_int (element); 02582 element = sfi_rec_get (sfi_rec, "tick_stamp"); 02583 if (element) 02584 rec->tick_stamp = sfi_value_get_num (element); 02585 element = sfi_rec_get (sfi_rec, "frequency"); 02586 if (element) 02587 rec->frequency = sfi_value_get_real (element); 02588 element = sfi_rec_get (sfi_rec, "velocity"); 02589 if (element) 02590 rec->velocity = sfi_value_get_real (element); 02591 element = sfi_rec_get (sfi_rec, "control"); 02592 if (element) 02593 rec->control = sfi_value_get_int (element); 02594 element = sfi_rec_get (sfi_rec, "value"); 02595 if (element) 02596 rec->value = sfi_value_get_real (element); 02597 element = sfi_rec_get (sfi_rec, "program"); 02598 if (element) 02599 rec->program = sfi_value_get_int (element); 02600 element = sfi_rec_get (sfi_rec, "intensity"); 02601 if (element) 02602 rec->intensity = sfi_value_get_real (element); 02603 element = sfi_rec_get (sfi_rec, "pitch_bend"); 02604 if (element) 02605 rec->pitch_bend = sfi_value_get_real (element); 02606 element = sfi_rec_get (sfi_rec, "song_pointer"); 02607 if (element) 02608 rec->song_pointer = sfi_value_get_int (element); 02609 element = sfi_rec_get (sfi_rec, "song_number"); 02610 if (element) 02611 rec->song_number = sfi_value_get_int (element); 02612 return rec; 02613 } 02614 02615 SfiRec * 02616 MidiChannelEvent::to_rec (const ::Bse::MidiChannelEventHandle & rec) 02617 { 02618 SfiRec *sfi_rec; 02619 GValue *element; 02620 02621 if (!rec) 02622 return NULL; 02623 02624 sfi_rec = sfi_rec_new (); 02625 element = sfi_rec_forced_get (sfi_rec, "event_type", SFI_TYPE_CHOICE); 02626 sfi_value_set_enum_auto SFI_START_ARGS() BSE_TYPE_MIDI_CHANNEL_EVENT_TYPE, SFI_END_ARGS2 (element, rec->event_type); 02627 element = sfi_rec_forced_get (sfi_rec, "channel", SFI_TYPE_INT); 02628 sfi_value_set_int (element, rec->channel); 02629 element = sfi_rec_forced_get (sfi_rec, "tick_stamp", SFI_TYPE_NUM); 02630 sfi_value_set_num (element, rec->tick_stamp); 02631 element = sfi_rec_forced_get (sfi_rec, "frequency", SFI_TYPE_REAL); 02632 sfi_value_set_real (element, rec->frequency); 02633 element = sfi_rec_forced_get (sfi_rec, "velocity", SFI_TYPE_REAL); 02634 sfi_value_set_real (element, rec->velocity); 02635 element = sfi_rec_forced_get (sfi_rec, "control", SFI_TYPE_INT); 02636 sfi_value_set_int (element, rec->control); 02637 element = sfi_rec_forced_get (sfi_rec, "value", SFI_TYPE_REAL); 02638 sfi_value_set_real (element, rec->value); 02639 element = sfi_rec_forced_get (sfi_rec, "program", SFI_TYPE_INT); 02640 sfi_value_set_int (element, rec->program); 02641 element = sfi_rec_forced_get (sfi_rec, "intensity", SFI_TYPE_REAL); 02642 sfi_value_set_real (element, rec->intensity); 02643 element = sfi_rec_forced_get (sfi_rec, "pitch_bend", SFI_TYPE_REAL); 02644 sfi_value_set_real (element, rec->pitch_bend); 02645 element = sfi_rec_forced_get (sfi_rec, "song_pointer", SFI_TYPE_INT); 02646 sfi_value_set_int (element, rec->song_pointer); 02647 element = sfi_rec_forced_get (sfi_rec, "song_number", SFI_TYPE_INT); 02648 sfi_value_set_int (element, rec->song_number); 02649 return sfi_rec; 02650 } 02651 02652 ::Bse::MidiChannelEventHandle 02653 MidiChannelEvent::value_get_boxed (const GValue *value) 02654 { 02655 return ::Bse::MidiChannelEventHandle::value_get_boxed (value); 02656 } 02657 02658 void 02659 MidiChannelEvent::value_set_boxed (GValue *value, const ::Bse::MidiChannelEventHandle & self) 02660 { 02661 ::Bse::MidiChannelEventHandle::value_set_boxed (value, self); 02662 } 02663 02664 SfiRecFields 02665 MidiChannelEvent::get_fields() 02666 { 02667 static SfiRecFields rfields = { 0, NULL }; 02668 if (!rfields.n_fields) 02669 { 02670 static GParamSpec *fields[12 + 1]; 02671 rfields.n_fields = 12; 02672 fields[0] = sfidl_pspec_Choice_default (NULL,"/opt/src/beast/bse/bsebasics.idl",485, "event_type", Bse::MidiChannelEventType_choice_values()); 02673 fields[1] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",486,"channel","Channel" , "" , 0LL , 0LL , 99LL , 1LL , ":readwrite"); 02674 fields[2] = sfidl_pspec_SfiNum (NULL,"/opt/src/beast/bse/bsebasics.idl",487,"tick_stamp","Time Stamp" , "" , 0LL , 0LL , SFI_MAXNUM , 0LL , ":r:w:S:G:"); 02675 fields[3] = sfidl_pspec_Freq (NULL,"/opt/src/beast/bse/bsebasics.idl",489,"frequency","Frequency" , "" , KAMMER_FREQ , ":readwrite"); 02676 fields[4] = sfidl_pspec_SfiReal (NULL,"/opt/src/beast/bse/bsebasics.idl",490,"velocity","Velocity" , "" , 1LL , 0LL , 1.00000000000000000e+00 , 1.00000000000000006e-01 , ":readwrite"); 02677 fields[5] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",492,"control","Control Number" , "" , 0LL , 0LL , 1024LL , 8LL , ":readwrite"); 02678 fields[6] = sfidl_pspec_SfiReal (NULL,"/opt/src/beast/bse/bsebasics.idl",493,"value","Value" , "" , 0LL , - 1LL , + 1LL , 1.00000000000000006e-01 , ":readwrite"); 02679 fields[7] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",495,"program","Program" , "" , 0LL , 0LL , 127LL , 16LL , ":readwrite"); 02680 fields[8] = sfidl_pspec_SfiReal (NULL,"/opt/src/beast/bse/bsebasics.idl",497,"intensity","Intensity" , "" , 0LL , 0LL , 1.00000000000000000e+00 , 1.00000000000000006e-01 , ":readwrite"); 02681 fields[9] = sfidl_pspec_SfiReal (NULL,"/opt/src/beast/bse/bsebasics.idl",499,"pitch_bend","Pitch Bend" , "" , 0LL , - 1LL , + 1LL , 1.00000000000000006e-01 , ":readwrite"); 02682 fields[10] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",501,"song_pointer","Song Pointer" , "" , 0LL , 0LL , 16383LL , 128LL , ":readwrite"); 02683 fields[11] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",503,"song_number","Song Number" , "" , 0LL , 0LL , 127LL , 16LL , ":readwrite"); 02684 rfields.fields = fields; 02685 } 02686 return rfields; 02687 } 02688 ::Bse::PropertyCandidatesHandle 02689 PropertyCandidates::from_rec (SfiRec *sfi_rec) 02690 { 02691 GValue *element; 02692 02693 if (!sfi_rec) 02694 return Sfi::INIT_NULL; 02695 02696 ::Bse::PropertyCandidatesHandle rec = Sfi::INIT_DEFAULT; 02697 element = sfi_rec_get (sfi_rec, "label"); 02698 if (element) 02699 rec->label = ::Sfi::String::value_get_string (element); 02700 element = sfi_rec_get (sfi_rec, "tooltip"); 02701 if (element) 02702 rec->tooltip = ::Sfi::String::value_get_string (element); 02703 element = sfi_rec_get (sfi_rec, "items"); 02704 if (element) 02705 rec->items = ::Bse::ItemSeq::value_get_boxed (element); 02706 element = sfi_rec_get (sfi_rec, "partitions"); 02707 if (element) 02708 rec->partitions = ::Bse::TypeSeq::value_get_boxed (element); 02709 return rec; 02710 } 02711 02712 SfiRec * 02713 PropertyCandidates::to_rec (const ::Bse::PropertyCandidatesHandle & rec) 02714 { 02715 SfiRec *sfi_rec; 02716 GValue *element; 02717 02718 if (!rec) 02719 return NULL; 02720 02721 sfi_rec = sfi_rec_new (); 02722 element = sfi_rec_forced_get (sfi_rec, "label", SFI_TYPE_STRING); 02723 ::Sfi::String::value_set_string (element, rec->label); 02724 element = sfi_rec_forced_get (sfi_rec, "tooltip", SFI_TYPE_STRING); 02725 ::Sfi::String::value_set_string (element, rec->tooltip); 02726 element = sfi_rec_forced_get (sfi_rec, "items", SFI_TYPE_SEQ); 02727 ::Bse::ItemSeq::value_set_boxed (element, rec->items); 02728 element = sfi_rec_forced_get (sfi_rec, "partitions", SFI_TYPE_SEQ); 02729 ::Bse::TypeSeq::value_set_boxed (element, rec->partitions); 02730 return sfi_rec; 02731 } 02732 02733 ::Bse::PropertyCandidatesHandle 02734 PropertyCandidates::value_get_boxed (const GValue *value) 02735 { 02736 return ::Bse::PropertyCandidatesHandle::value_get_boxed (value); 02737 } 02738 02739 void 02740 PropertyCandidates::value_set_boxed (GValue *value, const ::Bse::PropertyCandidatesHandle & self) 02741 { 02742 ::Bse::PropertyCandidatesHandle::value_set_boxed (value, self); 02743 } 02744 02745 SfiRecFields 02746 PropertyCandidates::get_fields() 02747 { 02748 static SfiRecFields rfields = { 0, NULL }; 02749 if (!rfields.n_fields) 02750 { 02751 static GParamSpec *fields[4 + 1]; 02752 rfields.n_fields = 4; 02753 fields[0] = sfidl_pspec_String_default (NULL,"/opt/src/beast/bse/bsebasics.idl",515,"label"); 02754 fields[1] = sfidl_pspec_String_default (NULL,"/opt/src/beast/bse/bsebasics.idl",516,"tooltip"); 02755 fields[2] = sfidl_pspec_Sequence_default (NULL,"/opt/src/beast/bse/bsebasics.idl",517, "items", Bse::ItemSeq::get_element()); 02756 fields[3] = sfidl_pspec_Sequence (NULL,"/opt/src/beast/bse/bsebasics.idl",518, "partitions", "Type Partitions" , "List of types which may logically partition the list of items by type discrimination" , ":r:w:S:G:", Bse::TypeSeq::get_element()); 02757 rfields.fields = fields; 02758 } 02759 return rfields; 02760 } 02761 ::Bse::PartNoteHandle 02762 PartNote::from_rec (SfiRec *sfi_rec) 02763 { 02764 GValue *element; 02765 02766 if (!sfi_rec) 02767 return Sfi::INIT_NULL; 02768 02769 ::Bse::PartNoteHandle rec = Sfi::INIT_DEFAULT; 02770 element = sfi_rec_get (sfi_rec, "id"); 02771 if (element) 02772 rec->id = sfi_value_get_int (element); 02773 element = sfi_rec_get (sfi_rec, "channel"); 02774 if (element) 02775 rec->channel = sfi_value_get_int (element); 02776 element = sfi_rec_get (sfi_rec, "tick"); 02777 if (element) 02778 rec->tick = sfi_value_get_int (element); 02779 element = sfi_rec_get (sfi_rec, "duration"); 02780 if (element) 02781 rec->duration = sfi_value_get_int (element); 02782 element = sfi_rec_get (sfi_rec, "note"); 02783 if (element) 02784 rec->note = sfi_value_get_int (element); 02785 element = sfi_rec_get (sfi_rec, "fine_tune"); 02786 if (element) 02787 rec->fine_tune = sfi_value_get_int (element); 02788 element = sfi_rec_get (sfi_rec, "velocity"); 02789 if (element) 02790 rec->velocity = sfi_value_get_real (element); 02791 element = sfi_rec_get (sfi_rec, "selected"); 02792 if (element) 02793 rec->selected = sfi_value_get_bool (element); 02794 return rec; 02795 } 02796 02797 SfiRec * 02798 PartNote::to_rec (const ::Bse::PartNoteHandle & rec) 02799 { 02800 SfiRec *sfi_rec; 02801 GValue *element; 02802 02803 if (!rec) 02804 return NULL; 02805 02806 sfi_rec = sfi_rec_new (); 02807 element = sfi_rec_forced_get (sfi_rec, "id", SFI_TYPE_INT); 02808 sfi_value_set_int (element, rec->id); 02809 element = sfi_rec_forced_get (sfi_rec, "channel", SFI_TYPE_INT); 02810 sfi_value_set_int (element, rec->channel); 02811 element = sfi_rec_forced_get (sfi_rec, "tick", SFI_TYPE_INT); 02812 sfi_value_set_int (element, rec->tick); 02813 element = sfi_rec_forced_get (sfi_rec, "duration", SFI_TYPE_INT); 02814 sfi_value_set_int (element, rec->duration); 02815 element = sfi_rec_forced_get (sfi_rec, "note", SFI_TYPE_INT); 02816 sfi_value_set_int (element, rec->note); 02817 element = sfi_rec_forced_get (sfi_rec, "fine_tune", SFI_TYPE_INT); 02818 sfi_value_set_int (element, rec->fine_tune); 02819 element = sfi_rec_forced_get (sfi_rec, "velocity", SFI_TYPE_REAL); 02820 sfi_value_set_real (element, rec->velocity); 02821 element = sfi_rec_forced_get (sfi_rec, "selected", SFI_TYPE_BOOL); 02822 sfi_value_set_bool (element, rec->selected); 02823 return sfi_rec; 02824 } 02825 02826 ::Bse::PartNoteHandle 02827 PartNote::value_get_boxed (const GValue *value) 02828 { 02829 return ::Bse::PartNoteHandle::value_get_boxed (value); 02830 } 02831 02832 void 02833 PartNote::value_set_boxed (GValue *value, const ::Bse::PartNoteHandle & self) 02834 { 02835 ::Bse::PartNoteHandle::value_set_boxed (value, self); 02836 } 02837 02838 SfiRecFields 02839 PartNote::get_fields() 02840 { 02841 static SfiRecFields rfields = { 0, NULL }; 02842 if (!rfields.n_fields) 02843 { 02844 static GParamSpec *fields[8 + 1]; 02845 rfields.n_fields = 8; 02846 fields[0] = sfidl_pspec_SfiUInt (NULL,"/opt/src/beast/bse/bsebasics.idl",523,"id","ID" , "" , 0LL , ":readwrite"); 02847 fields[1] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",524,"channel","Channel" , "" , 0LL , 0LL , 2147483647LL , 1LL , ":readwrite"); 02848 fields[2] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",525,"tick","Tick" , "" , 0LL , 0LL , 2147483647LL , 1LL , ":readwrite"); 02849 fields[3] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",526,"duration","Duration" , "Duration in number of ticks" , 0LL , 0LL , 2147483647LL , 1LL , ":readwrite"); 02850 fields[4] = sfidl_pspec_Note (NULL,"/opt/src/beast/bse/bsebasics.idl",527,"note","Note" , "" , KAMMER_NOTE , ":readwrite"); 02851 fields[5] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",528,"fine_tune","Fine Tune" , "" , 0LL , MIN_FINE_TUNE , MAX_FINE_TUNE , 1LL , ":readwrite"); 02852 fields[6] = sfidl_pspec_SfiReal (NULL,"/opt/src/beast/bse/bsebasics.idl",529,"velocity","Velocity" , "" , 1LL , 0LL , 1.00000000000000000e+00 , 1.00000000000000006e-01 , ":readwrite"); 02853 fields[7] = sfidl_pspec_SfiBool (NULL,"/opt/src/beast/bse/bsebasics.idl",530,"selected","Selected" , "" , FALSE , ":readwrite"); 02854 rfields.fields = fields; 02855 } 02856 return rfields; 02857 } 02858 ::Bse::PartControlHandle 02859 PartControl::from_rec (SfiRec *sfi_rec) 02860 { 02861 GValue *element; 02862 02863 if (!sfi_rec) 02864 return Sfi::INIT_NULL; 02865 02866 ::Bse::PartControlHandle rec = Sfi::INIT_DEFAULT; 02867 element = sfi_rec_get (sfi_rec, "id"); 02868 if (element) 02869 rec->id = sfi_value_get_int (element); 02870 element = sfi_rec_get (sfi_rec, "tick"); 02871 if (element) 02872 rec->tick = sfi_value_get_int (element); 02873 element = sfi_rec_get (sfi_rec, "control_type"); 02874 if (element) 02875 rec->control_type = (::Bse::MidiSignalType) sfi_value_get_enum_auto SFI_START_ARGS() BSE_TYPE_MIDI_SIGNAL_TYPE, SFI_END_ARGS1 (element); 02876 element = sfi_rec_get (sfi_rec, "value"); 02877 if (element) 02878 rec->value = sfi_value_get_real (element); 02879 element = sfi_rec_get (sfi_rec, "selected"); 02880 if (element) 02881 rec->selected = sfi_value_get_bool (element); 02882 return rec; 02883 } 02884 02885 SfiRec * 02886 PartControl::to_rec (const ::Bse::PartControlHandle & rec) 02887 { 02888 SfiRec *sfi_rec; 02889 GValue *element; 02890 02891 if (!rec) 02892 return NULL; 02893 02894 sfi_rec = sfi_rec_new (); 02895 element = sfi_rec_forced_get (sfi_rec, "id", SFI_TYPE_INT); 02896 sfi_value_set_int (element, rec->id); 02897 element = sfi_rec_forced_get (sfi_rec, "tick", SFI_TYPE_INT); 02898 sfi_value_set_int (element, rec->tick); 02899 element = sfi_rec_forced_get (sfi_rec, "control_type", SFI_TYPE_CHOICE); 02900 sfi_value_set_enum_auto SFI_START_ARGS() BSE_TYPE_MIDI_SIGNAL_TYPE, SFI_END_ARGS2 (element, rec->control_type); 02901 element = sfi_rec_forced_get (sfi_rec, "value", SFI_TYPE_REAL); 02902 sfi_value_set_real (element, rec->value); 02903 element = sfi_rec_forced_get (sfi_rec, "selected", SFI_TYPE_BOOL); 02904 sfi_value_set_bool (element, rec->selected); 02905 return sfi_rec; 02906 } 02907 02908 ::Bse::PartControlHandle 02909 PartControl::value_get_boxed (const GValue *value) 02910 { 02911 return ::Bse::PartControlHandle::value_get_boxed (value); 02912 } 02913 02914 void 02915 PartControl::value_set_boxed (GValue *value, const ::Bse::PartControlHandle & self) 02916 { 02917 ::Bse::PartControlHandle::value_set_boxed (value, self); 02918 } 02919 02920 SfiRecFields 02921 PartControl::get_fields() 02922 { 02923 static SfiRecFields rfields = { 0, NULL }; 02924 if (!rfields.n_fields) 02925 { 02926 static GParamSpec *fields[5 + 1]; 02927 rfields.n_fields = 5; 02928 fields[0] = sfidl_pspec_SfiUInt (NULL,"/opt/src/beast/bse/bsebasics.idl",539,"id","ID" , "" , 0LL , ":readwrite"); 02929 fields[1] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",540,"tick","Tick" , "" , 0LL , 0LL , 2147483647LL , 1LL , ":readwrite"); 02930 fields[2] = sfidl_pspec_Choice_default (NULL,"/opt/src/beast/bse/bsebasics.idl",541, "control_type", Bse::MidiSignalType_choice_values()); 02931 fields[3] = sfidl_pspec_SfiReal (NULL,"/opt/src/beast/bse/bsebasics.idl",542,"value","Value" , "" , 0LL , - 1LL , + 1LL , 1.00000000000000006e-01 , ":readwrite"); 02932 fields[4] = sfidl_pspec_SfiBool (NULL,"/opt/src/beast/bse/bsebasics.idl",543,"selected","Selected" , "" , FALSE , ":readwrite"); 02933 rfields.fields = fields; 02934 } 02935 return rfields; 02936 } 02937 ::Bse::NoteDescriptionHandle 02938 NoteDescription::from_rec (SfiRec *sfi_rec) 02939 { 02940 GValue *element; 02941 02942 if (!sfi_rec) 02943 return Sfi::INIT_NULL; 02944 02945 ::Bse::NoteDescriptionHandle rec = Sfi::INIT_DEFAULT; 02946 element = sfi_rec_get (sfi_rec, "musical_tuning"); 02947 if (element) 02948 rec->musical_tuning = (::Bse::MusicalTuningType) sfi_value_get_enum_auto SFI_START_ARGS() BSE_TYPE_MUSICAL_TUNING_TYPE, SFI_END_ARGS1 (element); 02949 element = sfi_rec_get (sfi_rec, "note"); 02950 if (element) 02951 rec->note = sfi_value_get_int (element); 02952 element = sfi_rec_get (sfi_rec, "octave"); 02953 if (element) 02954 rec->octave = sfi_value_get_int (element); 02955 element = sfi_rec_get (sfi_rec, "freq"); 02956 if (element) 02957 rec->freq = sfi_value_get_real (element); 02958 element = sfi_rec_get (sfi_rec, "fine_tune"); 02959 if (element) 02960 rec->fine_tune = sfi_value_get_int (element); 02961 element = sfi_rec_get (sfi_rec, "semitone"); 02962 if (element) 02963 rec->semitone = sfi_value_get_int (element); 02964 element = sfi_rec_get (sfi_rec, "upshift"); 02965 if (element) 02966 rec->upshift = sfi_value_get_bool (element); 02967 element = sfi_rec_get (sfi_rec, "letter"); 02968 if (element) 02969 rec->letter = sfi_value_get_int (element); 02970 element = sfi_rec_get (sfi_rec, "name"); 02971 if (element) 02972 rec->name = ::Sfi::String::value_get_string (element); 02973 element = sfi_rec_get (sfi_rec, "max_fine_tune"); 02974 if (element) 02975 rec->max_fine_tune = sfi_value_get_int (element); 02976 element = sfi_rec_get (sfi_rec, "kammer_note"); 02977 if (element) 02978 rec->kammer_note = sfi_value_get_int (element); 02979 return rec; 02980 } 02981 02982 SfiRec * 02983 NoteDescription::to_rec (const ::Bse::NoteDescriptionHandle & rec) 02984 { 02985 SfiRec *sfi_rec; 02986 GValue *element; 02987 02988 if (!rec) 02989 return NULL; 02990 02991 sfi_rec = sfi_rec_new (); 02992 element = sfi_rec_forced_get (sfi_rec, "musical_tuning", SFI_TYPE_CHOICE); 02993 sfi_value_set_enum_auto SFI_START_ARGS() BSE_TYPE_MUSICAL_TUNING_TYPE, SFI_END_ARGS2 (element, rec->musical_tuning); 02994 element = sfi_rec_forced_get (sfi_rec, "note", SFI_TYPE_INT); 02995 sfi_value_set_int (element, rec->note); 02996 element = sfi_rec_forced_get (sfi_rec, "octave", SFI_TYPE_INT); 02997 sfi_value_set_int (element, rec->octave); 02998 element = sfi_rec_forced_get (sfi_rec, "freq", SFI_TYPE_REAL); 02999 sfi_value_set_real (element, rec->freq); 03000 element = sfi_rec_forced_get (sfi_rec, "fine_tune", SFI_TYPE_INT); 03001 sfi_value_set_int (element, rec->fine_tune); 03002 element = sfi_rec_forced_get (sfi_rec, "semitone", SFI_TYPE_INT); 03003 sfi_value_set_int (element, rec->semitone); 03004 element = sfi_rec_forced_get (sfi_rec, "upshift", SFI_TYPE_BOOL); 03005 sfi_value_set_bool (element, rec->upshift); 03006 element = sfi_rec_forced_get (sfi_rec, "letter", SFI_TYPE_INT); 03007 sfi_value_set_int (element, rec->letter); 03008 element = sfi_rec_forced_get (sfi_rec, "name", SFI_TYPE_STRING); 03009 ::Sfi::String::value_set_string (element, rec->name); 03010 element = sfi_rec_forced_get (sfi_rec, "max_fine_tune", SFI_TYPE_INT); 03011 sfi_value_set_int (element, rec->max_fine_tune); 03012 element = sfi_rec_forced_get (sfi_rec, "kammer_note", SFI_TYPE_INT); 03013 sfi_value_set_int (element, rec->kammer_note); 03014 return sfi_rec; 03015 } 03016 03017 ::Bse::NoteDescriptionHandle 03018 NoteDescription::value_get_boxed (const GValue *value) 03019 { 03020 return ::Bse::NoteDescriptionHandle::value_get_boxed (value); 03021 } 03022 03023 void 03024 NoteDescription::value_set_boxed (GValue *value, const ::Bse::NoteDescriptionHandle & self) 03025 { 03026 ::Bse::NoteDescriptionHandle::value_set_boxed (value, self); 03027 } 03028 03029 SfiRecFields 03030 NoteDescription::get_fields() 03031 { 03032 static SfiRecFields rfields = { 0, NULL }; 03033 if (!rfields.n_fields) 03034 { 03035 static GParamSpec *fields[11 + 1]; 03036 rfields.n_fields = 11; 03037 fields[0] = sfidl_pspec_Choice_default (NULL,"/opt/src/beast/bse/bsebasics.idl",551, "musical_tuning", Bse::MusicalTuningType_choice_values()); 03038 fields[1] = sfidl_pspec_Note (NULL,"/opt/src/beast/bse/bsebasics.idl",552,"note","Note" , "" , KAMMER_NOTE , ":readwrite"); 03039 fields[2] = sfidl_pspec_Octave (NULL,"/opt/src/beast/bse/bsebasics.idl",553,"octave","Octave" , "" , KAMMER_OCTAVE , ":readwrite"); 03040 fields[3] = sfidl_pspec_Freq (NULL,"/opt/src/beast/bse/bsebasics.idl",554,"freq","Frequency" , "" , KAMMER_FREQ , ":readwrite"); 03041 fields[4] = sfidl_pspec_FineTune (NULL,"/opt/src/beast/bse/bsebasics.idl",555,"fine_tune","Fine Tune" , "" , ":readwrite"); 03042 fields[5] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",556,"semitone","Semitone" , "" , 0LL , 0LL , 11LL , 1LL , ":readwrite"); 03043 fields[6] = sfidl_pspec_Bool_default (NULL,"/opt/src/beast/bse/bsebasics.idl",557,"upshift"); 03044 fields[7] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",558,"letter","Letter" , "International abbreviation letter for this note" , 64LL , 32LL , 126LL , 1LL , ":readwrite"); 03045 fields[8] = sfidl_pspec_String (NULL,"/opt/src/beast/bse/bsebasics.idl",559,"name","Name" , "" , "" , ":readwrite"); 03046 fields[9] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",561,"max_fine_tune","Max Fine Tune" , "" , MAX_FINE_TUNE , MAX_FINE_TUNE , MAX_FINE_TUNE , 0LL , ":readable"); 03047 fields[10] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",562,"kammer_note","Kammer Note" , "" , KAMMER_NOTE , KAMMER_NOTE , KAMMER_NOTE , 0LL , ":readable"); 03048 rfields.fields = fields; 03049 } 03050 return rfields; 03051 } 03052 ::Bse::NoteSequenceHandle 03053 NoteSequence::from_rec (SfiRec *sfi_rec) 03054 { 03055 GValue *element; 03056 03057 if (!sfi_rec) 03058 return Sfi::INIT_NULL; 03059 03060 ::Bse::NoteSequenceHandle rec = Sfi::INIT_DEFAULT; 03061 element = sfi_rec_get (sfi_rec, "offset"); 03062 if (element) 03063 rec->offset = sfi_value_get_int (element); 03064 element = sfi_rec_get (sfi_rec, "notes"); 03065 if (element) 03066 rec->notes = ::Bse::NoteSeq::value_get_boxed (element); 03067 return rec; 03068 } 03069 03070 SfiRec * 03071 NoteSequence::to_rec (const ::Bse::NoteSequenceHandle & rec) 03072 { 03073 SfiRec *sfi_rec; 03074 GValue *element; 03075 03076 if (!rec) 03077 return NULL; 03078 03079 sfi_rec = sfi_rec_new (); 03080 element = sfi_rec_forced_get (sfi_rec, "offset", SFI_TYPE_INT); 03081 sfi_value_set_int (element, rec->offset); 03082 element = sfi_rec_forced_get (sfi_rec, "notes", SFI_TYPE_SEQ); 03083 ::Bse::NoteSeq::value_set_boxed (element, rec->notes); 03084 return sfi_rec; 03085 } 03086 03087 ::Bse::NoteSequenceHandle 03088 NoteSequence::value_get_boxed (const GValue *value) 03089 { 03090 return ::Bse::NoteSequenceHandle::value_get_boxed (value); 03091 } 03092 03093 void 03094 NoteSequence::value_set_boxed (GValue *value, const ::Bse::NoteSequenceHandle & self) 03095 { 03096 ::Bse::NoteSequenceHandle::value_set_boxed (value, self); 03097 } 03098 03099 SfiRecFields 03100 NoteSequence::get_fields() 03101 { 03102 static SfiRecFields rfields = { 0, NULL }; 03103 if (!rfields.n_fields) 03104 { 03105 static GParamSpec *fields[2 + 1]; 03106 rfields.n_fields = 2; 03107 fields[0] = sfidl_pspec_Note (NULL,"/opt/src/beast/bse/bsebasics.idl",570,"offset","Note Offset" , "Center/base note" , KAMMER_NOTE , ":readwrite"); 03108 fields[1] = sfidl_pspec_Sequence (NULL,"/opt/src/beast/bse/bsebasics.idl",571, "notes", "Notes" , "Sequence of notes" , ":readwrite", Bse::NoteSeq::get_element()); 03109 rfields.fields = fields; 03110 } 03111 return rfields; 03112 } 03113 ::Bse::IconHandle 03114 Icon::from_rec (SfiRec *sfi_rec) 03115 { 03116 GValue *element; 03117 03118 if (!sfi_rec) 03119 return Sfi::INIT_NULL; 03120 03121 ::Bse::IconHandle rec = Sfi::INIT_DEFAULT; 03122 element = sfi_rec_get (sfi_rec, "width"); 03123 if (element) 03124 rec->width = sfi_value_get_int (element); 03125 element = sfi_rec_get (sfi_rec, "height"); 03126 if (element) 03127 rec->height = sfi_value_get_int (element); 03128 element = sfi_rec_get (sfi_rec, "pixel_seq"); 03129 if (element) 03130 rec->pixel_seq = ::Bse::PixelSeq::value_get_boxed (element); 03131 return rec; 03132 } 03133 03134 SfiRec * 03135 Icon::to_rec (const ::Bse::IconHandle & rec) 03136 { 03137 SfiRec *sfi_rec; 03138 GValue *element; 03139 03140 if (!rec) 03141 return NULL; 03142 03143 sfi_rec = sfi_rec_new (); 03144 element = sfi_rec_forced_get (sfi_rec, "width", SFI_TYPE_INT); 03145 sfi_value_set_int (element, rec->width); 03146 element = sfi_rec_forced_get (sfi_rec, "height", SFI_TYPE_INT); 03147 sfi_value_set_int (element, rec->height); 03148 element = sfi_rec_forced_get (sfi_rec, "pixel_seq", SFI_TYPE_SEQ); 03149 ::Bse::PixelSeq::value_set_boxed (element, rec->pixel_seq); 03150 return sfi_rec; 03151 } 03152 03153 ::Bse::IconHandle 03154 Icon::value_get_boxed (const GValue *value) 03155 { 03156 return ::Bse::IconHandle::value_get_boxed (value); 03157 } 03158 03159 void 03160 Icon::value_set_boxed (GValue *value, const ::Bse::IconHandle & self) 03161 { 03162 ::Bse::IconHandle::value_set_boxed (value, self); 03163 } 03164 03165 SfiRecFields 03166 Icon::get_fields() 03167 { 03168 static SfiRecFields rfields = { 0, NULL }; 03169 if (!rfields.n_fields) 03170 { 03171 static GParamSpec *fields[3 + 1]; 03172 rfields.n_fields = 3; 03173 fields[0] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",579,"width","Width" , "Width in pixels or 0 for no icon" , 0LL , 0LL , 2147483647LL , 1LL , ":readwrite"); 03174 fields[1] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",580,"height","Height" , "Height in pixels or 0 for no icon" , 0LL , 0LL , 2147483647LL , 1LL , ":readwrite"); 03175 fields[2] = sfidl_pspec_Sequence (NULL,"/opt/src/beast/bse/bsebasics.idl",581, "pixel_seq", "Pixels" , "Pixel array of width*height ARGB pixels" , ":readwrite", Bse::PixelSeq::get_element()); 03176 rfields.fields = fields; 03177 } 03178 return rfields; 03179 } 03180 ::Bse::CategoryHandle 03181 Category::from_rec (SfiRec *sfi_rec) 03182 { 03183 GValue *element; 03184 03185 if (!sfi_rec) 03186 return Sfi::INIT_NULL; 03187 03188 ::Bse::CategoryHandle rec = Sfi::INIT_DEFAULT; 03189 element = sfi_rec_get (sfi_rec, "category_id"); 03190 if (element) 03191 rec->category_id = sfi_value_get_int (element); 03192 element = sfi_rec_get (sfi_rec, "category"); 03193 if (element) 03194 rec->category = ::Sfi::String::value_get_string (element); 03195 element = sfi_rec_get (sfi_rec, "mindex"); 03196 if (element) 03197 rec->mindex = sfi_value_get_int (element); 03198 element = sfi_rec_get (sfi_rec, "lindex"); 03199 if (element) 03200 rec->lindex = sfi_value_get_int (element); 03201 element = sfi_rec_get (sfi_rec, "type"); 03202 if (element) 03203 rec->type = ::Sfi::String::value_get_string (element); 03204 element = sfi_rec_get (sfi_rec, "icon"); 03205 if (element) 03206 rec->icon = ::Bse::Icon::value_get_boxed (element); 03207 return rec; 03208 } 03209 03210 SfiRec * 03211 Category::to_rec (const ::Bse::CategoryHandle & rec) 03212 { 03213 SfiRec *sfi_rec; 03214 GValue *element; 03215 03216 if (!rec) 03217 return NULL; 03218 03219 sfi_rec = sfi_rec_new (); 03220 element = sfi_rec_forced_get (sfi_rec, "category_id", SFI_TYPE_INT); 03221 sfi_value_set_int (element, rec->category_id); 03222 element = sfi_rec_forced_get (sfi_rec, "category", SFI_TYPE_STRING); 03223 ::Sfi::String::value_set_string (element, rec->category); 03224 element = sfi_rec_forced_get (sfi_rec, "mindex", SFI_TYPE_INT); 03225 sfi_value_set_int (element, rec->mindex); 03226 element = sfi_rec_forced_get (sfi_rec, "lindex", SFI_TYPE_INT); 03227 sfi_value_set_int (element, rec->lindex); 03228 element = sfi_rec_forced_get (sfi_rec, "type", SFI_TYPE_STRING); 03229 ::Sfi::String::value_set_string (element, rec->type); 03230 element = sfi_rec_forced_get (sfi_rec, "icon", SFI_TYPE_REC); 03231 ::Bse::Icon::value_set_boxed (element, rec->icon); 03232 return sfi_rec; 03233 } 03234 03235 ::Bse::CategoryHandle 03236 Category::value_get_boxed (const GValue *value) 03237 { 03238 return ::Bse::CategoryHandle::value_get_boxed (value); 03239 } 03240 03241 void 03242 Category::value_set_boxed (GValue *value, const ::Bse::CategoryHandle & self) 03243 { 03244 ::Bse::CategoryHandle::value_set_boxed (value, self); 03245 } 03246 03247 SfiRecFields 03248 Category::get_fields() 03249 { 03250 static SfiRecFields rfields = { 0, NULL }; 03251 if (!rfields.n_fields) 03252 { 03253 static GParamSpec *fields[6 + 1]; 03254 rfields.n_fields = 6; 03255 fields[0] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",585,"category_id","Category ID" , "" , 1LL , 1LL , G_MAXINT , 1LL , ":readwrite"); 03256 fields[1] = sfidl_pspec_String_default (NULL,"/opt/src/beast/bse/bsebasics.idl",586,"category"); 03257 fields[2] = sfidl_pspec_Int_default (NULL,"/opt/src/beast/bse/bsebasics.idl",587,"mindex"); 03258 fields[3] = sfidl_pspec_Int_default (NULL,"/opt/src/beast/bse/bsebasics.idl",588,"lindex"); 03259 fields[4] = sfidl_pspec_String_default (NULL,"/opt/src/beast/bse/bsebasics.idl",589,"type"); 03260 fields[5] = sfidl_pspec_Record_default (NULL,"/opt/src/beast/bse/bsebasics.idl",590, "icon", Bse::Icon::get_fields()); 03261 rfields.fields = fields; 03262 } 03263 return rfields; 03264 } 03265 ::Bse::DotHandle 03266 Dot::from_rec (SfiRec *sfi_rec) 03267 { 03268 GValue *element; 03269 03270 if (!sfi_rec) 03271 return Sfi::INIT_NULL; 03272 03273 ::Bse::DotHandle rec = Sfi::INIT_DEFAULT; 03274 element = sfi_rec_get (sfi_rec, "x"); 03275 if (element) 03276 rec->x = sfi_value_get_real (element); 03277 element = sfi_rec_get (sfi_rec, "y"); 03278 if (element) 03279 rec->y = sfi_value_get_real (element); 03280 return rec; 03281 } 03282 03283 SfiRec * 03284 Dot::to_rec (const ::Bse::DotHandle & rec) 03285 { 03286 SfiRec *sfi_rec; 03287 GValue *element; 03288 03289 if (!rec) 03290 return NULL; 03291 03292 sfi_rec = sfi_rec_new (); 03293 element = sfi_rec_forced_get (sfi_rec, "x", SFI_TYPE_REAL); 03294 sfi_value_set_real (element, rec->x); 03295 element = sfi_rec_forced_get (sfi_rec, "y", SFI_TYPE_REAL); 03296 sfi_value_set_real (element, rec->y); 03297 return sfi_rec; 03298 } 03299 03300 ::Bse::DotHandle 03301 Dot::value_get_boxed (const GValue *value) 03302 { 03303 return ::Bse::DotHandle::value_get_boxed (value); 03304 } 03305 03306 void 03307 Dot::value_set_boxed (GValue *value, const ::Bse::DotHandle & self) 03308 { 03309 ::Bse::DotHandle::value_set_boxed (value, self); 03310 } 03311 03312 SfiRecFields 03313 Dot::get_fields() 03314 { 03315 static SfiRecFields rfields = { 0, NULL }; 03316 if (!rfields.n_fields) 03317 { 03318 static GParamSpec *fields[2 + 1]; 03319 rfields.n_fields = 2; 03320 fields[0] = sfidl_pspec_Real_default (NULL,"/opt/src/beast/bse/bsebasics.idl",597,"x"); 03321 fields[1] = sfidl_pspec_Real_default (NULL,"/opt/src/beast/bse/bsebasics.idl",598,"y"); 03322 rfields.fields = fields; 03323 } 03324 return rfields; 03325 } 03326 ::Bse::PartLinkHandle 03327 PartLink::from_rec (SfiRec *sfi_rec) 03328 { 03329 GValue *element; 03330 03331 if (!sfi_rec) 03332 return Sfi::INIT_NULL; 03333 03334 ::Bse::PartLinkHandle rec = Sfi::INIT_DEFAULT; 03335 element = sfi_rec_get (sfi_rec, "track"); 03336 if (element) 03337 rec->track = ::Bse::CxxBase::value_get_gobject< BseTrack> (element); 03338 element = sfi_rec_get (sfi_rec, "tick"); 03339 if (element) 03340 rec->tick = sfi_value_get_int (element); 03341 element = sfi_rec_get (sfi_rec, "part"); 03342 if (element) 03343 rec->part = ::Bse::CxxBase::value_get_gobject< BsePart> (element); 03344 element = sfi_rec_get (sfi_rec, "duration"); 03345 if (element) 03346 rec->duration = sfi_value_get_int (element); 03347 return rec; 03348 } 03349 03350 SfiRec * 03351 PartLink::to_rec (const ::Bse::PartLinkHandle & rec) 03352 { 03353 SfiRec *sfi_rec; 03354 GValue *element; 03355 03356 if (!rec) 03357 return NULL; 03358 03359 sfi_rec = sfi_rec_new (); 03360 element = sfi_rec_forced_get (sfi_rec, "track", SFI_TYPE_PROXY); 03361 ::Bse::CxxBase::value_set_gobject (element, rec->track); 03362 element = sfi_rec_forced_get (sfi_rec, "tick", SFI_TYPE_INT); 03363 sfi_value_set_int (element, rec->tick); 03364 element = sfi_rec_forced_get (sfi_rec, "part", SFI_TYPE_PROXY); 03365 ::Bse::CxxBase::value_set_gobject (element, rec->part); 03366 element = sfi_rec_forced_get (sfi_rec, "duration", SFI_TYPE_INT); 03367 sfi_value_set_int (element, rec->duration); 03368 return sfi_rec; 03369 } 03370 03371 ::Bse::PartLinkHandle 03372 PartLink::value_get_boxed (const GValue *value) 03373 { 03374 return ::Bse::PartLinkHandle::value_get_boxed (value); 03375 } 03376 03377 void 03378 PartLink::value_set_boxed (GValue *value, const ::Bse::PartLinkHandle & self) 03379 { 03380 ::Bse::PartLinkHandle::value_set_boxed (value, self); 03381 } 03382 03383 SfiRecFields 03384 PartLink::get_fields() 03385 { 03386 static SfiRecFields rfields = { 0, NULL }; 03387 if (!rfields.n_fields) 03388 { 03389 static GParamSpec *fields[4 + 1]; 03390 rfields.n_fields = 4; 03391 fields[0] = sfidl_pspec_Object_default (NULL,"/opt/src/beast/bse/bsebasics.idl",607,"track"); 03392 fields[1] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",608,"tick","Tick" , "" , 0LL , 0LL , G_MAXINT , 384LL , ":r:w:S:G:"); 03393 fields[2] = sfidl_pspec_Object_default (NULL,"/opt/src/beast/bse/bsebasics.idl",609,"part"); 03394 fields[3] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",610,"duration","Duration" , "" , 0LL , 0LL , G_MAXINT , 384LL , ":r:w:S:G:"); 03395 rfields.fields = fields; 03396 } 03397 return rfields; 03398 } 03399 ::Bse::TrackPartHandle 03400 TrackPart::from_rec (SfiRec *sfi_rec) 03401 { 03402 GValue *element; 03403 03404 if (!sfi_rec) 03405 return Sfi::INIT_NULL; 03406 03407 ::Bse::TrackPartHandle rec = Sfi::INIT_DEFAULT; 03408 element = sfi_rec_get (sfi_rec, "tick"); 03409 if (element) 03410 rec->tick = sfi_value_get_int (element); 03411 element = sfi_rec_get (sfi_rec, "part"); 03412 if (element) 03413 rec->part = ::Bse::CxxBase::value_get_gobject< BsePart> (element); 03414 element = sfi_rec_get (sfi_rec, "duration"); 03415 if (element) 03416 rec->duration = sfi_value_get_int (element); 03417 return rec; 03418 } 03419 03420 SfiRec * 03421 TrackPart::to_rec (const ::Bse::TrackPartHandle & rec) 03422 { 03423 SfiRec *sfi_rec; 03424 GValue *element; 03425 03426 if (!rec) 03427 return NULL; 03428 03429 sfi_rec = sfi_rec_new (); 03430 element = sfi_rec_forced_get (sfi_rec, "tick", SFI_TYPE_INT); 03431 sfi_value_set_int (element, rec->tick); 03432 element = sfi_rec_forced_get (sfi_rec, "part", SFI_TYPE_PROXY); 03433 ::Bse::CxxBase::value_set_gobject (element, rec->part); 03434 element = sfi_rec_forced_get (sfi_rec, "duration", SFI_TYPE_INT); 03435 sfi_value_set_int (element, rec->duration); 03436 return sfi_rec; 03437 } 03438 03439 ::Bse::TrackPartHandle 03440 TrackPart::value_get_boxed (const GValue *value) 03441 { 03442 return ::Bse::TrackPartHandle::value_get_boxed (value); 03443 } 03444 03445 void 03446 TrackPart::value_set_boxed (GValue *value, const ::Bse::TrackPartHandle & self) 03447 { 03448 ::Bse::TrackPartHandle::value_set_boxed (value, self); 03449 } 03450 03451 SfiRecFields 03452 TrackPart::get_fields() 03453 { 03454 static SfiRecFields rfields = { 0, NULL }; 03455 if (!rfields.n_fields) 03456 { 03457 static GParamSpec *fields[3 + 1]; 03458 rfields.n_fields = 3; 03459 fields[0] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",618,"tick","Tick" , "" , 0LL , 0LL , G_MAXINT , 384LL , ":r:w:S:G:"); 03460 fields[1] = sfidl_pspec_Object_default (NULL,"/opt/src/beast/bse/bsebasics.idl",619,"part"); 03461 fields[2] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",620,"duration","Duration" , "" , 0LL , 0LL , G_MAXINT , 384LL , ":r:w:S:G:"); 03462 rfields.fields = fields; 03463 } 03464 return rfields; 03465 } 03466 ::Bse::SongTimingHandle 03467 SongTiming::from_rec (SfiRec *sfi_rec) 03468 { 03469 GValue *element; 03470 03471 if (!sfi_rec) 03472 return Sfi::INIT_NULL; 03473 03474 ::Bse::SongTimingHandle rec = Sfi::INIT_DEFAULT; 03475 element = sfi_rec_get (sfi_rec, "tick"); 03476 if (element) 03477 rec->tick = sfi_value_get_int (element); 03478 element = sfi_rec_get (sfi_rec, "bpm"); 03479 if (element) 03480 rec->bpm = sfi_value_get_real (element); 03481 element = sfi_rec_get (sfi_rec, "numerator"); 03482 if (element) 03483 rec->numerator = sfi_value_get_int (element); 03484 element = sfi_rec_get (sfi_rec, "denominator"); 03485 if (element) 03486 rec->denominator = sfi_value_get_int (element); 03487 element = sfi_rec_get (sfi_rec, "tpqn"); 03488 if (element) 03489 rec->tpqn = sfi_value_get_int (element); 03490 element = sfi_rec_get (sfi_rec, "tpt"); 03491 if (element) 03492 rec->tpt = sfi_value_get_int (element); 03493 element = sfi_rec_get (sfi_rec, "stamp_ticks"); 03494 if (element) 03495 rec->stamp_ticks = sfi_value_get_real (element); 03496 return rec; 03497 } 03498 03499 SfiRec * 03500 SongTiming::to_rec (const ::Bse::SongTimingHandle & rec) 03501 { 03502 SfiRec *sfi_rec; 03503 GValue *element; 03504 03505 if (!rec) 03506 return NULL; 03507 03508 sfi_rec = sfi_rec_new (); 03509 element = sfi_rec_forced_get (sfi_rec, "tick", SFI_TYPE_INT); 03510 sfi_value_set_int (element, rec->tick); 03511 element = sfi_rec_forced_get (sfi_rec, "bpm", SFI_TYPE_REAL); 03512 sfi_value_set_real (element, rec->bpm); 03513 element = sfi_rec_forced_get (sfi_rec, "numerator", SFI_TYPE_INT); 03514 sfi_value_set_int (element, rec->numerator); 03515 element = sfi_rec_forced_get (sfi_rec, "denominator", SFI_TYPE_INT); 03516 sfi_value_set_int (element, rec->denominator); 03517 element = sfi_rec_forced_get (sfi_rec, "tpqn", SFI_TYPE_INT); 03518 sfi_value_set_int (element, rec->tpqn); 03519 element = sfi_rec_forced_get (sfi_rec, "tpt", SFI_TYPE_INT); 03520 sfi_value_set_int (element, rec->tpt); 03521 element = sfi_rec_forced_get (sfi_rec, "stamp_ticks", SFI_TYPE_REAL); 03522 sfi_value_set_real (element, rec->stamp_ticks); 03523 return sfi_rec; 03524 } 03525 03526 ::Bse::SongTimingHandle 03527 SongTiming::value_get_boxed (const GValue *value) 03528 { 03529 return ::Bse::SongTimingHandle::value_get_boxed (value); 03530 } 03531 03532 void 03533 SongTiming::value_set_boxed (GValue *value, const ::Bse::SongTimingHandle & self) 03534 { 03535 ::Bse::SongTimingHandle::value_set_boxed (value, self); 03536 } 03537 03538 SfiRecFields 03539 SongTiming::get_fields() 03540 { 03541 static SfiRecFields rfields = { 0, NULL }; 03542 if (!rfields.n_fields) 03543 { 03544 static GParamSpec *fields[7 + 1]; 03545 rfields.n_fields = 7; 03546 fields[0] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",628,"tick","Current tick" , "" , 0LL , 0LL , G_MAXINT , 384LL , ":r:w:S:G:"); 03547 fields[1] = sfidl_pspec_SfiReal (NULL,"/opt/src/beast/bse/bsebasics.idl",630,"bpm","Beats per minute" , "" , 120LL , BSE_MIN_BPM , BSE_MAX_BPM , 10LL , ":r:w:S:G:"); 03548 fields[2] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",632,"numerator","Numerator" , "Number of notes per measure" , 4LL , 1LL , 256LL , 2LL , ":r:w:S:G:"); 03549 fields[3] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",633,"denominator","Denominator" , "Type of notes counted per measure" , 4LL , 1LL , 256LL , 2LL , ":r:w:S:G:"); 03550 fields[4] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",635,"tpqn","Ticks per quarter note" , "" , 384LL , 1LL , G_MAXINT , 12LL , ":r:w:S:G:"); 03551 fields[5] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",636,"tpt","Ticks per tact" , "" , 384LL , 1LL , G_MAXINT , 12LL , ":r:w:S:G:"); 03552 fields[6] = sfidl_pspec_SfiReal (NULL,"/opt/src/beast/bse/bsebasics.idl",638,"stamp_ticks","Ticks per stamp increment (valid only during playback)" , "" , 384LL , 1LL , G_MAXINT , 12LL , ":r:w:S:G:"); 03553 rfields.fields = fields; 03554 } 03555 return rfields; 03556 } 03557 ::Bse::SampleFileInfoHandle 03558 SampleFileInfo::from_rec (SfiRec *sfi_rec) 03559 { 03560 GValue *element; 03561 03562 if (!sfi_rec) 03563 return Sfi::INIT_NULL; 03564 03565 ::Bse::SampleFileInfoHandle rec = Sfi::INIT_DEFAULT; 03566 element = sfi_rec_get (sfi_rec, "file"); 03567 if (element) 03568 rec->file = ::Sfi::String::value_get_string (element); 03569 element = sfi_rec_get (sfi_rec, "size"); 03570 if (element) 03571 rec->size = sfi_value_get_int (element); 03572 element = sfi_rec_get (sfi_rec, "mtime"); 03573 if (element) 03574 rec->mtime = sfi_value_get_num (element); 03575 element = sfi_rec_get (sfi_rec, "loader"); 03576 if (element) 03577 rec->loader = ::Sfi::String::value_get_string (element); 03578 element = sfi_rec_get (sfi_rec, "waves"); 03579 if (element) 03580 rec->waves = ::Bse::StringSeq::value_get_boxed (element); 03581 element = sfi_rec_get (sfi_rec, "error"); 03582 if (element) 03583 rec->error = sfi_value_get_int (element); 03584 return rec; 03585 } 03586 03587 SfiRec * 03588 SampleFileInfo::to_rec (const ::Bse::SampleFileInfoHandle & rec) 03589 { 03590 SfiRec *sfi_rec; 03591 GValue *element; 03592 03593 if (!rec) 03594 return NULL; 03595 03596 sfi_rec = sfi_rec_new (); 03597 element = sfi_rec_forced_get (sfi_rec, "file", SFI_TYPE_STRING); 03598 ::Sfi::String::value_set_string (element, rec->file); 03599 element = sfi_rec_forced_get (sfi_rec, "size", SFI_TYPE_INT); 03600 sfi_value_set_int (element, rec->size); 03601 element = sfi_rec_forced_get (sfi_rec, "mtime", SFI_TYPE_NUM); 03602 sfi_value_set_num (element, rec->mtime); 03603 element = sfi_rec_forced_get (sfi_rec, "loader", SFI_TYPE_STRING); 03604 ::Sfi::String::value_set_string (element, rec->loader); 03605 element = sfi_rec_forced_get (sfi_rec, "waves", SFI_TYPE_SEQ); 03606 ::Bse::StringSeq::value_set_boxed (element, rec->waves); 03607 element = sfi_rec_forced_get (sfi_rec, "error", SFI_TYPE_INT); 03608 sfi_value_set_int (element, rec->error); 03609 return sfi_rec; 03610 } 03611 03612 ::Bse::SampleFileInfoHandle 03613 SampleFileInfo::value_get_boxed (const GValue *value) 03614 { 03615 return ::Bse::SampleFileInfoHandle::value_get_boxed (value); 03616 } 03617 03618 void 03619 SampleFileInfo::value_set_boxed (GValue *value, const ::Bse::SampleFileInfoHandle & self) 03620 { 03621 ::Bse::SampleFileInfoHandle::value_set_boxed (value, self); 03622 } 03623 03624 SfiRecFields 03625 SampleFileInfo::get_fields() 03626 { 03627 static SfiRecFields rfields = { 0, NULL }; 03628 if (!rfields.n_fields) 03629 { 03630 static GParamSpec *fields[6 + 1]; 03631 rfields.n_fields = 6; 03632 fields[0] = sfidl_pspec_SfiString (NULL,"/opt/src/beast/bse/bsebasics.idl",641,"file","Filename" , "" , "" , ":r:w:S:G:"); 03633 fields[1] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",642,"size","File Size" , "" , 0LL , 0LL , G_MAXINT , 0LL , ":r:w:S:G:"); 03634 fields[2] = sfidl_pspec_SfiNum (NULL,"/opt/src/beast/bse/bsebasics.idl",643,"mtime","Modification Time" , "" , 0LL , 0LL , SFI_MAXNUM , 0LL , ":r:w:S:G:"); 03635 fields[3] = sfidl_pspec_SfiString (NULL,"/opt/src/beast/bse/bsebasics.idl",644,"loader","Loader" , "" , "" , ":r:w:S:G:"); 03636 fields[4] = sfidl_pspec_Sequence (NULL,"/opt/src/beast/bse/bsebasics.idl",645, "waves", "" , "" , ":r:w:S:G:", Bse::StringSeq::get_element()); 03637 fields[5] = sfidl_pspec_SfiInt (NULL,"/opt/src/beast/bse/bsebasics.idl",646,"error","BseErrorType" , "" , 0LL , 0LL , G_MAXINT , 0LL , ":r:w:S:G:"); 03638 rfields.fields = fields; 03639 } 03640 return rfields; 03641 } 03642 ::Bse::GConfigHandle 03643 GConfig::from_rec (SfiRec *sfi_rec) 03644 { 03645 GValue *element; 03646 03647 if (!sfi_rec) 03648 return Sfi::INIT_NULL; 03649 03650 ::Bse::GConfigHandle rec = Sfi::INIT_DEFAULT; 03651 element = sfi_rec_get (sfi_rec, "synth_latency"); 03652 if (element) 03653 rec->synth_latency = sfi_value_get_int (element); 03654 element = sfi_rec_get (sfi_rec, "synth_mixing_freq"); 03655 if (element) 03656 rec->synth_mixing_freq = sfi_value_get_int (element); 03657 element = sfi_rec_get (sfi_rec, "synth_control_freq"); 03658 if (element) 03659 rec->synth_control_freq = sfi_value_get_int (element); 03660 element = sfi_rec_get (sfi_rec, "invert_sustain"); 03661 if (element) 03662 rec->invert_sustain = sfi_value_get_bool (element); 03663 element = sfi_rec_get (sfi_rec, "author_default"); 03664 if (element) 03665 rec->author_default = ::Sfi::String::value_get_string (element); 03666 element = sfi_rec_get (sfi_rec, "license_default"); 03667 if (element) 03668 rec->license_default = ::Sfi::String::value_get_string (element); 03669 element = sfi_rec_get (sfi_rec, "sample_path"); 03670 if (element) 03671 rec->sample_path = ::Sfi::String::value_get_string (element); 03672 element = sfi_rec_get (sfi_rec, "effect_path"); 03673 if (element) 03674 rec->effect_path = ::Sfi::String::value_get_string (element); 03675 element = sfi_rec_get (sfi_rec, "instrument_path"); 03676 if (element) 03677 rec->instrument_path = ::Sfi::String::value_get_string (element); 03678 element = sfi_rec_get (sfi_rec, "script_path"); 03679 if (element) 03680 rec->script_path = ::Sfi::String::value_get_string (element); 03681 element = sfi_rec_get (sfi_rec, "plugin_path"); 03682 if (element) 03683 rec->plugin_path = ::Sfi::String::value_get_string (element); 03684 element = sfi_rec_get (sfi_rec, "ladspa_path"); 03685 if (element) 03686 rec->ladspa_path = ::Sfi::String::value_get_string (element); 03687 return rec; 03688 } 03689 03690 SfiRec * 03691 GConfig::to_rec (const ::Bse::GConfigHandle & rec) 03692 { 03693 SfiRec *sfi_rec; 03694 GValue *element; 03695 03696 if (!rec) 03697 return NULL; 03698 03699 sfi_rec = sfi_rec_new (); 03700 element = sfi_rec_forced_get (sfi_rec, "synth_latency", SFI_TYPE_INT); 03701 sfi_value_set_int (element, rec->synth_latency); 03702 element = sfi_rec_forced_get (sfi_rec, "synth_mixing_freq", SFI_TYPE_INT); 03703 sfi_value_set_int (element, rec->synth_mixing_freq); 03704 element = sfi_rec_forced_get (sfi_rec, "synth_control_freq", SFI_TYPE_INT); 03705 sfi_value_set_int (element, rec->synth_control_freq); 03706 element = sfi_rec_forced_get (sfi_rec, "invert_sustain", SFI_TYPE_BOOL); 03707 sfi_value_set_bool (element, rec->invert_sustain); 03708 element = sfi_rec_forced_get (sfi_rec, "author_default", SFI_TYPE_STRING); 03709 ::Sfi::String::value_set_string (element, rec->author_default); 03710 element = sfi_rec_forced_get (sfi_rec, "license_default", SFI_TYPE_STRING); 03711 ::Sfi::String::value_set_string (element, rec->license_default); 03712 element = sfi_rec_forced_get (sfi_rec, "sample_path", SFI_TYPE_STRING); 03713 ::Sfi::String::value_set_string (element, rec->sample_path); 03714 element = sfi_rec_forced_get (sfi_rec, "effect_path", SFI_TYPE_STRING); 03715 ::Sfi::String::value_set_string (element, rec->effect_path); 03716 element = sfi_rec_forced_get (sfi_rec, "instrument_path", SFI_TYPE_STRING); 03717 ::Sfi::String::value_set_string (element, rec->instrument_path); 03718 element = sfi_rec_forced_get (sfi_rec, "script_path", SFI_TYPE_STRING); 03719 ::Sfi::String::value_set_string (element, rec->script_path); 03720 element = sfi_rec_forced_get (sfi_rec, "plugin_path", SFI_TYPE_STRING); 03721 ::Sfi::String::value_set_string (element, rec->plugin_path); 03722 element = sfi_rec_forced_get (sfi_rec, "ladspa_path", SFI_TYPE_STRING); 03723 ::Sfi::String::value_set_string (element, rec->ladspa_path); 03724 return sfi_rec; 03725 } 03726 03727 ::Bse::GConfigHandle 03728 GConfig::value_get_boxed (const GValue *value) 03729 { 03730 return ::Bse::GConfigHandle::value_get_boxed (value); 03731 } 03732 03733 void 03734 GConfig::value_set_boxed (GValue *value, const ::Bse::GConfigHandle & self) 03735 { 03736 ::Bse::GConfigHandle::value_set_boxed (value, self); 03737 } 03738 03739 SfiRecFields 03740 GConfig::get_fields() 03741 { 03742 static SfiRecFields rfields = { 0, NULL }; 03743 if (!rfields.n_fields) 03744 { 03745 static GParamSpec *fields[12 + 1]; 03746 rfields.n_fields = 12; 03747 fields[0] = sfidl_pspec_SfiInt (_("Synthesis Settings"),"/opt/src/beast/bse/bsebasics.idl",662,"synth_latency",_ ( "Latency [ms]" ) , _ ( "Processing duration between input and output of a single sample, smaller values increase CPU load" ) , 50LL , 1LL , 2000LL , 5LL , ":r:w:S:G:"); 03748 fields[1] = sfidl_pspec_SfiInt (_("Synthesis Settings"),"/opt/src/beast/bse/bsebasics.idl",666,"synth_mixing_freq",_ ( "Synth Mixing Frequency" ) , _ ( "Synthesis mixing frequency, common values are: 22050, 44100, 48000" ) , 44100LL , 8000LL , 192000LL , 0LL , ":r:w:S:G:"); 03749 fields[2] = sfidl_pspec_SfiInt (_("Synthesis Settings"),"/opt/src/beast/bse/bsebasics.idl",670,"synth_control_freq",_ ( "Synth Control Frequency" ) , _ ( "Frequency at which control values are evaluated, " "should be much smaller than Synth Mixing Frequency to reduce CPU load" ) , 1000LL , 1LL , 192000LL , 0LL , ":r:w:S:G:"); 03750 fields[3] = sfidl_pspec_SfiBool (_("MIDI"),"/opt/src/beast/bse/bsebasics.idl",677,"invert_sustain",_ ( "Invert Sustain Pedal" ) , _ ( "Invert the state of sustain (damper) pedal so on/off meanings are reversed" ) , FALSE , ":r:w:S:G:"); 03751 fields[4] = sfidl_pspec_SfiString (_("Default Values"),"/opt/src/beast/bse/bsebasics.idl",682,"author_default",_ ( "Default Author" ) , _ ( "Default value for 'Author' fields" ) , "\357\277\271\357\277\272{{bse.idl/default-author}}\357\277\273" , ":r:w:S:G:"); 03752 fields[5] = sfidl_pspec_SfiString (_("Default Values"),"/opt/src/beast/bse/bsebasics.idl",684,"license_default",_ ( "Default License" ) , _ ( "Default value for 'License' fields" ) , "\357\277\271\357\277\272{{bse.idl/default-license}}\357\277\273" , ":r:w:S:G:"); 03753 fields[6] = sfidl_pspec_SfiString (_("Search Paths"),"/opt/src/beast/bse/bsebasics.idl",688,"sample_path",_ ( "Sample Path" ) , _ ( "Search path of directories, seperated by \";\", used to find audio samples." ) , "\357\277\271\357\277\272{{bse.idl/user-data-path}}\357\277\273samples" , ":r:w:S:G:" ":searchpath"); 03754 fields[7] = sfidl_pspec_SfiString (_("Search Paths"),"/opt/src/beast/bse/bsebasics.idl",691,"effect_path",_ ( "Effect Path" ) , _ ( "Search path of directories, seperated by \";\", used to find BSE effect files." ) , "\357\277\271\357\277\272{{bse.idl/user-data-path}}\357\277\273effects" , ":r:w:S:G:" ":searchpath"); 03755 fields[8] = sfidl_pspec_SfiString (_("Search Paths"),"/opt/src/beast/bse/bsebasics.idl",694,"instrument_path",_ ( "Instrument Path" ) , _ ( "Search path of directories, seperated by \";\", used to find BSE instrument files." ) , "\357\277\271\357\277\272{{bse.idl/user-data-path}}\357\277\273instruments" , ":r:w:S:G:" ":searchpath"); 03756 fields[9] = sfidl_pspec_SfiString (_("Search Paths"),"/opt/src/beast/bse/bsebasics.idl",697,"script_path",_ ( "Script Path" ) , _ ( "Search path of directories, seperated by \";\", used to find BSE scheme scripts." ) , "\357\277\271\357\277\272{{bse.idl/user-data-path}}\357\277\273scripts" , ":r:w:S:G:" ":searchpath"); 03757 fields[10] = sfidl_pspec_SfiString (_("Search Paths"),"/opt/src/beast/bse/bsebasics.idl",700,"plugin_path",_ ( "Plugin Path" ) , _ ( "Search path of directories, seperated by \";\", used to find BSE plugins. This path " "is searched for in addition to the standard BSE plugin location on this system." ) , "\357\277\271\357\277\272{{bse.idl/user-data-path}}\357\277\273plugins" , ":r:w:S:G:" ":searchpath"); 03758 fields[11] = sfidl_pspec_SfiString (_("Search Paths"),"/opt/src/beast/bse/bsebasics.idl",704,"ladspa_path",_ ( "LADSPA Path" ) , _ ( "Search path of directories, seperated by \";\", used to find LADSPA plugins. This " "path is searched for in addition to the standard LADSPA location on this system. " "LADSPA is the Linux Audio Developer's Simple Plugin API, more informations about " "LADSPA plugins can be found at http://www.ladspa.org/." ) , "" , ":r:w:S:G:" ":searchpath"); 03759 rfields.fields = fields; 03760 } 03761 return rfields; 03762 } 03763 03764 03765 /* sequence implementations */ 03766 ::Bse::IntSeq 03767 IntSeq::from_seq (SfiSeq *sfi_seq) 03768 { 03769 ::Bse::IntSeq cseq; 03770 guint i, length; 03771 03772 if (!sfi_seq) 03773 return cseq; 03774 03775 length = sfi_seq_length (sfi_seq); 03776 cseq.resize (length); 03777 for (i = 0; i < length; i++) 03778 { 03779 GValue *element = sfi_seq_get (sfi_seq, i); 03780 cseq[i] = sfi_value_get_int (element); 03781 } 03782 return cseq; 03783 } 03784 03785 SfiSeq * 03786 IntSeq::to_seq (const ::Bse::IntSeq & cseq) 03787 { 03788 SfiSeq *sfi_seq = sfi_seq_new (); 03789 for (guint i = 0; i < cseq.length(); i++) 03790 { 03791 GValue *element = sfi_seq_append_empty (sfi_seq, SFI_TYPE_INT); 03792 sfi_value_set_int (element, cseq[i]); 03793 } 03794 return sfi_seq; 03795 } 03796 03797 ::Bse::IntSeq 03798 IntSeq::value_get_boxed (const GValue *value) 03799 { 03800 return ::Sfi::cxx_value_get_boxed_sequence< IntSeq> (value); 03801 } 03802 03803 void 03804 IntSeq::value_set_boxed (GValue *value, const ::Bse::IntSeq & self) 03805 { 03806 ::Sfi::cxx_value_set_boxed_sequence< IntSeq> (value, self); 03807 } 03808 03809 GParamSpec* 03810 IntSeq::get_element() 03811 { 03812 static GParamSpec *element = NULL; 03813 if (!element) { 03814 element = g_param_spec_ref (sfidl_pspec_Int_default (NULL,"/opt/src/beast/bse/bsebasics.idl",24,"ints")); 03815 g_param_spec_sink (element); 03816 } 03817 return element; 03818 } 03819 03820 ::Bse::TypeSeq 03821 TypeSeq::from_seq (SfiSeq *sfi_seq) 03822 { 03823 ::Bse::TypeSeq cseq; 03824 guint i, length; 03825 03826 if (!sfi_seq) 03827 return cseq; 03828 03829 length = sfi_seq_length (sfi_seq); 03830 cseq.resize (length); 03831 for (i = 0; i < length; i++) 03832 { 03833 GValue *element = sfi_seq_get (sfi_seq, i); 03834 cseq[i] = ::Sfi::String::value_get_string (element); 03835 } 03836 return cseq; 03837 } 03838 03839 SfiSeq * 03840 TypeSeq::to_seq (const ::Bse::TypeSeq & cseq) 03841 { 03842 SfiSeq *sfi_seq = sfi_seq_new (); 03843 for (guint i = 0; i < cseq.length(); i++) 03844 { 03845 GValue *element = sfi_seq_append_empty (sfi_seq, SFI_TYPE_STRING); 03846 ::Sfi::String::value_set_string (element, cseq[i]); 03847 } 03848 return sfi_seq; 03849 } 03850 03851 ::Bse::TypeSeq 03852 TypeSeq::value_get_boxed (const GValue *value) 03853 { 03854 return ::Sfi::cxx_value_get_boxed_sequence< TypeSeq> (value); 03855 } 03856 03857 void 03858 TypeSeq::value_set_boxed (GValue *value, const ::Bse::TypeSeq & self) 03859 { 03860 ::Sfi::cxx_value_set_boxed_sequence< TypeSeq> (value, self); 03861 } 03862 03863 GParamSpec* 03864 TypeSeq::get_element() 03865 { 03866 static GParamSpec *element = NULL; 03867 if (!element) { 03868 element = g_param_spec_ref (sfidl_pspec_String_default (NULL,"/opt/src/beast/bse/bsebasics.idl",27,"types")); 03869 g_param_spec_sink (element); 03870 } 03871 return element; 03872 } 03873 03874 ::Bse::StringSeq 03875 StringSeq::from_seq (SfiSeq *sfi_seq) 03876 { 03877 ::Bse::StringSeq cseq; 03878 guint i, length; 03879 03880 if (!sfi_seq) 03881 return cseq; 03882 03883 length = sfi_seq_length (sfi_seq); 03884 cseq.resize (length); 03885 for (i = 0; i < length; i++) 03886 { 03887 GValue *element = sfi_seq_get (sfi_seq, i); 03888 cseq[i] = ::Sfi::String::value_get_string (element); 03889 } 03890 return cseq; 03891 } 03892 03893 SfiSeq * 03894 StringSeq::to_seq (const ::Bse::StringSeq & cseq) 03895 { 03896 SfiSeq *sfi_seq = sfi_seq_new (); 03897 for (guint i = 0; i < cseq.length(); i++) 03898 { 03899 GValue *element = sfi_seq_append_empty (sfi_seq, SFI_TYPE_STRING); 03900 ::Sfi::String::value_set_string (element, cseq[i]); 03901 } 03902 return sfi_seq; 03903 } 03904 03905 ::Bse::StringSeq 03906 StringSeq::value_get_boxed (const GValue *value) 03907 { 03908 return ::Sfi::cxx_value_get_boxed_sequence< StringSeq> (value); 03909 } 03910 03911 void 03912 StringSeq::value_set_boxed (GValue *value, const ::Bse::StringSeq & self) 03913 { 03914 ::Sfi::cxx_value_set_boxed_sequence< StringSeq> (value, self); 03915 } 03916 03917 GParamSpec* 03918 StringSeq::get_element() 03919 { 03920 static GParamSpec *element = NULL; 03921 if (!element) { 03922 element = g_param_spec_ref (sfidl_pspec_String_default (NULL,"/opt/src/beast/bse/bsebasics.idl",30,"strings")); 03923 g_param_spec_sink (element); 03924 } 03925 return element; 03926 } 03927 03928 ::Bse::FloatSeq 03929 FloatSeq::from_seq (SfiSeq *sfi_seq) 03930 { 03931 ::Bse::FloatSeq cseq; 03932 guint i, length; 03933 03934 if (!sfi_seq) 03935 return cseq; 03936 03937 length = sfi_seq_length (sfi_seq); 03938 cseq.resize (length); 03939 for (i = 0; i < length; i++) 03940 { 03941 GValue *element = sfi_seq_get (sfi_seq, i); 03942 cseq[i] = sfi_value_get_real (element); 03943 } 03944 return cseq; 03945 } 03946 03947 SfiSeq * 03948 FloatSeq::to_seq (const ::Bse::FloatSeq & cseq) 03949 { 03950 SfiSeq *sfi_seq = sfi_seq_new (); 03951 for (guint i = 0; i < cseq.length(); i++) 03952 { 03953 GValue *element = sfi_seq_append_empty (sfi_seq, SFI_TYPE_REAL); 03954 sfi_value_set_real (element, cseq[i]); 03955 } 03956 return sfi_seq; 03957 } 03958 03959 ::Bse::FloatSeq 03960 FloatSeq::value_get_boxed (const GValue *value) 03961 { 03962 return ::Sfi::cxx_value_get_boxed_sequence< FloatSeq> (value); 03963 } 03964 03965 void 03966 FloatSeq::value_set_boxed (GValue *value, const ::Bse::FloatSeq & self) 03967 { 03968 ::Sfi::cxx_value_set_boxed_sequence< FloatSeq> (value, self); 03969 } 03970 03971 GParamSpec* 03972 FloatSeq::get_element() 03973 { 03974 static GParamSpec *element = NULL; 03975 if (!element) { 03976 element = g_param_spec_ref (sfidl_pspec_Real_default (NULL,"/opt/src/beast/bse/bsebasics.idl",33,"values")); 03977 g_param_spec_sink (element); 03978 } 03979 return element; 03980 } 03981 03982 ::Bse::NoteSeq 03983 NoteSeq::from_seq (SfiSeq *sfi_seq) 03984 { 03985 ::Bse::NoteSeq cseq; 03986 guint i, length; 03987 03988 if (!sfi_seq) 03989 return cseq; 03990 03991 length = sfi_seq_length (sfi_seq); 03992 cseq.resize (length); 03993 for (i = 0; i < length; i++) 03994 { 03995 GValue *element = sfi_seq_get (sfi_seq, i); 03996 cseq[i] = sfi_value_get_int (element); 03997 } 03998 return cseq; 03999 } 04000 04001 SfiSeq * 04002 NoteSeq::to_seq (const ::Bse::NoteSeq & cseq) 04003 { 04004 SfiSeq *sfi_seq = sfi_seq_new (); 04005 for (guint i = 0; i < cseq.length(); i++) 04006 { 04007 GValue *element = sfi_seq_append_empty (sfi_seq, SFI_TYPE_INT); 04008 sfi_value_set_int (element, cseq[i]); 04009 } 04010 return sfi_seq; 04011 } 04012 04013 ::Bse::NoteSeq 04014 NoteSeq::value_get_boxed (const GValue *value) 04015 { 04016 return ::Sfi::cxx_value_get_boxed_sequence< NoteSeq> (value); 04017 } 04018 04019 void 04020 NoteSeq::value_set_boxed (GValue *value, const ::Bse::NoteSeq & self) 04021 { 04022 ::Sfi::cxx_value_set_boxed_sequence< NoteSeq> (value, self); 04023 } 04024 04025 GParamSpec* 04026 NoteSeq::get_element() 04027 { 04028 static GParamSpec *element = NULL; 04029 if (!element) { 04030 element = g_param_spec_ref (sfidl_pspec_Note (NULL,"/opt/src/beast/bse/bsebasics.idl",506,"notes","Note" , "" , KAMMER_NOTE , ":readwrite")); 04031 g_param_spec_sink (element); 04032 } 04033 return element; 04034 } 04035 04036 ::Bse::ItemSeq 04037 ItemSeq::from_seq (SfiSeq *sfi_seq) 04038 { 04039 ::Bse::ItemSeq cseq; 04040 guint i, length; 04041 04042 if (!sfi_seq) 04043 return cseq; 04044 04045 length = sfi_seq_length (sfi_seq); 04046 cseq.resize (length); 04047 for (i = 0; i < length; i++) 04048 { 04049 GValue *element = sfi_seq_get (sfi_seq, i); 04050 cseq[i] = ::Bse::CxxBase::value_get_gobject< BseItem> (element); 04051 } 04052 return cseq; 04053 } 04054 04055 SfiSeq * 04056 ItemSeq::to_seq (const ::Bse::ItemSeq & cseq) 04057 { 04058 SfiSeq *sfi_seq = sfi_seq_new (); 04059 for (guint i = 0; i < cseq.length(); i++) 04060 { 04061 GValue *element = sfi_seq_append_empty (sfi_seq, SFI_TYPE_PROXY); 04062 ::Bse::CxxBase::value_set_gobject (element, cseq[i]); 04063 } 04064 return sfi_seq; 04065 } 04066 04067 ::Bse::ItemSeq 04068 ItemSeq::value_get_boxed (const GValue *value) 04069 { 04070 return ::Sfi::cxx_value_get_boxed_sequence< ItemSeq> (value); 04071 } 04072 04073 void 04074 ItemSeq::value_set_boxed (GValue *value, const ::Bse::ItemSeq & self) 04075 { 04076 ::Sfi::cxx_value_set_boxed_sequence< ItemSeq> (value, self); 04077 } 04078 04079 GParamSpec* 04080 ItemSeq::get_element() 04081 { 04082 static GParamSpec *element = NULL; 04083 if (!element) { 04084 element = g_param_spec_ref (sfidl_pspec_Object_default (NULL,"/opt/src/beast/bse/bsebasics.idl",511,"items")); 04085 g_param_spec_sink (element); 04086 } 04087 return element; 04088 } 04089 04090 ::Bse::PartNoteSeq 04091 PartNoteSeq::from_seq (SfiSeq *sfi_seq) 04092 { 04093 ::Bse::PartNoteSeq cseq; 04094 guint i, length; 04095 04096 if (!sfi_seq) 04097 return cseq; 04098 04099 length = sfi_seq_length (sfi_seq); 04100 cseq.resize (length); 04101 for (i = 0; i < length; i++) 04102 { 04103 GValue *element = sfi_seq_get (sfi_seq, i); 04104 cseq[i] = ::Bse::PartNote::value_get_boxed (element); 04105 } 04106 return cseq; 04107 } 04108 04109 SfiSeq * 04110 PartNoteSeq::to_seq (const ::Bse::PartNoteSeq & cseq) 04111 { 04112 SfiSeq *sfi_seq = sfi_seq_new (); 04113 for (guint i = 0; i < cseq.length(); i++) 04114 { 04115 GValue *element = sfi_seq_append_empty (sfi_seq, SFI_TYPE_REC); 04116 ::Bse::PartNote::value_set_boxed (element, cseq[i]); 04117 } 04118 return sfi_seq; 04119 } 04120 04121 ::Bse::PartNoteSeq 04122 PartNoteSeq::value_get_boxed (const GValue *value) 04123 { 04124 return ::Sfi::cxx_value_get_boxed_sequence< PartNoteSeq> (value); 04125 } 04126 04127 void 04128 PartNoteSeq::value_set_boxed (GValue *value, const ::Bse::PartNoteSeq & self) 04129 { 04130 ::Sfi::cxx_value_set_boxed_sequence< PartNoteSeq> (value, self); 04131 } 04132 04133 GParamSpec* 04134 PartNoteSeq::get_element() 04135 { 04136 static GParamSpec *element = NULL; 04137 if (!element) { 04138 element = g_param_spec_ref (sfidl_pspec_Record_default (NULL,"/opt/src/beast/bse/bsebasics.idl",534, "pnotes", Bse::PartNote::get_fields())); 04139 g_param_spec_sink (element); 04140 } 04141 return element; 04142 } 04143 04144 ::Bse::PartControlSeq 04145 PartControlSeq::from_seq (SfiSeq *sfi_seq) 04146 { 04147 ::Bse::PartControlSeq cseq; 04148 guint i, length; 04149 04150 if (!sfi_seq) 04151 return cseq; 04152 04153 length = sfi_seq_length (sfi_seq); 04154 cseq.resize (length); 04155 for (i = 0; i < length; i++) 04156 { 04157 GValue *element = sfi_seq_get (sfi_seq, i); 04158 cseq[i] = ::Bse::PartControl::value_get_boxed (element); 04159 } 04160 return cseq; 04161 } 04162 04163 SfiSeq * 04164 PartControlSeq::to_seq (const ::Bse::PartControlSeq & cseq) 04165 { 04166 SfiSeq *sfi_seq = sfi_seq_new (); 04167 for (guint i = 0; i < cseq.length(); i++) 04168 { 04169 GValue *element = sfi_seq_append_empty (sfi_seq, SFI_TYPE_REC); 04170 ::Bse::PartControl::value_set_boxed (element, cseq[i]); 04171 } 04172 return sfi_seq; 04173 } 04174 04175 ::Bse::PartControlSeq 04176 PartControlSeq::value_get_boxed (const GValue *value) 04177 { 04178 return ::Sfi::cxx_value_get_boxed_sequence< PartControlSeq> (value); 04179 } 04180 04181 void 04182 PartControlSeq::value_set_boxed (GValue *value, const ::Bse::PartControlSeq & self) 04183 { 04184 ::Sfi::cxx_value_set_boxed_sequence< PartControlSeq> (value, self); 04185 } 04186 04187 GParamSpec* 04188 PartControlSeq::get_element() 04189 { 04190 static GParamSpec *element = NULL; 04191 if (!element) { 04192 element = g_param_spec_ref (sfidl_pspec_Record_default (NULL,"/opt/src/beast/bse/bsebasics.idl",547, "pcontrols", Bse::PartControl::get_fields())); 04193 g_param_spec_sink (element); 04194 } 04195 return element; 04196 } 04197 04198 ::Bse::PixelSeq 04199 PixelSeq::from_seq (SfiSeq *sfi_seq) 04200 { 04201 ::Bse::PixelSeq cseq; 04202 guint i, length; 04203 04204 if (!sfi_seq) 04205 return cseq; 04206 04207 length = sfi_seq_length (sfi_seq); 04208 cseq.resize (length); 04209 for (i = 0; i < length; i++) 04210 { 04211 GValue *element = sfi_seq_get (sfi_seq, i); 04212 cseq[i] = sfi_value_get_int (element); 04213 } 04214 return cseq; 04215 } 04216 04217 SfiSeq * 04218 PixelSeq::to_seq (const ::Bse::PixelSeq & cseq) 04219 { 04220 SfiSeq *sfi_seq = sfi_seq_new (); 04221 for (guint i = 0; i < cseq.length(); i++) 04222 { 04223 GValue *element = sfi_seq_append_empty (sfi_seq, SFI_TYPE_INT); 04224 sfi_value_set_int (element, cseq[i]); 04225 } 04226 return sfi_seq; 04227 } 04228 04229 ::Bse::PixelSeq 04230 PixelSeq::value_get_boxed (const GValue *value) 04231 { 04232 return ::Sfi::cxx_value_get_boxed_sequence< PixelSeq> (value); 04233 } 04234 04235 void 04236 PixelSeq::value_set_boxed (GValue *value, const ::Bse::PixelSeq & self) 04237 { 04238 ::Sfi::cxx_value_set_boxed_sequence< PixelSeq> (value, self); 04239 } 04240 04241 GParamSpec* 04242 PixelSeq::get_element() 04243 { 04244 static GParamSpec *element = NULL; 04245 if (!element) { 04246 element = g_param_spec_ref (sfidl_pspec_Int_default (NULL,"/opt/src/beast/bse/bsebasics.idl",574,"pixels")); 04247 g_param_spec_sink (element); 04248 } 04249 return element; 04250 } 04251 04252 ::Bse::CategorySeq 04253 CategorySeq::from_seq (SfiSeq *sfi_seq) 04254 { 04255 ::Bse::CategorySeq cseq; 04256 guint i, length; 04257 04258 if (!sfi_seq) 04259 return cseq; 04260 04261 length = sfi_seq_length (sfi_seq); 04262 cseq.resize (length); 04263 for (i = 0; i < length; i++) 04264 { 04265 GValue *element = sfi_seq_get (sfi_seq, i); 04266 cseq[i] = ::Bse::Category::value_get_boxed (element); 04267 } 04268 return cseq; 04269 } 04270 04271 SfiSeq * 04272 CategorySeq::to_seq (const ::Bse::CategorySeq & cseq) 04273 { 04274 SfiSeq *sfi_seq = sfi_seq_new (); 04275 for (guint i = 0; i < cseq.length(); i++) 04276 { 04277 GValue *element = sfi_seq_append_empty (sfi_seq, SFI_TYPE_REC); 04278 ::Bse::Category::value_set_boxed (element, cseq[i]); 04279 } 04280 return sfi_seq; 04281 } 04282 04283 ::Bse::CategorySeq 04284 CategorySeq::value_get_boxed (const GValue *value) 04285 { 04286 return ::Sfi::cxx_value_get_boxed_sequence< CategorySeq> (value); 04287 } 04288 04289 void 04290 CategorySeq::value_set_boxed (GValue *value, const ::Bse::CategorySeq & self) 04291 { 04292 ::Sfi::cxx_value_set_boxed_sequence< CategorySeq> (value, self); 04293 } 04294 04295 GParamSpec* 04296 CategorySeq::get_element() 04297 { 04298 static GParamSpec *element = NULL; 04299 if (!element) { 04300 element = g_param_spec_ref (sfidl_pspec_Record_default (NULL,"/opt/src/beast/bse/bsebasics.idl",593, "cats", Bse::Category::get_fields())); 04301 g_param_spec_sink (element); 04302 } 04303 return element; 04304 } 04305 04306 ::Bse::DotSeq 04307 DotSeq::from_seq (SfiSeq *sfi_seq) 04308 { 04309 ::Bse::DotSeq cseq; 04310 guint i, length; 04311 04312 if (!sfi_seq) 04313 return cseq; 04314 04315 length = sfi_seq_length (sfi_seq); 04316 cseq.resize (length); 04317 for (i = 0; i < length; i++) 04318 { 04319 GValue *element = sfi_seq_get (sfi_seq, i); 04320 cseq[i] = ::Bse::Dot::value_get_boxed (element); 04321 } 04322 return cseq; 04323 } 04324 04325 SfiSeq * 04326 DotSeq::to_seq (const ::Bse::DotSeq & cseq) 04327 { 04328 SfiSeq *sfi_seq = sfi_seq_new (); 04329 for (guint i = 0; i < cseq.length(); i++) 04330 { 04331 GValue *element = sfi_seq_append_empty (sfi_seq, SFI_TYPE_REC); 04332 ::Bse::Dot::value_set_boxed (element, cseq[i]); 04333 } 04334 return sfi_seq; 04335 } 04336 04337 ::Bse::DotSeq 04338 DotSeq::value_get_boxed (const GValue *value) 04339 { 04340 return ::Sfi::cxx_value_get_boxed_sequence< DotSeq> (value); 04341 } 04342 04343 void 04344 DotSeq::value_set_boxed (GValue *value, const ::Bse::DotSeq & self) 04345 { 04346 ::Sfi::cxx_value_set_boxed_sequence< DotSeq> (value, self); 04347 } 04348 04349 GParamSpec* 04350 DotSeq::get_element() 04351 { 04352 static GParamSpec *element = NULL; 04353 if (!element) { 04354 element = g_param_spec_ref (sfidl_pspec_Record_default (NULL,"/opt/src/beast/bse/bsebasics.idl",601, "dots", Bse::Dot::get_fields())); 04355 g_param_spec_sink (element); 04356 } 04357 return element; 04358 } 04359 04360 ::Bse::PartLinkSeq 04361 PartLinkSeq::from_seq (SfiSeq *sfi_seq) 04362 { 04363 ::Bse::PartLinkSeq cseq; 04364 guint i, length; 04365 04366 if (!sfi_seq) 04367 return cseq; 04368 04369 length = sfi_seq_length (sfi_seq); 04370 cseq.resize (length); 04371 for (i = 0; i < length; i++) 04372 { 04373 GValue *element = sfi_seq_get (sfi_seq, i); 04374 cseq[i] = ::Bse::PartLink::value_get_boxed (element); 04375 } 04376 return cseq; 04377 } 04378 04379 SfiSeq * 04380 PartLinkSeq::to_seq (const ::Bse::PartLinkSeq & cseq) 04381 { 04382 SfiSeq *sfi_seq = sfi_seq_new (); 04383 for (guint i = 0; i < cseq.length(); i++) 04384 { 04385 GValue *element = sfi_seq_append_empty (sfi_seq, SFI_TYPE_REC); 04386 ::Bse::PartLink::value_set_boxed (element, cseq[i]); 04387 } 04388 return sfi_seq; 04389 } 04390 04391 ::Bse::PartLinkSeq 04392 PartLinkSeq::value_get_boxed (const GValue *value) 04393 { 04394 return ::Sfi::cxx_value_get_boxed_sequence< PartLinkSeq> (value); 04395 } 04396 04397 void 04398 PartLinkSeq::value_set_boxed (GValue *value, const ::Bse::PartLinkSeq & self) 04399 { 04400 ::Sfi::cxx_value_set_boxed_sequence< PartLinkSeq> (value, self); 04401 } 04402 04403 GParamSpec* 04404 PartLinkSeq::get_element() 04405 { 04406 static GParamSpec *element = NULL; 04407 if (!element) { 04408 element = g_param_spec_ref (sfidl_pspec_Record_default (NULL,"/opt/src/beast/bse/bsebasics.idl",614, "plinks", Bse::PartLink::get_fields())); 04409 g_param_spec_sink (element); 04410 } 04411 return element; 04412 } 04413 04414 ::Bse::TrackPartSeq 04415 TrackPartSeq::from_seq (SfiSeq *sfi_seq) 04416 { 04417 ::Bse::TrackPartSeq cseq; 04418 guint i, length; 04419 04420 if (!sfi_seq) 04421 return cseq; 04422 04423 length = sfi_seq_length (sfi_seq); 04424 cseq.resize (length); 04425 for (i = 0; i < length; i++) 04426 { 04427 GValue *element = sfi_seq_get (sfi_seq, i); 04428 cseq[i] = ::Bse::TrackPart::value_get_boxed (element); 04429 } 04430 return cseq; 04431 } 04432 04433 SfiSeq * 04434 TrackPartSeq::to_seq (const ::Bse::TrackPartSeq & cseq) 04435 { 04436 SfiSeq *sfi_seq = sfi_seq_new (); 04437 for (guint i = 0; i < cseq.length(); i++) 04438 { 04439 GValue *element = sfi_seq_append_empty (sfi_seq, SFI_TYPE_REC); 04440 ::Bse::TrackPart::value_set_boxed (element, cseq[i]); 04441 } 04442 return sfi_seq; 04443 } 04444 04445 ::Bse::TrackPartSeq 04446 TrackPartSeq::value_get_boxed (const GValue *value) 04447 { 04448 return ::Sfi::cxx_value_get_boxed_sequence< TrackPartSeq> (value); 04449 } 04450 04451 void 04452 TrackPartSeq::value_set_boxed (GValue *value, const ::Bse::TrackPartSeq & self) 04453 { 04454 ::Sfi::cxx_value_set_boxed_sequence< TrackPartSeq> (value, self); 04455 } 04456 04457 GParamSpec* 04458 TrackPartSeq::get_element() 04459 { 04460 static GParamSpec *element = NULL; 04461 if (!element) { 04462 element = g_param_spec_ref (sfidl_pspec_Record_default (NULL,"/opt/src/beast/bse/bsebasics.idl",623, "tparts", Bse::TrackPart::get_fields())); 04463 g_param_spec_sink (element); 04464 } 04465 return element; 04466 } 04467 04468 04469 04470 /* class implementations */ 04471 04472 04473 /* procedure implementations */ 04474 04475 04476 /* bsebasics.idl type registrations */ 04477 #define BSE_CXX_REGISTER_ALL_TYPES_FROM_BSEBASICS_IDL() \ 04478 BSE_CXX_REGISTER_ENUM (MusicalTuningType); \ 04479 BSE_CXX_REGISTER_ENUM (MidiSignalType); \ 04480 BSE_CXX_REGISTER_ENUM (MidiControlType); \ 04481 BSE_CXX_REGISTER_ENUM (MidiChannelEventType); \ 04482 BSE_CXX_REGISTER_RECORD (MidiChannelEvent); \ 04483 BSE_CXX_REGISTER_RECORD (PropertyCandidates); \ 04484 BSE_CXX_REGISTER_RECORD (PartNote); \ 04485 BSE_CXX_REGISTER_RECORD (PartControl); \ 04486 BSE_CXX_REGISTER_RECORD (NoteDescription); \ 04487 BSE_CXX_REGISTER_RECORD (NoteSequence); \ 04488 BSE_CXX_REGISTER_RECORD (Icon); \ 04489 BSE_CXX_REGISTER_RECORD (Category); \ 04490 BSE_CXX_REGISTER_RECORD (Dot); \ 04491 BSE_CXX_REGISTER_RECORD (PartLink); \ 04492 BSE_CXX_REGISTER_RECORD (TrackPart); \ 04493 BSE_CXX_REGISTER_RECORD (SongTiming); \ 04494 BSE_CXX_REGISTER_RECORD (SampleFileInfo); \ 04495 BSE_CXX_REGISTER_RECORD (GConfig); \ 04496 BSE_CXX_REGISTER_SEQUENCE (IntSeq); \ 04497 BSE_CXX_REGISTER_SEQUENCE (TypeSeq); \ 04498 BSE_CXX_REGISTER_SEQUENCE (StringSeq); \ 04499 BSE_CXX_REGISTER_SEQUENCE (FloatSeq); \ 04500 BSE_CXX_REGISTER_SEQUENCE (NoteSeq); \ 04501 BSE_CXX_REGISTER_SEQUENCE (ItemSeq); \ 04502 BSE_CXX_REGISTER_SEQUENCE (PartNoteSeq); \ 04503 BSE_CXX_REGISTER_SEQUENCE (PartControlSeq); \ 04504 BSE_CXX_REGISTER_SEQUENCE (PixelSeq); \ 04505 BSE_CXX_REGISTER_SEQUENCE (CategorySeq); \ 04506 BSE_CXX_REGISTER_SEQUENCE (DotSeq); \ 04507 BSE_CXX_REGISTER_SEQUENCE (PartLinkSeq); \ 04508 BSE_CXX_REGISTER_SEQUENCE (TrackPartSeq); \ 04509 /* bsebasics.idl type registrations done */ 04510 } // Bse 04511 04512 /*-------- end ../sfi/sfidl generated code --------*/ 04513 04514