LinuxSampler::FxSend Class Reference
Engine Channel Effect Send.
More...
#include <FxSend.h>
List of all members.
Public Member Functions |
| FxSend (EngineChannel *pEngineChannel, uint8_t MidiCtrl, String Name="") throw (Exception) |
| Constructor.
|
int | DestinationMasterEffectChain () const |
| Index of the master effect chain this FX send is routed to or -1 if FX send is not routed to a master effect.
|
int | DestinationMasterEffect () const |
| Index of the master effect of the master effect chain given by DestinationMasterEffectChain(), in case FX send is routed to a master effect or -1 otherwise.
|
void | SetDestinationMasterEffect (int iChain, int iEffect) throw (Exception) |
| Route this FX send to the given master effect given by index iEffect of the master effect chain given by iChain .
|
int | DestinationChannel (int SrcChan) |
| Returns the audio output device's audio channel to which effect send's channel SrcChan is currently routed to.
|
void | SetDestinationChannel (int SrcChan, int DstChan) throw (Exception) |
| Alters the routing of an audio channel.
|
void | UpdateChannels () |
| Should be called by the engine channel whenever the amount of audio channel has changed, so the FxSend object can adjust the amount of channels to that new number and establish default routings for new channels if needed.
|
float | Level () |
| The effect send's current send level ( usually a value between 0.0f and 1.0f ).
|
void | SetLevel (float f) |
| Alter the effect send's send level ( usually a value between 0.0f and 1.0f ).
|
void | SetLevel (uint8_t iMidiValue) |
| Alter the effect send's send level by supplying the MIDI controller's MIDI value.
|
void | Reset () |
| Reset send level to the default send level (i.e.
|
uint8_t | MidiController () |
| Returns the MIDI controller number which can alter the effect send's send level.
|
void | SetMidiController (uint8_t MidiCtrl) throw (Exception) |
| Alter the MIDI controller number which should alter the effect send's send level.
|
String | Name () |
| Returns the (optional) name of this effect send entity.
|
void | SetName (String Name) |
| Sets the name of this effect send entity.
|
uint | Id () |
| Returns the (at least sampler-channel-) unique ID of the effect send instance.
|
bool | IsInfoChanged () |
| Determines whether the effect send's settings are changed.
|
void | SetInfoChanged (bool b) |
| Sets whether the effect send's settings are changed.
|
Protected Attributes |
EngineChannel * | pEngineChannel |
int | iMasterEffectChain |
int | iMasterEffect |
std::vector< int > | Routing |
uint8_t | MidiFxSendController |
String | sName |
uint | iId |
float | fLevel |
bool | bInfoChanged |
Detailed Description
Engine Channel Effect Send.
This class is used to manage effect sends on Engine Channels. An effect send is used to route sampler channel's audio signals to either sampler external effect processors or to sampler internal effect processors. Each effect send entity can define an arbitrary MIDI controller number which can alter the effect send's send level.
Regarding sampler internal effects: only master effects are supported ATM, no insert effects yet. See AudioOutputDevice regarding management of master effects, since master effects only live in the context of exactly ONE AudioOutputDevice.
Note: effect sends cannot be routed to a different AudioOutputDevice than assigned to the FxSend's EngineChannel. Also note that an effect send always has as much audio channels as its EngineChannel.
Definition at line 55 of file FxSend.h.
Constructor & Destructor Documentation
Constructor.
By default all effect send channels are routed to the last available audio channels on the EngineChannel's AudioOutputDevice.
- Parameters:
-
| pEngineChannel | - engine channel on which the effect send is added to - Parameters:
-
| MidiCtrl | - MIDI controller number which can alter the effect send level - Parameters:
-
| Name | - (optional) name for the effect send entity |
- Exceptions:
-
|
|
Member Function Documentation
int LinuxSampler::FxSend::DestinationChannel |
( |
int |
SrcChan |
) |
|
Returns the audio output device's audio channel to which effect send's channel SrcChan is currently routed to.
int LinuxSampler::FxSend::DestinationMasterEffect |
( |
|
) |
const |
Index of the master effect of the master effect chain given by DestinationMasterEffectChain(), in case FX send is routed to a master effect or -1 otherwise.
int LinuxSampler::FxSend::DestinationMasterEffectChain |
( |
|
) |
const |
Index of the master effect chain this FX send is routed to or -1 if FX send is not routed to a master effect.
uint LinuxSampler::FxSend::Id |
( |
|
) |
|
Returns the (at least sampler-channel-) unique ID of the effect send instance.
This is actually not used by the engine at all. It is at the moment only used by the LSCP server to associate an unique numerical ID with each effect send entity.
bool LinuxSampler::FxSend::IsInfoChanged |
( |
|
) |
|
Determines whether the effect send's settings are changed.
float LinuxSampler::FxSend::Level |
( |
|
) |
|
The effect send's current send level ( usually a value between 0.0f
and 1.0f
).
uint8_t LinuxSampler::FxSend::MidiController |
( |
|
) |
|
Returns the MIDI controller number which can alter the effect send's send level.
String LinuxSampler::FxSend::Name |
( |
|
) |
|
Returns the (optional) name of this effect send entity.
void LinuxSampler::FxSend::Reset |
( |
|
) |
|
Reset send level to the default send level (i.e.
due to a MIDI "reset all controllers" message).
void LinuxSampler::FxSend::SetDestinationChannel |
( |
int |
SrcChan, |
|
|
int |
DstChan | |
|
) |
| | throw (Exception) |
Alters the routing of an audio channel.
- Parameters:
-
| SrcChan | - the effect send's source channel - Parameters:
-
| DstChan | - the audio output device's destination channel - Exceptions:
-
|
|
void LinuxSampler::FxSend::SetDestinationMasterEffect |
( |
int |
iChain, |
|
|
int |
iEffect | |
|
) |
| | throw (Exception) |
Route this FX send to the given master effect given by index iEffect of the master effect chain given by iChain .
If you want to remove the routing of an FX send, currently directed to a master effect processor, and want to route it directly to an audio output device channel instead, then set both arguments to -1
.
- Exceptions:
-
void LinuxSampler::FxSend::SetInfoChanged |
( |
bool |
b |
) |
|
Sets whether the effect send's settings are changed.
void LinuxSampler::FxSend::SetLevel |
( |
uint8_t |
iMidiValue |
) |
|
Alter the effect send's send level by supplying the MIDI controller's MIDI value.
This method is usually only called by the engine channel.
void LinuxSampler::FxSend::SetLevel |
( |
float |
f |
) |
|
Alter the effect send's send level ( usually a value between 0.0f
and 1.0f
).
void LinuxSampler::FxSend::SetMidiController |
( |
uint8_t |
MidiCtrl |
) |
throw (Exception) |
Alter the MIDI controller number which should alter the effect send's send level.
- Parameters:
-
| MidiCtrl | - MIDI controller number - Exceptions:
-
| Exception | - if MIDI controller number is invalid |
|
void LinuxSampler::FxSend::SetName |
( |
String |
Name |
) |
|
Sets the name of this effect send entity.
- Parameters:
-
| Name | The new name of this effect send entity. |
void LinuxSampler::FxSend::UpdateChannels |
( |
|
) |
|
Should be called by the engine channel whenever the amount of audio channel has changed, so the FxSend object can adjust the amount of channels to that new number and establish default routings for new channels if needed.
Member Data Documentation
The documentation for this class was generated from the following file: