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