VST 3 Examples  VST 3.6.14
SDK for developing VST Plug-in
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Macros Groups Pages
EPianoProcessor Class Reference

#include <mdaEPianoProcessor.h>

+ Inheritance diagram for EPianoProcessor:

Classes

struct  KGRP
 
struct  VOICE
 

Public Types

enum  { kNumVoices = 32, kEventBuffer = 120, kNumPrograms = 4 }
 

Public Member Functions

 EPianoProcessor ()
 
 ~EPianoProcessor ()
 
tresult initialize (FUnknown *context) SMTG_OVERRIDE
 
tresult terminate () SMTG_OVERRIDE
 
tresult setActive (TBool state) SMTG_OVERRIDE
 
void doProcessing (ProcessData &data) SMTG_OVERRIDE
 
bool hasProgram () const SMTG_OVERRIDE
 
Steinberg::uint32 getCurrentProgram () const SMTG_OVERRIDE
 
void setCurrentProgram (Steinberg::uint32 val) SMTG_OVERRIDE
 
void setCurrentProgramNormalized (ParamValue val) SMTG_OVERRIDE
 
- Public Member Functions inherited from AudioEffect
 AudioEffect ()
 
AudioBusaddAudioInput (const TChar *name, SpeakerArrangement arr, BusType busType=kMain, int32 flags=BusInfo::kDefaultActive)
 
AudioBusaddAudioOutput (const TChar *name, SpeakerArrangement arr, BusType busType=kMain, int32 flags=BusInfo::kDefaultActive)
 
AudioBusgetAudioInput (int32 index)
 
AudioBusgetAudioOutput (int32 index)
 
EventBusaddEventInput (const TChar *name, int32 channels=16, BusType busType=kMain, int32 flags=BusInfo::kDefaultActive)
 
EventBusaddEventOutput (const TChar *name, int32 channels=16, BusType busType=kMain, int32 flags=BusInfo::kDefaultActive)
 
EventBusgetEventInput (int32 index)
 
EventBusgetEventOutput (int32 index)
 
tresult getBusArrangement (BusDirection dir, int32 busIndex, SpeakerArrangement &arr) SMTG_OVERRIDE
 
tresult canProcessSampleSize (int32 symbolicSampleSize) SMTG_OVERRIDE
 
uint32 getLatencySamples () SMTG_OVERRIDE
 
tresult setProcessing (TBool state) SMTG_OVERRIDE
 
uint32 getTailSamples () SMTG_OVERRIDE
 
 Component ()
 
void setControllerClass (const FUID &cid)
 
tresult removeAudioBusses ()
 
tresult removeEventBusses ()
 
tresult renameBus (MediaType type, BusDirection dir, int32 index, const String128 newName)
 
tresult getControllerClassId (TUID classID) SMTG_OVERRIDE
 
tresult setIoMode (IoMode mode) SMTG_OVERRIDE
 
int32 getBusCount (MediaType type, BusDirection dir) SMTG_OVERRIDE
 
tresult getBusInfo (MediaType type, BusDirection dir, int32 index, BusInfo &info) SMTG_OVERRIDE
 
tresult getRoutingInfo (RoutingInfo &inInfo, RoutingInfo &outInfo) SMTG_OVERRIDE
 
tresult activateBus (MediaType type, BusDirection dir, int32 index, TBool state) SMTG_OVERRIDE
 
BusListgetBusList (MediaType type, BusDirection dir)
 
tresult removeAllBusses ()
 
 ComponentBase ()
 
 ~ComponentBase () override
 
FUnknowngetHostContext () const
 
IConnectionPointgetPeer () const
 
IMessageallocateMessage ()
 
tresult sendMessage (IMessage *message)
 
tresult sendTextMessage (const char8 *text)
 
virtual tresult receiveText (const char8 *text)
 
tresult connect (IConnectionPoint *other) SMTG_OVERRIDE
 
tresult disconnect (IConnectionPoint *other) SMTG_OVERRIDE
 
tresult notify (IMessage *message) SMTG_OVERRIDE
 
- Public Member Functions inherited from FUnknown
virtual tresult queryInterface (const TUID _iid, void **obj)=0
 
virtual uint32 addRef ()=0
 
virtual uint32 release ()=0
 

Static Public Member Functions

static FUnknowncreateInstance (void *)
 

Static Public Attributes

static FUID uid
 
static float programParams [][12]
 
- Static Public Attributes inherited from IPluginBase
static const FUID iid
 
- Static Public Attributes inherited from FUnknown
static const FUID iid
 
- Static Public Attributes inherited from IConnectionPoint
static const FUID iid
 
- Static Public Attributes inherited from IComponent
static const FUID iid
 
- Static Public Attributes inherited from IAudioProcessor
static const FUID iid
 

Protected Member Functions

void setParameter (ParamID index, ParamValue newValue, int32 sampleOffset) SMTG_OVERRIDE
 
void processEvents (IEventList *events) SMTG_OVERRIDE
 
void noteOn (int32 note, int32 velocity)
 
void recalculate () SMTG_OVERRIDE
 
- Protected Member Functions inherited from BaseProcessor
 BaseProcessor ()
 
 ~BaseProcessor ()
 
virtual bool bypassProcessing (ProcessData &data)
 
virtual void checkSilence (ProcessData &data)
 
virtual void setBypass (bool state, int32 sampleOffset)
 
virtual bool processParameterChanges (IParameterChanges *changes)
 
virtual void allocParameters (int32 numParams)
 
bool isBypassed () const
 
double getSampleRate () const
 
