2 #ifndef __CLNT__BSE_IDL
3 #define __CLNT__BSE_IDL
7 #include <rapicorn-core.hh>
9 #ifndef __ENUMHH__BSE_IDL__
10 #define __ENUMHH__BSE_IDL__
22 ERROR_FILE_EXISTS = 6,
25 ERROR_FILE_NOT_FOUND = 9,
26 ERROR_FILE_IS_DIR = 10,
27 ERROR_FILE_OPEN_FAILED = 11,
28 ERROR_FILE_SEEK_FAILED = 12,
29 ERROR_FILE_READ_FAILED = 13,
30 ERROR_FILE_WRITE_FAILED = 14,
31 ERROR_MANY_FILES = 15,
36 ERROR_NO_SEEK_INFO = 20,
38 ERROR_DATA_CORRUPT = 22,
39 ERROR_WRONG_N_CHANNELS = 23,
40 ERROR_FORMAT_INVALID = 24,
41 ERROR_FORMAT_UNKNOWN = 25,
42 ERROR_DATA_UNMATCHED = 26,
44 ERROR_WAVE_NOT_FOUND = 28,
45 ERROR_CODEC_FAILURE = 29,
46 ERROR_UNIMPLEMENTED = 30,
47 ERROR_INVALID_PROPERTY = 31,
48 ERROR_INVALID_MIDI_CONTROL = 32,
49 ERROR_PARSE_ERROR = 33,
51 ERROR_DEVICE_NOT_AVAILABLE = 35,
52 ERROR_DEVICE_ASYNC = 36,
53 ERROR_DEVICE_BUSY = 37,
54 ERROR_DEVICE_FORMAT = 38,
55 ERROR_DEVICE_BUFFER = 39,
56 ERROR_DEVICE_LATENCY = 40,
57 ERROR_DEVICE_CHANNELS = 41,
58 ERROR_DEVICE_FREQUENCY = 42,
59 ERROR_DEVICES_MISMATCH = 43,
60 ERROR_SOURCE_NO_SUCH_MODULE = 44,
61 ERROR_SOURCE_NO_SUCH_ICHANNEL = 45,
62 ERROR_SOURCE_NO_SUCH_OCHANNEL = 46,
63 ERROR_SOURCE_NO_SUCH_CONNECTION = 47,
64 ERROR_SOURCE_PRIVATE_ICHANNEL = 48,
65 ERROR_SOURCE_ICHANNEL_IN_USE = 49,
66 ERROR_SOURCE_CHANNELS_CONNECTED = 50,
67 ERROR_SOURCE_CONNECTION_INVALID = 51,
68 ERROR_SOURCE_PARENT_MISMATCH = 52,
69 ERROR_SOURCE_BAD_LOOPBACK = 53,
70 ERROR_SOURCE_BUSY = 54,
71 ERROR_SOURCE_TYPE_INVALID = 55,
72 ERROR_PROC_NOT_FOUND = 56,
74 ERROR_PROC_PARAM_INVAL = 58,
75 ERROR_PROC_EXECUTION = 59,
76 ERROR_PROC_ABORT = 60,
81 ERROR_INVALID_OFFSET = 65,
82 ERROR_INVALID_DURATION = 66,
83 ERROR_INVALID_OVERLAP = 67,
85 inline void operator<<= (Rapicorn::Aida::ProtoMsg &__p_, ErrorType e) { __p_ <<= Rapicorn::Aida::EnumValue (e); }
86 inline void operator>>= (Rapicorn::Aida::ProtoReader &__f_, ErrorType &e) { e = ErrorType (__f_.pop_evalue()); }
91 MIDI_SIGNAL_PROGRAM = 1,
92 MIDI_SIGNAL_PRESSURE = 2,
93 MIDI_SIGNAL_PITCH_BEND = 3,
94 MIDI_SIGNAL_VELOCITY = 4,
95 MIDI_SIGNAL_FINE_TUNE = 5,
96 MIDI_SIGNAL_CONTINUOUS_0 = 64,
97 MIDI_SIGNAL_CONTINUOUS_1 = 65,
98 MIDI_SIGNAL_CONTINUOUS_2 = 66,
99 MIDI_SIGNAL_CONTINUOUS_3 = 67,
100 MIDI_SIGNAL_CONTINUOUS_4 = 68,
101 MIDI_SIGNAL_CONTINUOUS_5 = 69,
102 MIDI_SIGNAL_CONTINUOUS_6 = 70,
103 MIDI_SIGNAL_CONTINUOUS_7 = 71,
104 MIDI_SIGNAL_CONTINUOUS_8 = 72,
105 MIDI_SIGNAL_CONTINUOUS_9 = 73,
106 MIDI_SIGNAL_CONTINUOUS_10 = 74,
107 MIDI_SIGNAL_CONTINUOUS_11 = 75,
108 MIDI_SIGNAL_CONTINUOUS_12 = 76,
109 MIDI_SIGNAL_CONTINUOUS_13 = 77,
110 MIDI_SIGNAL_CONTINUOUS_14 = 78,
111 MIDI_SIGNAL_CONTINUOUS_15 = 79,
112 MIDI_SIGNAL_CONTINUOUS_16 = 80,
113 MIDI_SIGNAL_CONTINUOUS_17 = 81,
114 MIDI_SIGNAL_CONTINUOUS_18 = 82,
115 MIDI_SIGNAL_CONTINUOUS_19 = 83,
116 MIDI_SIGNAL_CONTINUOUS_20 = 84,
117 MIDI_SIGNAL_CONTINUOUS_21 = 85,
118 MIDI_SIGNAL_CONTINUOUS_22 = 86,
119 MIDI_SIGNAL_CONTINUOUS_23 = 87,
120 MIDI_SIGNAL_CONTINUOUS_24 = 88,
121 MIDI_SIGNAL_CONTINUOUS_25 = 89,
122 MIDI_SIGNAL_CONTINUOUS_26 = 90,
123 MIDI_SIGNAL_CONTINUOUS_27 = 91,
124 MIDI_SIGNAL_CONTINUOUS_28 = 92,
125 MIDI_SIGNAL_CONTINUOUS_29 = 93,
126 MIDI_SIGNAL_CONTINUOUS_30 = 94,
127 MIDI_SIGNAL_CONTINUOUS_31 = 95,
128 MIDI_SIGNAL_CONSTANT_HIGH = 96,
129 MIDI_SIGNAL_CONSTANT_CENTER = 97,
130 MIDI_SIGNAL_CONSTANT_LOW = 98,
131 MIDI_SIGNAL_CONSTANT_NEGATIVE_CENTER = 99,
132 MIDI_SIGNAL_CONSTANT_NEGATIVE_HIGH = 100,
133 MIDI_SIGNAL_PARAMETER = 101,
134 MIDI_SIGNAL_NON_PARAMETER = 102,
135 MIDI_SIGNAL_CONTROL_0 = 128,
136 MIDI_SIGNAL_CONTROL_1 = 129,
137 MIDI_SIGNAL_CONTROL_2 = 130,
138 MIDI_SIGNAL_CONTROL_3 = 131,
139 MIDI_SIGNAL_CONTROL_4 = 132,
140 MIDI_SIGNAL_CONTROL_5 = 133,
141 MIDI_SIGNAL_CONTROL_6 = 134,
142 MIDI_SIGNAL_CONTROL_7 = 135,
143 MIDI_SIGNAL_CONTROL_8 = 136,
144 MIDI_SIGNAL_CONTROL_9 = 137,
145 MIDI_SIGNAL_CONTROL_10 = 138,
146 MIDI_SIGNAL_CONTROL_11 = 139,
147 MIDI_SIGNAL_CONTROL_12 = 140,
148 MIDI_SIGNAL_CONTROL_13 = 141,
149 MIDI_SIGNAL_CONTROL_14 = 142,
150 MIDI_SIGNAL_CONTROL_15 = 143,
151 MIDI_SIGNAL_CONTROL_16 = 144,
152 MIDI_SIGNAL_CONTROL_17 = 145,
153 MIDI_SIGNAL_CONTROL_18 = 146,
154 MIDI_SIGNAL_CONTROL_19 = 147,
155 MIDI_SIGNAL_CONTROL_20 = 148,
156 MIDI_SIGNAL_CONTROL_21 = 149,
157 MIDI_SIGNAL_CONTROL_22 = 150,
158 MIDI_SIGNAL_CONTROL_23 = 151,
159 MIDI_SIGNAL_CONTROL_24 = 152,
160 MIDI_SIGNAL_CONTROL_25 = 153,
161 MIDI_SIGNAL_CONTROL_26 = 154,
162 MIDI_SIGNAL_CONTROL_27 = 155,
163 MIDI_SIGNAL_CONTROL_28 = 156,
164 MIDI_SIGNAL_CONTROL_29 = 157,
165 MIDI_SIGNAL_CONTROL_30 = 158,
166 MIDI_SIGNAL_CONTROL_31 = 159,
167 MIDI_SIGNAL_CONTROL_32 = 160,
168 MIDI_SIGNAL_CONTROL_33 = 161,
169 MIDI_SIGNAL_CONTROL_34 = 162,
170 MIDI_SIGNAL_CONTROL_35 = 163,
171 MIDI_SIGNAL_CONTROL_36 = 164,
172 MIDI_SIGNAL_CONTROL_37 = 165,
173 MIDI_SIGNAL_CONTROL_38 = 166,
174 MIDI_SIGNAL_CONTROL_39 = 167,
175 MIDI_SIGNAL_CONTROL_40 = 168,
176 MIDI_SIGNAL_CONTROL_41 = 169,
177 MIDI_SIGNAL_CONTROL_42 = 170,
178 MIDI_SIGNAL_CONTROL_43 = 171,
179 MIDI_SIGNAL_CONTROL_44 = 172,
180 MIDI_SIGNAL_CONTROL_45 = 173,
181 MIDI_SIGNAL_CONTROL_46 = 174,
182 MIDI_SIGNAL_CONTROL_47 = 175,
183 MIDI_SIGNAL_CONTROL_48 = 176,
184 MIDI_SIGNAL_CONTROL_49 = 177,
185 MIDI_SIGNAL_CONTROL_50 = 178,
186 MIDI_SIGNAL_CONTROL_51 = 179,
187 MIDI_SIGNAL_CONTROL_52 = 180,
188 MIDI_SIGNAL_CONTROL_53 = 181,
189 MIDI_SIGNAL_CONTROL_54 = 182,
190 MIDI_SIGNAL_CONTROL_55 = 183,
191 MIDI_SIGNAL_CONTROL_56 = 184,
192 MIDI_SIGNAL_CONTROL_57 = 185,
193 MIDI_SIGNAL_CONTROL_58 = 186,
194 MIDI_SIGNAL_CONTROL_59 = 187,
195 MIDI_SIGNAL_CONTROL_60 = 188,
196 MIDI_SIGNAL_CONTROL_61 = 189,
197 MIDI_SIGNAL_CONTROL_62 = 190,
198 MIDI_SIGNAL_CONTROL_63 = 191,
199 MIDI_SIGNAL_CONTROL_64 = 192,
200 MIDI_SIGNAL_CONTROL_65 = 193,
201 MIDI_SIGNAL_CONTROL_66 = 194,
202 MIDI_SIGNAL_CONTROL_67 = 195,
203 MIDI_SIGNAL_CONTROL_68 = 196,
204 MIDI_SIGNAL_CONTROL_69 = 197,
205 MIDI_SIGNAL_CONTROL_70 = 198,
206 MIDI_SIGNAL_CONTROL_71 = 199,
207 MIDI_SIGNAL_CONTROL_72 = 200,
208 MIDI_SIGNAL_CONTROL_73 = 201,
209 MIDI_SIGNAL_CONTROL_74 = 202,
210 MIDI_SIGNAL_CONTROL_75 = 203,
211 MIDI_SIGNAL_CONTROL_76 = 204,
212 MIDI_SIGNAL_CONTROL_77 = 205,
213 MIDI_SIGNAL_CONTROL_78 = 206,
214 MIDI_SIGNAL_CONTROL_79 = 207,
215 MIDI_SIGNAL_CONTROL_80 = 208,
216 MIDI_SIGNAL_CONTROL_81 = 209,
217 MIDI_SIGNAL_CONTROL_82 = 210,
218 MIDI_SIGNAL_CONTROL_83 = 211,
219 MIDI_SIGNAL_CONTROL_84 = 212,
220 MIDI_SIGNAL_CONTROL_85 = 213,
221 MIDI_SIGNAL_CONTROL_86 = 214,
222 MIDI_SIGNAL_CONTROL_87 = 215,
223 MIDI_SIGNAL_CONTROL_88 = 216,
224 MIDI_SIGNAL_CONTROL_89 = 217,
225 MIDI_SIGNAL_CONTROL_90 = 218,
226 MIDI_SIGNAL_CONTROL_91 = 219,
227 MIDI_SIGNAL_CONTROL_92 = 220,
228 MIDI_SIGNAL_CONTROL_93 = 221,
229 MIDI_SIGNAL_CONTROL_94 = 222,
230 MIDI_SIGNAL_CONTROL_95 = 223,
231 MIDI_SIGNAL_CONTROL_96 = 224,
232 MIDI_SIGNAL_CONTROL_97 = 225,
233 MIDI_SIGNAL_CONTROL_98 = 226,
234 MIDI_SIGNAL_CONTROL_99 = 227,
235 MIDI_SIGNAL_CONTROL_100 = 228,
236 MIDI_SIGNAL_CONTROL_101 = 229,
237 MIDI_SIGNAL_CONTROL_102 = 230,
238 MIDI_SIGNAL_CONTROL_103 = 231,
239 MIDI_SIGNAL_CONTROL_104 = 232,
240 MIDI_SIGNAL_CONTROL_105 = 233,
241 MIDI_SIGNAL_CONTROL_106 = 234,
242 MIDI_SIGNAL_CONTROL_107 = 235,
243 MIDI_SIGNAL_CONTROL_108 = 236,
244 MIDI_SIGNAL_CONTROL_109 = 237,
245 MIDI_SIGNAL_CONTROL_110 = 238,
246 MIDI_SIGNAL_CONTROL_111 = 239,
247 MIDI_SIGNAL_CONTROL_112 = 240,
248 MIDI_SIGNAL_CONTROL_113 = 241,
249 MIDI_SIGNAL_CONTROL_114 = 242,
250 MIDI_SIGNAL_CONTROL_115 = 243,
251 MIDI_SIGNAL_CONTROL_116 = 244,
252 MIDI_SIGNAL_CONTROL_117 = 245,
253 MIDI_SIGNAL_CONTROL_118 = 246,
254 MIDI_SIGNAL_CONTROL_119 = 247,
255 MIDI_SIGNAL_CONTROL_120 = 248,
256 MIDI_SIGNAL_CONTROL_121 = 249,
257 MIDI_SIGNAL_CONTROL_122 = 250,
258 MIDI_SIGNAL_CONTROL_123 = 251,
259 MIDI_SIGNAL_CONTROL_124 = 252,
260 MIDI_SIGNAL_CONTROL_125 = 253,
261 MIDI_SIGNAL_CONTROL_126 = 254,
262 MIDI_SIGNAL_CONTROL_127 = 255,
264 inline void operator<<= (Rapicorn::Aida::ProtoMsg &__p_, MidiSignalType e) { __p_ <<= Rapicorn::Aida::EnumValue (e); }
265 inline void operator>>= (Rapicorn::Aida::ProtoReader &__f_, MidiSignalType &e) { e = MidiSignalType (__f_.pop_evalue()); }
275 inline void operator<<= (Rapicorn::Aida::ProtoMsg &__p_,
UserMessageType e) { __p_ <<= Rapicorn::Aida::EnumValue (e); }
283 template<> EnumInfo enum_info<Bse::ErrorType> ();
284 template<> EnumInfo enum_info<Bse::MidiSignalType> ();
285 template<> EnumInfo enum_info<Bse::UserMessageType> ();
289 #endif // __ENUMHH__BSE_IDL__
298 class TestObjectHandle :
public virtual Rapicorn::Aida::RemoteHandle
301 typedef Rapicorn::Aida::Connector<TestObjectHandle, void (const std::string &msg)> __Aida_Signal__echo_reply;
303 static TestObjectHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
304 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
307 virtual ~TestObjectHandle ()
override;
308 template<
class RemoteHandle>
309 static TestObjectHandle down_cast (RemoteHandle smh) {
return smh == NULL ? TestObjectHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
310 explicit TestObjectHandle ();
311 __Aida_Signal__echo_reply sig_echo_reply () {
return __Aida_Signal__echo_reply (*
this, &TestObjectHandle::__aida_connect__echo_reply); }
313 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
329 std::string __aida_type_name__ ()
const {
return "Bse::UserMessage"; }
331 Rapicorn::Aida::Any __aida_to_any__ () {
return Rapicorn::any_from_visitable (*
this); }
332 void __aida_from_any__ (
const Rapicorn::Aida::Any &any) {
return Rapicorn::any_to_visitable (any, *
this); }
334 bool operator!= (
const ClnT_UserMessage &other)
const {
return !operator== (other); }
335 template<
class Visitor>
void __accept__ (Visitor &_visitor_)
337 _visitor_ (type,
"type");
338 _visitor_ (title,
"title");
339 _visitor_ (text1,
"text1");
340 _visitor_ (text2,
"text2");
341 _visitor_ (text3,
"text3");
342 _visitor_ (label,
"label");
359 inline ClnT_SongTiming () { tick = 0; bpm = 0; numerator = 0; denominator = 0; tpqn = 0; tpt = 0; stamp_ticks = 0; }
360 std::string __aida_type_name__ ()
const {
return "Bse::SongTiming"; }
362 Rapicorn::Aida::Any __aida_to_any__ () {
return Rapicorn::any_from_visitable (*
this); }
363 void __aida_from_any__ (
const Rapicorn::Aida::Any &any) {
return Rapicorn::any_to_visitable (any, *
this); }
365 bool operator!= (
const ClnT_SongTiming &other)
const {
return !operator== (other); }
366 template<
class Visitor>
void __accept__ (Visitor &_visitor_)
368 _visitor_ (tick,
"tick");
369 _visitor_ (bpm,
"bpm");
370 _visitor_ (numerator,
"numerator");
371 _visitor_ (denominator,
"denominator");
372 _visitor_ (tpqn,
"tpqn");
373 _visitor_ (tpt,
"tpt");
374 _visitor_ (stamp_ticks,
"stamp_ticks");
386 class ObjectHandle :
public virtual Rapicorn::Aida::RemoteHandle
389 static ObjectHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
390 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
394 template<
class RemoteHandle>
395 static ObjectHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
ObjectHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
396 explicit ObjectHandle ();
399 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
409 static ItemHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
410 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
414 template<
class RemoteHandle>
415 static ItemHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
ItemHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
418 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
420 this->ObjectHandle::__accept_accessor__ (__visitor_);
437 inline ClnT_PartNote () {
id = 0; channel = 0; tick = 0; duration = 0; note = 0; fine_tune = 0; velocity = 0; selected = 0; }
438 std::string __aida_type_name__ ()
const {
return "Bse::PartNote"; }
440 Rapicorn::Aida::Any __aida_to_any__ () {
return Rapicorn::any_from_visitable (*
this); }
441 void __aida_from_any__ (
const Rapicorn::Aida::Any &any) {
return Rapicorn::any_to_visitable (any, *
this); }
443 bool operator!= (
const ClnT_PartNote &other)
const {
return !operator== (other); }
444 template<
class Visitor>
void __accept__ (Visitor &_visitor_)
446 _visitor_ (
id,
"id");
447 _visitor_ (channel,
"channel");
448 _visitor_ (tick,
"tick");
449 _visitor_ (duration,
"duration");
450 _visitor_ (note,
"note");
451 _visitor_ (fine_tune,
"fine_tune");
452 _visitor_ (velocity,
"velocity");
453 _visitor_ (selected,
"selected");
456 void operator<<= (Rapicorn::Aida::ProtoMsg&,
const ClnT_PartNote&);
457 void operator>>= (Rapicorn::Aida::ProtoReader&,
ClnT_PartNote&);
462 reference append_back()
464 std::string __aida_type_name__ ()
const {
return "Bse::PartNoteSeq"; }
466 Rapicorn::Aida::Any __aida_to_any__ () {
return Rapicorn::any_from_sequence (*
this); }
467 void __aida_from_any__ (
const Rapicorn::Aida::Any &any) {
return Rapicorn::any_to_sequence (any, *
this); }
477 MidiSignalType control_type;
481 inline ClnT_PartControl () {
id = 0; tick = 0; control_type = MidiSignalType (0); value = 0; selected = 0; }
482 std::string __aida_type_name__ ()
const {
return "Bse::PartControl"; }
484 Rapicorn::Aida::Any __aida_to_any__ () {
return Rapicorn::any_from_visitable (*
this); }
485 void __aida_from_any__ (
const Rapicorn::Aida::Any &any) {
return Rapicorn::any_to_visitable (any, *
this); }
487 bool operator!= (
const ClnT_PartControl &other)
const {
return !operator== (other); }
488 template<
class Visitor>
void __accept__ (Visitor &_visitor_)
490 _visitor_ (
id,
"id");
491 _visitor_ (tick,
"tick");
492 _visitor_ (control_type,
"control_type");
493 _visitor_ (value,
"value");
494 _visitor_ (selected,
"selected");
503 reference append_back()
505 std::string __aida_type_name__ ()
const {
return "Bse::PartControlSeq"; }
507 Rapicorn::Aida::Any __aida_to_any__ () {
return Rapicorn::any_from_sequence (*
this); }
508 void __aida_from_any__ (
const Rapicorn::Aida::Any &any) {
return Rapicorn::any_to_sequence (any, *
this); }
518 static PartHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
519 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
523 template<
class RemoteHandle>
524 static PartHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
PartHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
525 explicit PartHandle ();
529 MidiSignalType control_type);
533 MidiSignalType control_type);
535 MidiSignalType control_type);
541 MidiSignalType control_type,
551 MidiSignalType control_type,
577 MidiSignalType control_type);
585 MidiSignalType control_type);
593 MidiSignalType control_type);
606 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
608 this->ItemHandle::__accept_accessor__ (__visitor_);
618 static SourceHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
619 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
623 template<
class RemoteHandle>
624 static SourceHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
SourceHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
628 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
630 this->ItemHandle::__accept_accessor__ (__visitor_);
640 static ContextMergerHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
641 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
645 template<
class RemoteHandle>
648 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
650 this->SourceHandle::__accept_accessor__ (__visitor_);
660 static ContainerHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
661 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
665 template<
class RemoteHandle>
669 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
671 this->SourceHandle::__accept_accessor__ (__visitor_);
681 static SuperHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
682 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
686 template<
class RemoteHandle>
687 static SuperHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
SuperHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
689 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
691 this->ContainerHandle::__accept_accessor__ (__visitor_);
701 static SNetHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
702 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
706 template<
class RemoteHandle>
707 static SNetHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
SNetHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
710 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
712 this->SuperHandle::__accept_accessor__ (__visitor_);
722 static CSynthHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
723 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
727 template<
class RemoteHandle>
728 static CSynthHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
CSynthHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
730 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
732 this->SNetHandle::__accept_accessor__ (__visitor_);
742 static SubSynthHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
743 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
747 template<
class RemoteHandle>
748 static SubSynthHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
SubSynthHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
750 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
752 this->SourceHandle::__accept_accessor__ (__visitor_);
762 static TrackHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
763 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
767 template<
class RemoteHandle>
768 static TrackHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
TrackHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
778 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
780 this->ContextMergerHandle::__accept_accessor__ (__visitor_);
788 Rapicorn::Aida::RemoteMember<TrackHandle> track;
790 Rapicorn::Aida::RemoteMember<PartHandle> part;
794 std::string __aida_type_name__ ()
const {
return "Bse::PartLink"; }
796 Rapicorn::Aida::Any __aida_to_any__ () {
return Rapicorn::any_from_visitable (*
this); }
797 void __aida_from_any__ (
const Rapicorn::Aida::Any &any) {
return Rapicorn::any_to_visitable (any, *
this); }
799 bool operator!= (
const ClnT_PartLink &other)
const {
return !operator== (other); }
800 template<
class Visitor>
void __accept__ (Visitor &_visitor_)
802 _visitor_ (track,
"track");
803 _visitor_ (tick,
"tick");
804 _visitor_ (part,
"part");
805 _visitor_ (duration,
"duration");
808 void operator<<= (Rapicorn::Aida::ProtoMsg&,
const ClnT_PartLink&);
809 void operator>>= (Rapicorn::Aida::ProtoReader&,
ClnT_PartLink&);
814 reference append_back()
816 std::string __aida_type_name__ ()
const {
return "Bse::PartLinkSeq"; }
818 Rapicorn::Aida::Any __aida_to_any__ () {
return Rapicorn::any_from_sequence (*
this); }
819 void __aida_from_any__ (
const Rapicorn::Aida::Any &any) {
return Rapicorn::any_to_sequence (any, *
this); }
829 static BusHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
830 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
834 template<
class RemoteHandle>
835 static BusHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
BusHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
836 explicit BusHandle ();
838 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
840 this->SubSynthHandle::__accept_accessor__ (__visitor_);
850 static SongHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
851 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
855 template<
class RemoteHandle>
856 static SongHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
SongHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
868 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
871 this->SNetHandle::__accept_accessor__ (__visitor_);
881 static EditableSampleHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
882 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
886 template<
class RemoteHandle>
889 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
891 this->ItemHandle::__accept_accessor__ (__visitor_);
901 static WaveHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
902 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
906 template<
class RemoteHandle>
907 static WaveHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
WaveHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
909 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
911 this->SourceHandle::__accept_accessor__ (__visitor_);
921 static WaveRepoHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
922 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
926 template<
class RemoteHandle>
927 static WaveRepoHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
WaveRepoHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
929 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
931 this->SuperHandle::__accept_accessor__ (__visitor_);
941 static MidiNotifierHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
942 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
946 template<
class RemoteHandle>
949 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
951 this->ItemHandle::__accept_accessor__ (__visitor_);
961 static MidiSynthHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
962 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
966 template<
class RemoteHandle>
969 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
971 this->SNetHandle::__accept_accessor__ (__visitor_);
981 static ProjectHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
982 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
986 template<
class RemoteHandle>
987 static ProjectHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
ProjectHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
1009 double control_value);
1012 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
1014 this->ContainerHandle::__accept_accessor__ (__visitor_);
1024 static PcmWriterHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
1025 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
1029 template<
class RemoteHandle>
1032 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
1034 this->ItemHandle::__accept_accessor__ (__visitor_);
1044 typedef Rapicorn::Aida::Connector<ServerHandle, void (const ClnT_UserMessage &umsg)> __Aida_Signal__user_message;
1046 static ServerHandle __aida_cast__ (Rapicorn::Aida::RemoteHandle&,
const Rapicorn::Aida::TypeHashList&);
1047 static const Rapicorn::Aida::TypeHash& __aida_typeid__();
1051 template<
class RemoteHandle>
1052 static ServerHandle down_cast (RemoteHandle smh) {
return smh == NULL ?
ServerHandle() : __aida_cast__ (smh, smh.__aida_typelist__()); }
1054 __Aida_Signal__user_message sig_user_message () {
return __Aida_Signal__user_message (*
this, &ServerHandle::__aida_connect__user_message); }
1080 template<
class Visitor>
void __accept_accessor__ (Visitor &__visitor_)
1082 this->ObjectHandle::__accept_accessor__ (__visitor_);
1089 #ifndef __BSE_IDL_ALIASES__
1090 #define __BSE_IDL_ALIASES__ 1
1092 #if __BSE_IDL_ALIASES__ == 1
1094 typedef ClnT_UserMessage UserMessage;
1095 typedef ClnT_SongTiming SongTiming;
1096 typedef ClnT_PartNote PartNote;
1097 typedef ClnT_PartNoteSeq PartNoteSeq;
1098 typedef ClnT_PartControl PartControl;
1099 typedef ClnT_PartControlSeq PartControlSeq;
1100 typedef ClnT_PartLink PartLink;
1101 typedef ClnT_PartLinkSeq PartLinkSeq;
1103 #endif // __BSE_IDL_ALIASES__
ClnT_PartLinkSeq list_links()
See Part::list_links()
void inject_midi_control(int midi_channel, int midi_control, double control_value)
See Project::inject_midi_control()
See also the corresponding IDL class Source.
Definition: bseclientapi.hh:616
std::string get_custom_effect_dir()
See Server::get_custom_effect_dir()
MidiNotifierHandle MidiNotifierH
Convenience alias for the IDL type MidiNotifier.
Definition: bseclientapi.hh:954
std::string get_version()
See Server::get_version()
void save_preferences()
See Server::save_preferences()
ItemHandle common_ancestor(ItemHandle &other)
See Item::common_ancestor()
std::string get_sample_path()
See Server::get_sample_path()
WaveRepoHandle WaveRepoH
Convenience alias for the IDL type WaveRepo.
Definition: bseclientapi.hh:934
SourceHandle get_output_source()
See Track::get_output_source()
Definition: bseclientapi.hh:459
void queue_controls(int tick, int duration)
See Part::queue_controls()
ClnT_SongTiming get_timing(int tick)
See Part::get_timing()
ObjectHandle ObjectH
Convenience alias for the IDL type Object.
Definition: bseclientapi.hh:402
double bpm() const
See Song::bpm.
Definition: bseclientapi.hh:811
std::string get_demo_path()
See Server::get_demo_path()
bool is_dirty()
See Project::is_dirty()
void remove_tick(int tick)
See Track::remove_tick()
int insert_control(int tick, MidiSignalType control_type, double value)
See Part::insert_control()
bool is_event_selected(int id)
See Part::is_event_selected()
TrackHandle create_track()
See Song::create_track()
See also the corresponding IDL class Part.
Definition: bseclientapi.hh:516
ProjectHandle ProjectH
Convenience alias for the IDL type Project.
Definition: bseclientapi.hh:1017
The Bse namespace contains all functions of the synthesis engine.
Definition: bstbseutils.cc:67
void remove_bus(BusHandle &bus)
See Song::remove_bus()
PartHandle PartH
Convenience alias for the IDL type Part.
Definition: bseclientapi.hh:611
void register_core_plugins()
See Server::register_core_plugins()
std::string debug_name()
See Object::debug_name()
Definition: bstserverapi.cc:544
int get_min_note()
See Part::get_min_note()
int undo_depth()
See Project::undo_depth()
int redo_depth()
See Project::redo_depth()
Definition: bseclientapi.hh:472
See also the corresponding IDL class TestObject.
Definition: bseclientapi.hh:299
See also the corresponding IDL class MidiSynth.
Definition: bseclientapi.hh:959
bool is_playing()
See Project::is_playing()
std::string get_script_path()
See Server::get_script_path()
ErrorType restore_from_file(const std::string &file_name)
See Project::restore_from_file()
void stop_playback()
See Project::stop_playback()
ErrorType import_midi_file(const std::string &file_name)
See Project::import_midi_file()
void start_playback()
See Project::start_playback()
ErrorType change_control(int id, int tick, MidiSignalType control_type, double value)
See Part::change_control()
bool can_load(const std::string &file_name)
See Server::can_load()
See also the corresponding IDL class Container.
Definition: bseclientapi.hh:658
ClnT_SongTiming get_timing(int tick)
See Track::get_timing()
bool supports_user_synths()
See SNet::supports_user_synths()
TestObjectHandle get_test_object()
See Server::get_test_object()
std::string get_ladspa_path()
See Server::get_ladspa_path()
void clean_dirty()
See Project::clean_dirty()
ClnT_PartNoteSeq check_overlap(int tick, int duration, int note)
See Part::check_overlap()
int get_max_note()
See Part::get_max_note()
ErrorType play()
See Project::play()
See also the corresponding IDL class Item.
Definition: bseclientapi.hh:407
ClnT_PartNote resize(ClnT_PartNote...args)
See also the corresponding IDL class EditableSample.
Definition: bseclientapi.hh:879
void change_name(const std::string &name)
See Project::change_name()
See also the corresponding IDL class Project.
Definition: bseclientapi.hh:979
Indicate a message about an error condition.
Definition: bseapi.idl:305
ErrorType delete_event(int id)
See Part::delete_event()
ErrorType activate()
See Project::activate()
ObjectHandle from_proxy(int64_t proxyid)
See Server::from_proxy()
MidiSynthHandle MidiSynthH
Convenience alias for the IDL type MidiSynth.
Definition: bseclientapi.hh:974
ItemHandle lookup_item(const std::string &uname)
See Container::lookup_item()
EditableSampleHandle EditableSampleH
Convenience alias for the IDL type EditableSample.
Definition: bseclientapi.hh:894
See also the corresponding IDL class Bus.
Definition: bseclientapi.hh:827
int insert_part(int tick, PartHandle &part)
See Track::insert_part()
void select_event(int id)
See Part::select_event()
BusHandle create_bus()
See Song::create_bus()
void select_notes_exclusive(int tick, int duration, int min_note, int max_note)
See Part::select_notes_exclusive()
void auto_deactivate(int msec_delay)
See Project::auto_deactivate()
void destroy_project(ProjectHandle &project)
See Server::destroy_project()
SubSynthHandle SubSynthH
Convenience alias for the IDL type SubSynth.
Definition: bseclientapi.hh:755
std::string get_effect_path()
See Server::get_effect_path()
Indicate an informational message.
Definition: bseapi.idl:307
ErrorType ensure_output()
See Track::ensure_output()
int get_last_tick()
See Track::get_last_tick()
void deselect_notes(int tick, int duration, int min_note, int max_note)
See Part::deselect_notes()
Definition: bseclientapi.hh:318
void select_controls_exclusive(int tick, int duration, MidiSignalType control_type)
See Part::select_controls_exclusive()
ProjectHandle create_project(const std::string &project_name)
See Server::create_project()
void register_scripts()
See Server::register_scripts()
SongHandle SongH
Convenience alias for the IDL type Song.
Definition: bseclientapi.hh:874
int insert_note_auto(int tick, int duration, int note, int fine_tune, double velocity)
See Part::insert_note_auto()
Definition: bseclientapi.hh:425
TestObjectHandle TestObjectH
Convenience alias for the IDL type TestObject.
Definition: bseclientapi.hh:316
See also the corresponding IDL class Server.
Definition: bseclientapi.hh:1042
bool is_active()
See Project::is_active()
ContextMergerHandle ContextMergerH
Convenience alias for the IDL type ContextMerger.
Definition: bseclientapi.hh:653
bool preferences_locked()
See Server::preferences_locked()
ClnT_SongTiming get_timing(int tick)
See Song::get_timing()
int echo_test(const std::string &msg)
See TestObject::echo_test()
Definition: bseclientapi.cc:73
int n_scripts()
See Server::n_scripts()
void deselect_event(int id)
See Part::deselect_event()
SuperHandle SuperH
Convenience alias for the IDL type Super.
Definition: bseclientapi.hh:694
ClnT_PartNoteSeq list_notes_within(int channel, int tick, int duration)
See Part::list_notes_within()
See also the corresponding IDL class Song.
Definition: bseclientapi.hh:848
ServerHandle ServerH
Convenience alias for the IDL type Server.
Definition: bseclientapi.hh:1085
PartHandle get_part(int tick)
See Track::get_part()
See also the corresponding IDL class CSynth.
Definition: bseclientapi.hh:720
std::string get_mp3_version()
See Server::get_mp3_version()
int insert_note(int channel, int tick, int duration, int note, int fine_tune, double velocity)
See Part::insert_note()
ItemHandle ItemH
Convenience alias for the IDL type Item.
Definition: bseclientapi.hh:423
See also the corresponding IDL class SubSynth.
Definition: bseclientapi.hh:740
ClnT_PartControlSeq list_controls(int tick, int duration, MidiSignalType control_type)
See Part::list_controls()
SourceHandle SourceH
Convenience alias for the IDL type Source.
Definition: bseclientapi.hh:633
ContainerHandle ContainerH
Convenience alias for the IDL type Container.
Definition: bseclientapi.hh:674
ClnT_PartNote size(ClnT_PartNote...args)
void queue_notes(int tick, int duration, int min_note, int max_note)
See Part::queue_notes()
UserMessageType
Definition: bseapi.idl:304
See also the corresponding IDL class Wave.
Definition: bseclientapi.hh:899
Indicate a debugging message (usually insignificant).
Definition: bseapi.idl:308
ErrorType ensure_output()
See Bus::ensure_output()
int64_t proxy_id()
See Object::proxy_id()
std::string get_instrument_path()
See Server::get_instrument_path()
See also the corresponding IDL class SNet.
Definition: bseclientapi.hh:699
ClnT_PartNoteSeq get_notes(int tick, int note)
See Part::get_notes()
Indicate a message about a possibly harmful condition.
Definition: bseapi.idl:306
void remove_track(TrackHandle &track)
See Song::remove_track()
Definition: bseclientapi.hh:348
See also the corresponding IDL class Track.
Definition: bseclientapi.hh:760
ClnT_PartNote back(ClnT_PartNote...args)
See also the corresponding IDL class MidiNotifier.
Definition: bseclientapi.hh:939
CSynthHandle CSynthH
Convenience alias for the IDL type CSynth.
Definition: bseclientapi.hh:735
ErrorType change_note(int id, int tick, int duration, int note, int fine_tune, double velocity)
See Part::change_note()
std::string get_vorbis_version()
See Server::get_vorbis_version()
See also the corresponding IDL class PcmWriter.
Definition: bseclientapi.hh:1022
Definition: bseclientapi.hh:785
WaveHandle WaveH
Convenience alias for the IDL type Wave.
Definition: bseclientapi.hh:914
Definition: bseclientapi.hh:500
void redo()
See Project::redo()
void deactivate()
See Project::deactivate()
void select_controls(int tick, int duration, MidiSignalType control_type)
See Part::select_controls()
void remove_part(PartHandle &part)
See Song::remove_part()
void start_recording(const std::string &wave_file, double n_seconds)
See Server::start_recording()
TrackHandle TrackH
Convenience alias for the IDL type Track.
Definition: bseclientapi.hh:783
ClnT_PartNoteSeq list_selected_notes()
See Part::list_selected_notes()
std::string get_plugin_path()
See Server::get_plugin_path()
TrackHandle find_any_track_for_part(PartHandle &part)
See Song::find_any_track_for_part()
void register_ladspa_plugins()
See Server::register_ladspa_plugins()
ClnT_PartControlSeq get_controls(int tick, MidiSignalType control_type)
See Part::get_controls()
void select_notes(int tick, int duration, int min_note, int max_note)
See Part::select_notes()
SourceHandle ichannel_get_osource(int input_channel, int input_joint)
See Source::ichannel_get_osource()
PcmWriterHandle PcmWriterH
Convenience alias for the IDL type PcmWriter.
Definition: bseclientapi.hh:1037
See also the corresponding IDL class Super.
Definition: bseclientapi.hh:679
ClnT_PartControlSeq get_channel_controls(int channel, int tick, int duration, MidiSignalType control_type)
See Part::get_channel_controls()
void undo()
See Project::undo()
void stop()
See Project::stop()
See also the corresponding IDL class Object.
Definition: bseclientapi.hh:387
void clear_undo()
See Project::clear_undo()
SNetHandle SNetH
Convenience alias for the IDL type SNet.
Definition: bseclientapi.hh:715
BusHandle BusH
Convenience alias for the IDL type Bus.
Definition: bseclientapi.hh:843
ClnT_PartControlSeq list_selected_controls(MidiSignalType control_type)
See Part::list_selected_controls()
void deselect_controls(int tick, int duration, MidiSignalType control_type)
See Part::deselect_controls()
ClnT_PartNoteSeq list_notes_crossing(int tick, int duration)
See Part::list_notes_crossing()
PartHandle create_part()
See Song::create_part()
See also the corresponding IDL class WaveRepo.
Definition: bseclientapi.hh:919
bool can_play()
See Project::can_play()
std::string get_custom_instrument_dir()
See Server::get_custom_instrument_dir()
See also the corresponding IDL class ContextMerger.
Definition: bseclientapi.hh:638