All Classes Namespaces Functions Variables Enumerations Enumerator Modules Pages
Classes | List of all members
Inheritance diagram for AhdsrEnvelope:
EnvelopeModulator Modulator VoiceModulation TimeModulation Processor Modulation Modulation SafeChangeBroadcaster RestorableObject ControlledObject

Classes

struct  AhdsrEnvelopeState
 

Additional Inherited Members

- Public Types inherited from Processor
enum  SpecialParameters
 
enum  InternalChains
 
- Public Types inherited from Modulation
enum  Mode { GainMode = 0, PitchMode }
 
- Public Member Functions inherited from Modulator
 Modulator (MainController *m, const String &id)
 
virtual void setColour (Colour c)
 
void setPlotter (Plotter *targetPlotter)
 
void addValueToPlotter (float v) const
 
- Public Member Functions inherited from Processor
 Processor (MainController *m, const String &id_)
 
virtual ~Processor ()
 
virtual const Identifier getType () const =0
 
const Path getSymbol () const
 
void setSymbol (Path newSymbol)
 
void setAttribute (int parameterIndex, float newValue, juce::NotificationType notifyEditor)
 
void enableConsoleOutput (bool shouldBeEnabled)
 
const String & getId () const
 
virtual const String getName () const
 
virtual void setBypassed (bool shouldBeBypassed, NotificationType notifyChangeHandler=dontSendNotification) noexcept
 
bool isBypassed () const noexcept
 
double getSampleRate () const
 
int getBlockSize () const
 
float getOutputValue () const
 
float getInputValue () const
 
void setEditorState (int state, bool isOn, NotificationType notifyView=sendNotification)
 
bool getEditorState (int state) const
 
void restoreCompleteEditorState (const XmlElement *storedState)
 
const Identifier getIdentifierForParameterIndex (int parameterIndex) const
 
int getNumParameters () const
 
void setIsOnAir (bool isBeingProcessedInAudioThread)
 
const CriticalSection & getDummyLockWhenNotOnAir () const
 
- Public Member Functions inherited from SafeChangeBroadcaster
void sendSynchronousChangeMessage ()
 
void addChangeListener (SafeChangeListener *listener)
 
void removeChangeListener (SafeChangeListener *listener)
 
void removeAllChangeListeners ()
 
void sendChangeMessage (const String &=String())
 
void sendAllocationFreeChangeMessage ()
 
- Public Member Functions inherited from ControlledObject
 ControlledObject (MainController *m)
 
const MainControllergetMainController () const noexcept
 
MainControllergetMainController () noexcept
 
- Public Member Functions inherited from Modulation
Mode getMode () const noexcept
 
float calcIntensityValue (float calculatedModulationValue) const noexcept
 
void applyModulationValue (float calculatedModulationValue, float &destinationValue) const noexcept
 
void setIntensity (float newIntensity) noexcept
 
void setIntensityFromSlider (float sliderValue) noexcept
 
virtual float getIntensity () const noexcept
 
float getDisplayIntensity () const noexcept
 
- Public Member Functions inherited from TimeModulation
virtual void renderNextBlock (AudioSampleBuffer &buffer, int startSample, int numSamples)
 
virtual void applyTimeModulation (AudioSampleBuffer &buffer, int startIndex, int samplesToCopy)
 
virtual const float * getCalculatedValues (int)
 
- Protected Member Functions inherited from Processor
void setOutputValue (float newValue)
 
void setInputValue (float newValue, NotificationType notify=sendNotification)
 
- Protected Member Functions inherited from TimeModulation
virtual void prepareToModulate (double, int samplesPerBlock)
 
virtual bool isInitialized ()
 
void applyGainModulation (float *calculatedModulationValues, float *destinationValues, float fixedIntensity, int numValues) const noexcept
 
void applyGainModulation (float *calculatedModulationValues, float *destinationValues, float fixedIntensity, float *intensityValues, int numValues) const noexcept
 
void applyPitchModulation (float *calculatedModulationValues, float *destinationValues, float fixedIntensity, float *intensityValues, int numValues) const noexcept
 
void applyPitchModulation (float *calculatedModulationValues, float *destinationValues, float fixedIntensity, int numValues) const noexcept
 
- Protected Attributes inherited from EnvelopeModulator
OwnedArray< ModulatorStatestates
 

Detailed Description

A pretty common envelope type with 5 states. (Go to http://en.wikiaudio.org/ADSR_envelope for a general description on how an envelope works)

The code is based on the example envelope code from http://earlevel.com.

The Modulator has five states: Attack, Hold, Decay, Sustain and Release and allows modulation of the attack time and level, the decay time and the release time with VoiceStartModulators.

Unlike the SimpleEnvelope, this envelope has a exponential curve, so it sounds nicer (but is a little bit more resource-hungry).

ID Parameter Description
0 Attack the attack time in milliseconds
1 AttackLevel the attack level in decibel
2 Hold the hold time in milliseconds
3 Decay the decay time in milliseconds
4 Sustain the sustain level in decibel
5 Release the release time in milliseconds

©2017 HISE. This documentation is autogenerated from the HISE source code using Doxygen.