All Classes Namespaces Functions Variables Enumerations Enumerator Modules Pages
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
EnvelopeModulator Class Referenceabstract
Inheritance diagram for EnvelopeModulator:
Modulator VoiceModulation TimeModulation Processor Modulation Modulation SafeChangeBroadcaster RestorableObject ControlledObject AhdsrEnvelope ModulatorChain SimpleEnvelope TableEnvelope

Classes

struct  ModulatorState
 

Public Member Functions

virtual bool isPlaying (int voiceIndex) const =0
 
virtual void reset (int voiceIndex)
 
- Public Member Functions inherited from Modulator
 Modulator (MainController *m, const String &id)
 
virtual int getNumChildProcessors () const override
 
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 ProcessorEditorBodycreateEditor (ProcessorEditor *parentEditor)=0
 
virtual const Identifier getType () const =0
 
const Path getSymbol () const
 
void setSymbol (Path newSymbol)
 
void setAttribute (int parameterIndex, float newValue, juce::NotificationType notifyEditor)
 
virtual ProcessorgetChildProcessor (int processorIndex)=0
 
virtual int getNumInternalChains () const
 
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 calculateBlock (int startSample, int numSamples)=0
 
virtual void applyTimeModulation (AudioSampleBuffer &buffer, int startIndex, int samplesToCopy)
 
virtual const float * getCalculatedValues (int)
 

Protected Member Functions

virtual ModulatorStatecreateSubclassedState (int) const =0
 
- 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

OwnedArray< ModulatorStatestates
 

Additional Inherited Members

- Public Types inherited from Processor
enum  SpecialParameters
 
enum  InternalChains
 
- Public Types inherited from Modulation
enum  Mode { GainMode = 0, PitchMode }
 

Detailed Description

A EnvelopeModulator is a base class for all envelope-type modulators.

It is basically a TimeVariantModulator with two additional features:

  1. Polyphony - multiple states are allowed. See ModulatorStates for more information.
  2. Release Trail - prevent note from stopping until the release phase is finished.

Member Function Documentation

virtual ModulatorState* createSubclassedState ( int  ) const
protectedpure virtual

Overwrite this method and return a newly created ModulatorState of the desired subclass. It will be owned by the Modulator.

virtual bool isPlaying ( int  voiceIndex) const
pure virtual

Checks if the Envelope is active for the given voice. Overwrite this and return true as long as you want the envelope to sound.

Implemented in TableEnvelope, ModulatorChain, and AhdsrEnvelope.

virtual void reset ( int  voiceIndex)
inlinevirtual

Overwrite this to reset the envelope. If you want to have the display resetted, call this method from your subclass.

Reimplemented in ModulatorChain.

Member Data Documentation

OwnedArray<ModulatorState> states
protected

Use this array to access the state.

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