VST 3 Examples  VST 3.7
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

using Base = BaseProcessor
 

Public Member Functions

 EPianoProcessor ()
 
 ~EPianoProcessor ()
 
int32 getVst2UniqueId () const SMTG_OVERRIDE
 
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
 
Steinberg::uint32 getNumPrograms () const SMTG_OVERRIDE
 
void setCurrentProgram (Steinberg::uint32 val) SMTG_OVERRIDE
 
void setCurrentProgramNormalized (ParamValue val) SMTG_OVERRIDE
 
- Public Member Functions inherited from SampleAccurateBaseProcessor
 SampleAccurateBaseProcessor ()
 
void allocParameters (int32 numParams) final
 
tresult process (ProcessData &data) final
 
bool processParameterChanges (IParameterChanges *changes) final
 

Static Public Member Functions

static FUnknowncreateInstance (void *)
 
static DECLARE_UID (uid, 0xFED93DB8, 0x5E81448F, 0xA3B14028, 0x879FA824)
 

Static Public Attributes

static float programParams [][12]
 
static const int32 kNumPrograms = 4
 

Protected Types

using SynthDataT = SynthData< VOICE, kEventBufferSize, kNumVoices >
 

Protected Member Functions

void setParameter (ParamID index, ParamValue newValue, int32 sampleOffset) SMTG_OVERRIDE
 
void preProcess () SMTG_OVERRIDE
 
void processEvent (const Event &event) SMTG_OVERRIDE
 
void noteEvent (const Event &event)
 
void recalculate () SMTG_OVERRIDE
 

Protected Attributes

float Fs
 
float iFs
 
SynthDataT synthData
 
KGRP kgrp [34]
 
int32 poly
 
short * waves
 
float width
 
int32 size
 
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
 

Static Protected Attributes

static constexpr int32 kNumVoices = 32
 
static constexpr int32 kEventBufferSize = 64
 

Additional Inherited Members

- Public Attributes inherited from AudioEffect
OBJ_METHODS(AudioEffect,
Component) DEFINE_INTERFACES
DEF_INTERFACE(IAudioProcessor)
DEF_INTERFACE(IProcessContextRequirements)
END_DEFINE_INTERFACES(Component)
REFCOUNT_METHODS(Component)
protected
ProcessContextRequirements 
processContextRequirements
 
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 Typedef Documentation

Constructor & Destructor Documentation

Member Function Documentation

int32 getVst2UniqueId ( ) const
inlinevirtual

Implements Processor.

tresult initialize ( FUnknown context)
virtual

Reimplemented from AudioEffect.

tresult terminate ( )
virtual

Reimplemented from AudioEffect.

tresult setActive ( TBool  state)
virtual

Reimplemented from Processor.

void doProcessing ( ProcessData data)
virtual

Implements Processor.

bool hasProgram ( ) const
inlinevirtual

Reimplemented from Processor.

Steinberg::uint32 getCurrentProgram ( ) const
inlinevirtual

Reimplemented from Processor.

Steinberg::uint32 getNumPrograms ( ) const
inlinevirtual

Reimplemented from Processor.

void setCurrentProgram ( Steinberg::uint32  val)
virtual

Reimplemented from Processor.

void setCurrentProgramNormalized ( ParamValue  val)
virtual

Reimplemented from Processor.

static FUnknown* createInstance ( void *  )
inlinestatic
static DECLARE_UID ( uid  ,
0xFED93DB8  ,
0x5E81448F  ,
0xA3B14028  ,
0x879FA824   
)
inlinestatic
void setParameter ( ParamID  index,
ParamValue  newValue,
int32  sampleOffset 
)
protectedvirtual

Reimplemented from Processor.

void preProcess ( )
protectedvirtual

Reimplemented from Processor.

void processEvent ( const Event event)
protectedvirtual

Reimplemented from Processor.

void noteEvent ( const Event event)
protected
void recalculate ( )
protectedvirtual

Reimplemented from Processor.

Member Data Documentation

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 }
}
const int32 kNumPrograms = 4
static
float Fs
protected
float iFs
protected
constexpr int32 kNumVoices = 32
staticprotected
constexpr int32 kEventBufferSize = 64
staticprotected
SynthDataT synthData
protected
KGRP kgrp[34]
protected
int32 poly
protected
short* waves
protected
float width
protected
int32 size
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 ©2024 Steinberg Media Technologies GmbH. All Rights Reserved. This documentation is under this license.