VST 3 Examples VST 3.7
SDK for developing VST plug-in
JX10Processor Class Reference

#include <mdaJX10Processor.h>

+ Inheritance diagram for JX10Processor:

Classes

struct  VOICE
 

Public Types

using Base = BaseProcessor
 
- Public Types inherited from IProcessContextRequirements
enum  Flags
 

Public Member Functions

 JX10Processor ()
 
 ~JX10Processor ()
 
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
 
- 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 setBusArrangements (SpeakerArrangement *inputs, int32 numIns, SpeakerArrangement *outputs, int32 numOuts) SMTG_OVERRIDE
 
tresult getBusArrangement (BusDirection dir, int32 busIndex, SpeakerArrangement &arr) SMTG_OVERRIDE
 
tresult canProcessSampleSize (int32 symbolicSampleSize) SMTG_OVERRIDE
 
uint32 getLatencySamples () SMTG_OVERRIDE
 
tresult setupProcessing (ProcessSetup &setup) SMTG_OVERRIDE
 
tresult setProcessing (TBool state) SMTG_OVERRIDE
 
tresult process (ProcessData &data) SMTG_OVERRIDE
 
uint32 getTailSamples () SMTG_OVERRIDE
 
uint32 getProcessContextRequirements () SMTG_OVERRIDE
 
- Public Member Functions inherited from Component
 Component ()
 
void setControllerClass (const FUID &cid)
 
