3 |
* LinuxSampler - modular, streaming capable sampler * |
* LinuxSampler - modular, streaming capable sampler * |
4 |
* * |
* * |
5 |
* Copyright (C) 2003, 2004 by Benno Senoner and Christian Schoenebeck * |
* Copyright (C) 2003, 2004 by Benno Senoner and Christian Schoenebeck * |
6 |
* Copyright (C) 2005 - 2008 Christian Schoenebeck * |
* Copyright (C) 2005 - 2009 Christian Schoenebeck * |
7 |
* * |
* * |
8 |
* This program is free software; you can redistribute it and/or modify * |
* This program is free software; you can redistribute it and/or modify * |
9 |
* it under the terms of the GNU General Public License as published by * |
* it under the terms of the GNU General Public License as published by * |
62 |
virtual void SendPitchbend(int Pitch, int32_t FragmentPos); |
virtual void SendPitchbend(int Pitch, int32_t FragmentPos); |
63 |
virtual void SendControlChange(uint8_t Controller, uint8_t Value); |
virtual void SendControlChange(uint8_t Controller, uint8_t Value); |
64 |
virtual void SendControlChange(uint8_t Controller, uint8_t Value, int32_t FragmentPos); |
virtual void SendControlChange(uint8_t Controller, uint8_t Value, int32_t FragmentPos); |
65 |
|
virtual void SendProgramChange(uint8_t Program); |
66 |
virtual bool StatusChanged(bool bNewStatus = false); |
virtual bool StatusChanged(bool bNewStatus = false); |
67 |
virtual float Volume(); |
virtual float Volume(); |
68 |
virtual void Volume(float f); |
virtual void Volume(float f); |
69 |
|
virtual float Pan(); |
70 |
|
virtual void Pan(float f); |
71 |
virtual uint Channels(); |
virtual uint Channels(); |
72 |
virtual void Connect(AudioOutputDevice* pAudioOut); |
virtual void Connect(AudioOutputDevice* pAudioOut); |
73 |
virtual void DisconnectAudioOutputDevice(); |
virtual void DisconnectAudioOutputDevice(); |
132 |
bool bStatusChanged; ///< true in case an engine parameter has changed (e.g. new instrument, another volumet) |
bool bStatusChanged; ///< true in case an engine parameter has changed (e.g. new instrument, another volumet) |
133 |
std::vector<FxSend*> fxSends; |
std::vector<FxSend*> fxSends; |
134 |
int GlobalTranspose; ///< amount of semi tones all notes should be transposed |
int GlobalTranspose; ///< amount of semi tones all notes should be transposed |
135 |
|
int iLastPanRequest; ///< just for the return value of Pan(), so we don't have to make an injective function |
136 |
|
|
137 |
/// Command used by the instrument loader thread to |
/// Command used by the instrument loader thread to |
138 |
/// request an instrument change on a channel. |
/// request an instrument change on a channel. |
161 |
private: |
private: |
162 |
void ResetInternal(); |
void ResetInternal(); |
163 |
void RemoveAllFxSends(); |
void RemoveAllFxSends(); |
164 |
|
void ClearDimRegionsInUse(); |
165 |
|
void ResetDimRegionsInUse(); |
166 |
instrument_change_command_t& ChangeInstrument(::gig::Instrument* pInstrument); |
instrument_change_command_t& ChangeInstrument(::gig::Instrument* pInstrument); |
167 |
}; |
}; |
168 |
|
|