Module |
|
Header |
/Engine/Source/Runtime/SignalProcessing/Public/DSP/Envelope.h |
Include |
#include "DSP/Envelope.h" |
class FEnvelope
Envelope class generates ADSR style envelope.
Name | Description | ||
---|---|---|---|
|
AttackData |
||
|
float |
AttackTimeMSec |
|
|
uint8: 1 |
bBiasInvert |
Bias output inversions. |
|
uint8: 1 |
bChanged |
Whether or not this envelope has changed and needs to have values recomputed. |
|
uint8: 1 |
bCurrentCycleIsADOnly |
Tracks if the current envelope was started with sustain at 0.0 (avoids bug where sustain being turned up during decay phase makes hang) |
|
float |
BiasDepth |
|
|
BiasedEnvSource |
||
|
uint8: 1 |
bInvert |
Inverts the output. |
|
uint8: 1 |
bIsLegatoMode |
Whether or not the envelope is reset back to attack when started. |
|
uint8: 1 |
bIsRetriggerMode |
Whether or not the envelope value is set to zero when finished. |
|
uint8: 1 |
bIsSimulatingAnalog |
Whether or not we want to simulate analog behavior. |
|
float |
CurrentEnvelopeBiasValue |
|
|
float |
CurrentEnvelopeValue |
|
|
CurrentState |
||
|
DecayData |
||
|
float |
DecayTimeMsec |
|
|
float |
Depth |
|
|
EnvSource |
||
|
ModMatrix |
Mod matrix. |
|
|
float |
OutputGain |
|
|
ReleaseData |
||
|
float |
ReleaseTimeMsec |
|
|
float |
SampleRate |
|
|
float |
ShutdownDelta |
|
|
float |
ShutdownTimeMsec |
|
|
float |
SustainGain |
|
|
VoiceId |
The current envelope value, used to compute exponential envelope curves. |
Name | Description | |
---|---|---|
|
FEnvelope() |
Name | Description | |
---|---|---|
|
~FEnvelope() |
Name | Description | ||
---|---|---|---|
|
float |
Generate ( |
Generate the next output value of the envelope. |
|
const FPatch... |
GetModSourceBiasEnv() |
|
|
const FPatch... |
GetModSourceEnv() |
Get the envelope's patch nodes. |
|
Init ( |
Initialize the envelope with the given sample rate. |
|
|
IsDone() |
Queries if the envelope has finished. |
|
|
IsRetrigger() |
||
|
Kill() |
Kills the envelope (will cause discontinuity) |
|
|
Reset() |
Resets the envelope. |
|
|
SetAttackTime ( |
Sets the envelope attack time in msec. |
|
|
SetBiasDepth ( |
Sets the depth of the bias output. |
|
|
SetBiasInvert ( |
Inverts the value of the biased envelope output. |
|
|
SetDecayTime ( |
Sets the envelope decay time in msec. |
|
|
SetDepth ( |
Sets the envelope depth. |
|
|
SetInvert ( |
Inverts the value of envelope output. |
|
|
SetLegato ( |
Sets whether the envelope is in legato mode. Legato mode doesn't restart the envelope if it's already playing. |
|
|
SetReleaseTime ( |
Sets the envelope release time in msec. |
|
|
SetRetrigger ( |
Sets whether or not the envelope is zero'd when reset. |
|
|
SetSimulateAnalog ( |
Sets the envelope mode. |
|
|
SetSustainGain ( |
Sets the envelope sustain gain in linear gain values. |
|
|
Shutdown() |
Puts envelope into shutdown mode, which is a much faster cutoff than release, but avoids pops. |
|
|
Start() |
Start the envelope, puts envelope in attack state. |
|
|
StartLegato() |
||
|
StartLegato ( |
For truly legato envelope logic, we need to know the new sustain gain (if its being changed). |
|
|
Stop() |
Stop the envelope, puts in the release state. Can optionally force to off state. |
|
|
Update() |
Update the state of the envelope. |
Name |
Description |
|
---|---|---|
|
FEnvData |
Name |
Description |
|
---|---|---|
|
EEnvelopeState |
States for the envelope state machine. |