tresult process (ProcessData &data) SMTG_OVERRIDE
 
tresult setupProcessing (ProcessSetup &setup) SMTG_OVERRIDE
 
tresult setBusArrangements (SpeakerArrangement *inputs, int32 numIns, SpeakerArrangement *outputs, int32 numOuts) SMTG_OVERRIDE
 
tresult setState (IBStream *state) SMTG_OVERRIDE
 
tresult getState (IBStream *state) SMTG_OVERRIDE
 

Protected Attributes

float Fs
 
float iFs
 
int32 eventPos
 
int32 notes [kEventBuffer+8]
 
KGRP kgrp [34]
 
VOICE voice [kNumVoices]
 
int32 activevoices
 
int32 poly
 
short * waves
 
float width
 
int32 size
 
int32 sustain
 
float lfo0
 
float lfo1
 
float dlfo
 
float lmod
 
float rmod
 
float treb
 
float tfrq
 
float tl
 
float tr
 
float tune
 
float fine
 
float random
 
float stretch
 
float overdrive
 
float muff
 
float muffvel
 
float sizevel
 
float velsens
 
float volume
 
float modwhl
 
Steinberg::uint32 currentProgram
 
- Protected Attributes inherited from BaseProcessor
ParamValueparams
 
uint32 numParams
 
int32 bypassRamp
 
float * bypassBuffer0
 
float * bypassBuffer1
 
bool bypassState
 

Additional Inherited Members

- Public Attributes inherited from AudioEffect
OBJ_METHODS(Component,
ComponentBase)
DEFINE_INTERFACES
DEF_INTERFACE(IComponent)
END_DEFINE_INTERFACES(ComponentBase)
REFCOUNT_METHODS(ComponentBase)
protected BusList 
audioInputs
 
BusList audioOutputs
 
BusList eventInputs
 
BusList eventOutputs
 
OBJ_METHODS(ComponentBase,
FObject) DEFINE_INTERFACES
DEF_INTERFACE(IPluginBase)
DEF_INTERFACE(IConnectionPoint)
END_DEFINE_INTERFACES(FObject)
REFCOUNT_METHODS(FObject)
protected IPtr
< IConnectionPoint
peerConnection
 

Member Enumeration Documentation

anonymous enum
Enumerator
kNumVoices 
kEventBuffer 
kNumPrograms 

Constructor & Destructor Documentation

Member Function Documentation

tresult initialize ( FUnknown context)
virtual

Reimplemented from AudioEffect.

tresult terminate ( )
virtual

Reimplemented from AudioEffect.

tresult setActive ( TBool  state)
virtual

Reimplemented from BaseProcessor.

void doProcessing ( ProcessData data)
virtual

Implements BaseProcessor.

bool hasProgram ( ) const
inlinevirtual

Reimplemented from BaseProcessor.

Steinberg::uint32 getCurrentProgram ( ) const
inlinevirtual

Reimplemented from BaseProcessor.

void setCurrentProgram ( Steinberg::uint32  val)
virtual

Reimplemented from BaseProcessor.

void setCurrentProgramNormalized ( ParamValue  val)
virtual

Reimplemented from BaseProcessor.

static FUnknown* createInstance ( void *  )
inlinestatic
void setParameter ( ParamID  index,
ParamValue  newValue,
int32  sampleOffset 
)
protectedvirtual

Reimplemented from BaseProcessor.

void processEvents ( IEventList events)
protectedvirtual

Reimplemented from BaseProcessor.

void noteOn ( int32  note,
int32  velocity 
)
protected
void recalculate ( )
protectedvirtual

Reimplemented from BaseProcessor.

Member Data Documentation

FUID uid
static
float programParams
static
Initial value:
= {
{ 0.500f, 0.500f, 0.500f, 0.500f, 0.500f, 0.650f, 0.250f, 0.500f, 0.50f, 0.500f, 0.146f, 0.000f },
{ 0.500f, 0.500f, 1.000f, 0.800f, 0.500f, 0.650f, 0.250f, 0.500f, 0.50f, 0.500f, 0.146f, 0.500f },
{ 0.500f, 0.500f, 0.000f, 0.000f, 0.500f, 0.650f, 0.250f, 0.500f, 0.50f, 0.500f, 0.246f, 0.000f },
{ 0.500f, 0.500f, 0.500f, 0.500f, 0.250f, 0.650f, 0.250f, 0.500f, 0.50f, 0.500f, 0.246f, 0.000f },
{ 0.500f, 0.500f, 0.500f, 0.500f, 0.750f, 0.650f, 0.250f, 0.500f, 0.50f, 0.500f, 0.246f, 0.000f }
}
float Fs
protected
float iFs
protected
int32 eventPos
protected
int32 notes[kEventBuffer+8]
protected
KGRP kgrp[34]
protected
VOICE voice[kNumVoices]
protected
int32 activevoices
protected
int32 poly
protected
short* waves
protected
float width
protected
int32 size
protected
int32 sustain
protected
float lfo0
protected
float lfo1
protected
float dlfo
protected
float lmod
protected
float rmod
protected
float treb
protected
float tfrq
protected
float tl
protected
float tr
protected
float tune
protected
float fine
protected
float random
protected
float stretch
protected
float overdrive
protected
float muff
protected
float muffvel
protected
float sizevel
protected
float velsens
protected
float volume
protected
float modwhl
protected
Steinberg::uint32 currentProgram
protected
Empty

Copyright ©2019 Steinberg Media Technologies GmbH. All Rights Reserved. This documentation is under this license.