213 |
//from LSCP server removing engines and channels from underneath |
//from LSCP server removing engines and channels from underneath |
214 |
static Mutex RTNotifyMutex; |
static Mutex RTNotifyMutex; |
215 |
|
|
216 |
class LscpChannelCountListener : public ChannelCountListener { |
class EventHandler : public ChannelCountListener, public AudioDeviceCountListener, |
217 |
public: |
public MidiDeviceCountListener, public MidiInstrumentCountListener, |
218 |
|
public MidiInstrumentInfoListener, public MidiInstrumentMapCountListener, |
219 |
|
public MidiInstrumentMapInfoListener, public FxSendCountListener, |
220 |
|
public VoiceCountListener, public StreamCountListener, |
221 |
|
public BufferFillListener, public TotalVoiceCountListener { |
222 |
|
|
223 |
|
public: |
224 |
/** |
/** |
225 |
* Invoked when the number of sampler channels has changed. |
* Invoked when the number of sampler channels has changed. |
226 |
* @param NewCount The new number of sampler channels. |
* @param NewCount The new number of sampler channels. |
227 |
*/ |
*/ |
228 |
virtual void ChannelCountChanged(int NewCount); |
virtual void ChannelCountChanged(int NewCount); |
|
} channelCountListener; |
|
229 |
|
|
|
class LscpAudioDeviceCountListener : public AudioDeviceCountListener { |
|
|
public: |
|
230 |
/** |
/** |
231 |
* Invoked when the number of audio output devices has changed. |
* Invoked when the number of audio output devices has changed. |
232 |
* @param NewCount The new number of audio output devices. |
* @param NewCount The new number of audio output devices. |
233 |
*/ |
*/ |
234 |
virtual void AudioDeviceCountChanged(int NewCount); |
virtual void AudioDeviceCountChanged(int NewCount); |
235 |
} audioDeviceCountListener; |
|
|
|
|
|
class LscpMidiDeviceCountListener : public MidiDeviceCountListener { |
|
|
public: |
|
236 |
/** |
/** |
237 |
* Invoked when the number of MIDI input devices has changed. |
* Invoked when the number of MIDI input devices has changed. |
238 |
* @param NewCount The new number of MIDI input devices. |
* @param NewCount The new number of MIDI input devices. |
239 |
*/ |
*/ |
240 |
virtual void MidiDeviceCountChanged(int NewCount); |
virtual void MidiDeviceCountChanged(int NewCount); |
241 |
} midiDeviceCountListener; |
|
|
|
|
|
class LscpMidiInstrumentCountListener : public MidiInstrumentCountListener { |
|
|
public: |
|
242 |
/** |
/** |
243 |
* Invoked when the number of MIDI instruments has changed. |
* Invoked when the number of MIDI instruments has changed. |
244 |
* @param MapId The numerical ID of the MIDI instrument map. |
* @param MapId The numerical ID of the MIDI instrument map. |
245 |
* @param NewCount The new number of MIDI instruments. |
* @param NewCount The new number of MIDI instruments. |
246 |
*/ |
*/ |
247 |
virtual void MidiInstrumentCountChanged(int MapId, int NewCount); |
virtual void MidiInstrumentCountChanged(int MapId, int NewCount); |
248 |
} midiInstrumentCountListener; |
|
|
|
|
|
class LscpMidiInstrumentInfoListener : public MidiInstrumentInfoListener { |
|
|
public: |
|
249 |
/** |
/** |
250 |
* Invoked when a MIDI instrument in a MIDI instrument map is changed. |
* Invoked when a MIDI instrument in a MIDI instrument map is changed. |
251 |
* @param MapId The numerical ID of the MIDI instrument map. |
* @param MapId The numerical ID of the MIDI instrument map. |
253 |
* @param Program The MIDI program number of the instrument. |
* @param Program The MIDI program number of the instrument. |
254 |
*/ |
*/ |
255 |
virtual void MidiInstrumentInfoChanged(int MapId, int Bank, int Program); |
virtual void MidiInstrumentInfoChanged(int MapId, int Bank, int Program); |
256 |
} midiInstrumentInfoListener; |
|
257 |
|
/** |
|
class LscpMidiInstrumentMapCountListener : public MidiInstrumentMapCountListener { |
|
|
public: |
|
|
/** |
|
258 |
* Invoked when the number of MIDI instrument maps has changed. |
* Invoked when the number of MIDI instrument maps has changed. |
259 |
* @param NewCount The new number of MIDI instruments. |
* @param NewCount The new number of MIDI instruments. |
260 |
*/ |
*/ |
261 |
virtual void MidiInstrumentMapCountChanged(int NewCount); |
virtual void MidiInstrumentMapCountChanged(int NewCount); |
|
} midiInstrumentMapCountListener; |
|
262 |
|
|
|
class LscpMidiInstrumentMapInfoListener : public MidiInstrumentMapInfoListener { |
|
|
public: |
|
263 |
/** |
/** |
264 |
* Invoked when the settings of a MIDI instrument map are changed. |
* Invoked when the settings of a MIDI instrument map are changed. |
265 |
* @param MapId The numerical ID of the MIDI instrument map. |
* @param MapId The numerical ID of the MIDI instrument map. |
266 |
*/ |
*/ |
267 |
virtual void MidiInstrumentMapInfoChanged(int MapId); |
virtual void MidiInstrumentMapInfoChanged(int MapId); |
268 |
} midiInstrumentMapInfoListener; |
|
|
|
|
|
class LscpFxSendCountListener : public FxSendCountListener { |
|
|
public: |
|
269 |
/** |
/** |
270 |
* Invoked when the number of effect sends |
* Invoked when the number of effect sends |
271 |
* on the specified sampler channel has changed. |
* on the specified sampler channel has changed. |
273 |
* @param NewCount The new number of effect sends. |
* @param NewCount The new number of effect sends. |
274 |
*/ |
*/ |
275 |
virtual void FxSendCountChanged(int ChannelId, int NewCount); |
virtual void FxSendCountChanged(int ChannelId, int NewCount); |
276 |
} fxSendCountListener; |
|
|
|
|
|
class LscpVoiceCountListener : public VoiceCountListener { |
|
|
public: |
|
277 |
/** |
/** |
278 |
* Invoked when the number of active voices |
* Invoked when the number of active voices |
279 |
* on the specified sampler channel has changed. |
* on the specified sampler channel has changed. |
281 |
* @param NewCount The new number of active voices. |
* @param NewCount The new number of active voices. |
282 |
*/ |
*/ |
283 |
virtual void VoiceCountChanged(int ChannelId, int NewCount); |
virtual void VoiceCountChanged(int ChannelId, int NewCount); |
|
} voiceCountListener; |
|
284 |
|
|
|
class LscpStreamCountListener : public StreamCountListener { |
|
|
public: |
|
285 |
/** |
/** |
286 |
* Invoked when the number of active disk streams |
* Invoked when the number of active disk streams |
287 |
* on the specified sampler channel has changed. |
* on the specified sampler channel has changed. |
289 |
* @param NewCount The new number of active disk streams. |
* @param NewCount The new number of active disk streams. |
290 |
*/ |
*/ |
291 |
virtual void StreamCountChanged(int ChannelId, int NewCount); |
virtual void StreamCountChanged(int ChannelId, int NewCount); |
|
} streamCountListener; |
|
292 |
|
|
|
class LscpBufferFillListener : public BufferFillListener { |
|
|
public: |
|
293 |
/** |
/** |
294 |
* Invoked when the fill state of the disk stream |
* Invoked when the fill state of the disk stream |
295 |
* buffers on the specified sampler channel is changed. |
* buffers on the specified sampler channel is changed. |
297 |
* @param FillData The buffer fill data for the specified sampler channel. |
* @param FillData The buffer fill data for the specified sampler channel. |
298 |
*/ |
*/ |
299 |
virtual void BufferFillChanged(int ChannelId, String FillData); |
virtual void BufferFillChanged(int ChannelId, String FillData); |
|
} bufferFillListener; |
|
300 |
|
|
|
class LscpTotalVoiceCountListener : public TotalVoiceCountListener { |
|
|
public: |
|
301 |
/** |
/** |
302 |
* Invoked when the total number of active voices is changed. |
* Invoked when the total number of active voices is changed. |
303 |
* @param NewCount The new number of active voices. |
* @param NewCount The new number of active voices. |
304 |
*/ |
*/ |
305 |
virtual void TotalVoiceCountChanged(int NewCount); |
virtual void TotalVoiceCountChanged(int NewCount); |
306 |
} totalVoiceCountListener; |
} eventHandler; |
307 |
}; |
}; |
308 |
|
|
309 |
#endif // __LSCPSERVER_H_ |
#endif // __LSCPSERVER_H_ |