void setControllerClass (const TUID &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
 
tresult setActive (TBool state) SMTG_OVERRIDE
 
tresult setState (IBStream *state) SMTG_OVERRIDE
 
tresult getState (IBStream *state) SMTG_OVERRIDE
 
tresult initialize (FUnknown *context) SMTG_OVERRIDE
 
tresult terminate () SMTG_OVERRIDE
 
BusListgetBusList (MediaType type, BusDirection dir)
 
tresult removeAllBusses ()
 
- Public Member Functions inherited from ComponentBase
 ComponentBase ()
 
 ~ComponentBase () override
 
FUnknowngetHostContext () const
 
IConnectionPointgetPeer () const
 
IMessageallocateMessage () const
 
tresult sendMessage (IMessage *message) const
 
tresult sendTextMessage (const char8 *text) const
 
tresult sendMessageID (const char8 *messageID) const
 
virtual tresult receiveText (const char8 *text)
 
tresult initialize (FUnknown *context) SMTG_OVERRIDE
 
tresult terminate () SMTG_OVERRIDE
 
tresult connect (IConnectionPoint *other) SMTG_OVERRIDE
 
tresult disconnect (IConnectionPoint *other) SMTG_OVERRIDE
 
tresult notify (IMessage *message) SMTG_OVERRIDE
 
virtual tresult initialize (FUnknown *context)=0
 
virtual tresult terminate ()=0
 
- Public Member Functions inherited from FUnknown
virtual tresult queryInterface (const TUID _iid, void **obj)=0
 
virtual uint32 addRef ()=0
 
virtual uint32 release ()=0
 
virtual tresult connect (IConnectionPoint *other)=0
 
virtual tresult disconnect (IConnectionPoint *other)=0
 
virtual tresult notify (IMessage *message)=0
 
virtual tresult getControllerClassId (TUID classId)=0
 
virtual tresult setIoMode (IoMode mode)=0
 
virtual int32 getBusCount (MediaType type, BusDirection dir)=0
 
virtual tresult getBusInfo (MediaType type, BusDirection dir, int32 index, BusInfo &bus)=0
 
virtual tresult getRoutingInfo (RoutingInfo &inInfo, RoutingInfo &outInfo)=0
 
virtual tresult activateBus (MediaType type, BusDirection dir, int32 index, TBool state)=0
 
virtual tresult setActive (TBool state)=0
 
virtual tresult setState (IBStream *state)=0
 
virtual tresult getState (IBStream *state)=0
 
virtual tresult setBusArrangements (SpeakerArrangement *inputs, int32 numIns, SpeakerArrangement *outputs, int32 numOuts)=0
 
virtual tresult getBusArrangement (BusDirection dir, int32 index, SpeakerArrangement &arr)=0
 
virtual tresult canProcessSampleSize (int32 symbolicSampleSize)=0
 
virtual uint32 getLatencySamples ()=0
 
virtual tresult setupProcessing (ProcessSetup &setup)=0
 
virtual tresult setProcessing (TBool state)=0
 
virtual tresult process (ProcessData &data)=0
 
virtual uint32 getTailSamples ()=0
 
virtual uint32 getProcessContextRequirements ()=0
 

Static Public Member Functions

static FUnknowncreateInstance (void *)
 
static DECLARE_UID (uid, 0x82CD49DE, 0x13D743BA, 0xABDAC299, 0x1CE06F7C)
 

Static Public Attributes

static const int32 kNumPrograms = 52
 
static float programParams [kNumPrograms][24]
 
- 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
 
- Static Public Attributes inherited from IProcessContextRequirements
static const FUID iid
 

Protected Types

using SynthDataT = SynthData< VOICE, kEventBufferSize, kNumVoices >
 
- Protected Types inherited from Processor
using StateT = std::vector< ParamValue >
 

Protected Member Functions

void preProcess () SMTG_OVERRIDE
 
void processEvent (const Event &event) SMTG_OVERRIDE
 
void recalculate () SMTG_OVERRIDE
 
void noteEvent (const Event &event)
 
void setParameter (ParamID index, ParamValue newValue, int32 sampleOffset) SMTG_OVERRIDE
 
void clearVoice (VOICE &v)
 
- Protected Member Functions inherited from Processor
 Processor ()
 
 ~Processor ()
 
virtual void doProcessing (ProcessData &data)=0
 
virtual void preProcess ()
 
virtual bool bypassProcessing (ProcessData &data)
 
virtual void processEvent (const Event &)
 
virtual void checkSilence (ProcessData &data)
 
virtual void setBypass (bool state, int32 sampleOffset)
 
virtual bool processParameterChanges (IParameterChanges *changes)
 
virtual void setParameter (ParamID index, ParamValue newValue, int32 sampleOffset)
 
virtual void allocParameters (int32 numParams)
 
virtual void recalculate ()
 
virtual bool hasProgram () const
 
virtual uint32 getCurrentProgram () const
 
virtual uint32 getNumPrograms () const
 
virtual void setCurrentProgram (uint32)
 
virtual void setCurrentProgramNormalized (ParamValue)
 
virtual int32 getVst2UniqueId () const =0
 
void processEvents (IEventList *events)
 
bool isBypassed () const
 
double getSampleRate () const
 
tresult process (ProcessData &data) SMTG_OVERRIDE
 
tresult setupProcessing (ProcessSetup &setup) SMTG_OVERRIDE
 
tresult setActive (TBool state) SMTG_OVERRIDE
 
tresult setBusArrangements (SpeakerArrangement *inputs, int32 numIns, SpeakerArrangement *outputs, int32 numOuts) SMTG_OVERRIDE
 
tresult setState (IBStream *state) final
 
tresult getState (IBStream *state) final
 
bool checkStateTransfer ()
 

Protected Attributes

SynthDataT synthData
 
float semi
 global internal variables More...
 
float cent
 
float tune
 
float detune
 
float filtf
 
float fzip
 
float filtq
 
float filtlfo
 
float filtenv
 
float filtvel
 
float filtwhl
 
float oscmix
 
float noisemix
 
float att
 
float dec
 
float sus
 
float rel
 
float fatt
 
float fdec
 
float fsus
 
float frel
 
float lfo
 
float dlfo
 
float modwhl
 
float press
 
float pbend
 
float ipbend
 
float rezwhl
 
float velsens
 
float volume
 
float voltrim
 
float vibrato
 
float pwmdep
 
float lfoHz
 
float glide
 
float glidedisp
 
int32 K
 
int32 lastnote
 
int32 veloff
 
int32 mode
 
Steinberg::uint32 noise
 
Steinberg::uint32 currentProgram
 
- Protected Attributes inherited from Processor
ParamValueparams
 
uint32 numParams
 
int32 bypassRamp
 
float * bypassBuffer0
 
float * bypassBuffer1
 
bool bypassState
 
RTTransferT< StateTstateTransfer
 

Static Protected Attributes

static constexpr int32 kEventBufferSize = 64
 
static constexpr int32 kNumVoices = 8
 
static const int32 KMAX = 32
 

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
 
- Public Attributes inherited from Component
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
 
- Public Attributes inherited from ComponentBase
OBJ_METHODS(ComponentBase, FObject) DEFINE_INTERFACES DEF_INTERFACE(IPluginBase) DEF_INTERFACE(IConnectionPoint) END_DEFINE_INTERFACES(FObject) REFCOUNT_METHODS(FObject) protected IPtr< IConnectionPointpeerConnection
 
- Public Attributes inherited from IProcessContextRequirements
 kNeedSystemTime
 
 kNeedContinousTimeSamples
 
 kNeedProjectTimeMusic
 
 kNeedBarPositionMusic
 
 kNeedCycleMusic
 
 kNeedSamplesToNextClock
 
 kNeedTempo
 
 kNeedTimeSignature
 
 kNeedChord
 
 kNeedFrameRate
 
 kNeedTransportState
 

Member Typedef Documentation

◆ Base

◆ SynthDataT

Constructor & Destructor Documentation

◆ JX10Processor()

◆ ~JX10Processor()

Member Function Documentation

◆ getVst2UniqueId()

int32 getVst2UniqueId ( ) const
inlinevirtual

Implements Processor.

◆ initialize()

tresult initialize ( FUnknown context)
virtual

Reimplemented from Component.

◆ terminate()

tresult terminate ( )
virtual

Reimplemented from Component.

◆ setActive()

tresult setActive ( TBool  state)
virtual

Reimplemented from Processor.

◆ doProcessing()

void doProcessing ( ProcessData data)
virtual

Implements Processor.

◆ hasProgram()

bool hasProgram ( ) const
inlinevirtual

Reimplemented from Processor.

◆ getCurrentProgram()

Steinberg::uint32 getCurrentProgram ( ) const
inlinevirtual

Reimplemented from Processor.

◆ getNumPrograms()

Steinberg::uint32 getNumPrograms ( ) const
inlinevirtual

Reimplemented from Processor.

◆ setCurrentProgram()

void setCurrentProgram ( Steinberg::uint32  val)
virtual

Reimplemented from Processor.

◆ setCurrentProgramNormalized()

void setCurrentProgramNormalized ( ParamValue  val)
virtual

Reimplemented from Processor.

◆ createInstance()

static FUnknown * createInstance ( void *  )
inlinestatic

◆ DECLARE_UID()

static DECLARE_UID ( uid  ,
0x82CD49DE  ,
0x13D743BA  ,
0xABDAC299  ,
0x1CE06F7C   
)
inlinestatic

◆ preProcess()

void preProcess ( )
protectedvirtual

Reimplemented from Processor.

◆ processEvent()

void processEvent ( const Event event)
protectedvirtual

Reimplemented from Processor.

◆ recalculate()

void recalculate ( )
protectedvirtual

Reimplemented from Processor.

◆ noteEvent()

void noteEvent ( const Event event)
protected

◆ setParameter()

void setParameter ( ParamID  index,
ParamValue  newValue,
int32  sampleOffset 
)
protectedvirtual

Reimplemented from Processor.

◆ clearVoice()

void clearVoice ( VOICE v)
protected

Member Data Documentation

◆ kNumPrograms

const int32 kNumPrograms = 52
static

◆ programParams

float programParams
static

◆ kEventBufferSize

constexpr int32 kEventBufferSize = 64
staticconstexprprotected

◆ kNumVoices

constexpr int32 kNumVoices = 8
staticconstexprprotected

◆ synthData

SynthDataT synthData
protected

◆ KMAX

const int32 KMAX = 32
staticprotected

◆ semi

float semi
protected

global internal variables

◆ cent

float cent
protected

◆ tune

float tune
protected

◆ detune

float detune
protected

◆ filtf

float filtf
protected

◆ fzip

float fzip
protected

◆ filtq

float filtq
protected

◆ filtlfo

float filtlfo
protected

◆ filtenv

float filtenv
protected

◆ filtvel

float filtvel
protected

◆ filtwhl

float filtwhl
protected

◆ oscmix

float oscmix
protected

◆ noisemix

float noisemix
protected

◆ att

float att
protected

◆ dec

float dec
protected

◆ sus

float sus
protected

◆ rel

float rel
protected

◆ fatt

float fatt
protected

◆ fdec

float fdec
protected

◆ fsus

float fsus
protected

◆ frel

float frel
protected

◆ lfo

float lfo
protected

◆ dlfo

float dlfo
protected

◆ modwhl

float modwhl
protected

◆ press

float press
protected

◆ pbend

float pbend
protected

◆ ipbend

float ipbend
protected

◆ rezwhl

float rezwhl
protected

◆ velsens

float velsens
protected

◆ volume

float volume
protected

◆ voltrim

float voltrim
protected

◆ vibrato

float vibrato
protected

◆ pwmdep

float pwmdep
protected

◆ lfoHz

float lfoHz
protected

◆ glide

float glide
protected

◆ glidedisp

float glidedisp
protected

◆ K

int32 K
protected

◆ lastnote

int32 lastnote
protected

◆ veloff

int32 veloff
protected

◆ mode

int32 mode
protected

◆ noise

Steinberg::uint32 noise
protected

◆ currentProgram

Steinberg::uint32 currentProgram
protected
Empty

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