VST 3 Examples VST 3.7 SDK for developing VST plug-in

Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
ControllerWithUI Class Reference

Example Note Expression Audio Controller + User Interface. More...

`#include <note_expression_synth_ui.h>`

Inheritance diagram for ControllerWithUI:

## Public Types
using | UTF8StringPtr = VSTGUI::UTF8StringPtr
using | IController = VSTGUI::IController
using | IUIDescription = VSTGUI::IUIDescription
using | VST3Editor = VSTGUI::VST3Editor
Public Types inherited from Controller
enum | NoteExpressionTypeIds { kNoiseVolumeTypeID = kCustomStart , kFilterFreqModTypeID , kFilterQModTypeID , kSinusVolumeTypeID , kTriangleVolumeTypeID , kFilterTypeTypeID , kTriangleSlopeTypeID , kSinusDetuneTypeID , kReleaseTimeModTypeID , kTextInputTypeID , kSquareVolumeTypeID }

## Public Member Functions
tresult | initialize (FUnknown *context) SMTG_OVERRIDE
tresult | terminate () SMTG_OVERRIDE
IPlugView * | createView (FIDString name) SMTG_OVERRIDE
tresult | setState (IBStream *state) SMTG_OVERRIDE
tresult | getState (IBStream *state) SMTG_OVERRIDE
tresult | beginEdit (ParamID tag) SMTG_OVERRIDE
tresult | performEdit (ParamID tag, ParamValue valueNormalized) SMTG_OVERRIDE
tresult | endEdit (ParamID tag) SMTG_OVERRIDE
tresult | onLiveMIDIControllerInput (int32 busIndex, int16 channel, CtrlNumber midiCC) SMTG_OVERRIDE
IController * | createSubController (UTF8StringPtr name, const IUIDescription *description, VST3Editor *editor) SMTG_OVERRIDE
bool | isPrivateParameter (const ParamID paramID) SMTG_OVERRIDE
Public Member Functions inherited from Controller
tresult | initialize (FUnknown *context) SMTG_OVERRIDE
tresult | terminate () SMTG_OVERRIDE
tresult | setComponentState (IBStream *state) SMTG_OVERRIDE
tresult | setParamNormalized (ParamID tag, ParamValue value) SMTG_OVERRIDE
tresult | getMidiControllerAssignment (int32 busIndex, int16 channel, CtrlNumber midiControllerNumber, ParamID &id) SMTG_OVERRIDE
int32 | getNoteExpressionCount (int32 busIndex, int16 channel) SMTG_OVERRIDE
tresult | getNoteExpressionInfo (int32 busIndex, int16 channel, int32 noteExpressionIndex, NoteExpressionTypeInfo &info) SMTG_OVERRIDE
tresult | getNoteExpressionStringByValue (int32 busIndex, int16 channel, NoteExpressionTypeID id, NoteExpressionValue valueNormalized, String128 string) SMTG_OVERRIDE
tresult | getNoteExpressionValueByString (int32 busIndex, int16 channel, NoteExpressionTypeID id, const TChar *string, NoteExpressionValue &valueNormalized) SMTG_OVERRIDE
tresult | getPhysicalUIMapping (int32 busIndex, int16 channel, PhysicalUIMapList &list) SMTG_OVERRIDE
Public Member Functions inherited from EditController
| EditController ()
tresult | setComponentState (IBStream *state) SMTG_OVERRIDE
tresult | setState (IBStream *state) SMTG_OVERRIDE
tresult | getState (IBStream *state) SMTG_OVERRIDE
int32 | getParameterCount () SMTG_OVERRIDE
tresult | getParameterInfo (int32 paramIndex, ParameterInfo &info) SMTG_OVERRIDE
tresult | getParamStringByValue (ParamID tag, ParamValue valueNormalized, String128 string) SMTG_OVERRIDE
tresult | getParamValueByString (ParamID tag, TChar *string, ParamValue &valueNormalized) SMTG_OVERRIDE
ParamValue | normalizedParamToPlain (ParamID tag, ParamValue valueNormalized) SMTG_OVERRIDE
ParamValue | plainParamToNormalized (ParamID tag, ParamValue plainValue) SMTG_OVERRIDE
ParamValue | getParamNormalized (ParamID tag) SMTG_OVERRIDE
tresult | setParamNormalized (ParamID tag, ParamValue value) SMTG_OVERRIDE
tresult | setComponentHandler (IComponentHandler *handler) SMTG_OVERRIDE
IPlugView * | createView (FIDString) SMTG_OVERRIDE
tresult | setKnobMode (KnobMode mode) SMTG_OVERRIDE
tresult | openHelp (TBool) SMTG_OVERRIDE
tresult | openAboutBox (TBool) SMTG_OVERRIDE
tresult | initialize (FUnknown *context) SMTG_OVERRIDE
tresult | terminate () SMTG_OVERRIDE
virtual tresult | beginEdit (ParamID tag)
virtual tresult | performEdit (ParamID tag, ParamValue valueNormalized)
virtual tresult | endEdit (ParamID tag)
virtual tresult | startGroupEdit ()
virtual tresult | finishGroupEdit ()
virtual void | editorDestroyed (EditorView *)
virtual void | editorAttached (EditorView *)
virtual void | editorRemoved (EditorView *)
virtual Parameter * | getParameterObject (ParamID tag)
virtual tresult | getParameterInfoByTag (ParamID tag, ParameterInfo &info)
virtual tresult | setDirty (TBool state)
virtual tresult | requestOpenEditor (FIDString name=ViewType::kEditor)
IComponentHandler * | getComponentHandler () const
Public Member Functions inherited from ComponentBase
| ComponentBase ()
| ~ComponentBase () override
FUnknown * | getHostContext () const
IConnectionPoint * | getPeer () const
IMessage * | allocateMessage () 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 | setComponentState (IBStream *state)=0
virtual tresult | setState (IBStream *state)=0
virtual tresult | getState (IBStream *state)=0
virtual int32 | getParameterCount ()=0
virtual tresult | getParameterInfo (int32 paramIndex, ParameterInfo &info)=0
virtual tresult | getParamStringByValue (ParamID id, ParamValue valueNormalized, String128 string)=0
virtual tresult | getParamValueByString (ParamID id, TChar *string, ParamValue &valueNormalized)=0
virtual ParamValue | normalizedParamToPlain (ParamID id, ParamValue valueNormalized)=0
virtual ParamValue | plainParamToNormalized (ParamID id, ParamValue plainValue)=0
virtual ParamValue | getParamNormalized (ParamID id)=0
virtual tresult | setParamNormalized (ParamID id, ParamValue value)=0
virtual tresult | setComponentHandler (IComponentHandler *handler)=0
virtual IPlugView * | createView (FIDString name)=0
virtual tresult | setKnobMode (KnobMode mode)=0
virtual tresult | openHelp (TBool onlyCheck)=0
virtual tresult | openAboutBox (TBool onlyCheck)=0
virtual int32 | getNoteExpressionCount (int32 busIndex, int16 channel)=0
virtual tresult | getNoteExpressionInfo (int32 busIndex, int16 channel, int32 noteExpressionIndex, NoteExpressionTypeInfo &info)=0
virtual tresult | getNoteExpressionStringByValue (int32 busIndex, int16 channel, NoteExpressionTypeID id, NoteExpressionValue valueNormalized, String128 string)=0
virtual tresult | getNoteExpressionValueByString (int32 busIndex, int16 channel, NoteExpressionTypeID id, const TChar *string, NoteExpressionValue &valueNormalized)=0
virtual tresult | getMidiControllerAssignment (int32 busIndex, int16 channel, CtrlNumber midiControllerNumber, ParamID &id)=0
virtual tresult | getPhysicalUIMapping (int32 busIndex, int16 channel, PhysicalUIMapList &list)=0
virtual tresult | onLiveMIDIControllerInput (int32 busIndex, int16 channel, CtrlNumber midiCC)=0

## Static Public Member Functions
static FUnknown * | createInstance (void *)
Static Public Member Functions inherited from Controller
static FUnknown * | createInstance (void *)
Static Public Member Functions inherited from EditController
static KnobMode | getHostKnobMode ()

## Public Attributes
DEFINE_INTERFACES DEF_INTERFACE(IMidiLearn) END_DEFINE_INTERFACES(Controller) REFCOUNT_METHODS(Controller) private VSTGUI::KeyboardViewRangeSelector::Range | keyboardRange {}
ParamID | midiLearnParamID {InvalidParamID}
bool | doMIDILearn {false}
Public Attributes inherited from Controller
std::array< ParamID, ControllerNumbers::kCountCtrlNumber > | midiCCMapping
Public Attributes inherited from EditController
OBJ_METHODS(EditController, ComponentBase) DEFINE_INTERFACES DEF_INTERFACE(IEditController) DEF_INTERFACE(IEditController2) END_DEFINE_INTERFACES(ComponentBase) REFCOUNT_METHODS(ComponentBase) protected IPtr< IComponentHandler2 > | componentHandler2
ParameterContainer | parameters
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< IConnectionPoint > | peerConnection

## Static Public Attributes
static FUID | cid
Static Public Attributes inherited from Controller
static FUID | cid
static OBJ_METHODS(Controller, EditController) DEFINE_INTERFACES DEF_INTERFACE(INoteExpressionController) DEF_INTERFACE(IMidiMapping) DEF_INTERFACE(INoteExpressionPhysicalUIMapping) END_DEFINE_INTERFACES(EditController) REFCOUNT_METHODS(EditController) protected constexpr ParamID | InvalidParamID = std::numeric_limits<ParamID>::max ()
Static Public Attributes inherited from EditController
static KnobMode | hostKnobMode
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 IEditController
static const FUID | iid
Static Public Attributes inherited from IEditController2
static const FUID | iid
Static Public Attributes inherited from INoteExpressionController
static const FUID | iid
Static Public Attributes inherited from IMidiMapping
static const FUID | iid
Static Public Attributes inherited from INoteExpressionPhysicalUIMapping
static const FUID | iid
Static Public Attributes inherited from IMidiLearn
static const FUID | iid

## Detailed Description

Example Note Expression Audio Controller + User Interface.

## Member Typedef Documentation

## ◆ UTF8StringPtr

using UTF8StringPtr = VSTGUI::UTF8StringPtr

## ◆ IController

using IController = VSTGUI::IController

## ◆ IUIDescription

using IUIDescription = VSTGUI::IUIDescription

## ◆ VST3Editor

using VST3Editor = VSTGUI::VST3Editor

## Member Function Documentation

## ◆ initialize()

tresult initialize | ( | FUnknown * | context | ) |
| virtual

Reimplemented from Controller.

## ◆ terminate()

tresult terminate | ( |  | ) |
| virtual

Reimplemented from Controller.

## ◆ createView()

IPlugView * createView | ( | FIDString | name | ) |
| virtual

Reimplemented from EditController.

## ◆ setState()

tresult setState | ( | IBStream * | state | ) |
| virtual

Reimplemented from EditController.

## ◆ getState()

tresult getState | ( | IBStream * | state | ) |
| virtual

Reimplemented from EditController.

## ◆ beginEdit()

tresult beginEdit | ( | ParamID | tag | ) |
| virtual

Reimplemented from EditController.

## ◆ performEdit()

tresult performEdit | ( | ParamID | tag,
|  | ParamValue | valueNormalized
| ) |  |
| virtual

Reimplemented from EditController.

## ◆ endEdit()

tresult endEdit | ( | ParamID | tag | ) |
| virtual

Reimplemented from EditController.

## ◆ onLiveMIDIControllerInput()

tresult onLiveMIDIControllerInput | ( | int32 | busIndex,
|  | int16 | channel,
|  | CtrlNumber | midiCC
| ) |  |
| virtual

Implements IMidiLearn.

## ◆ createSubController()

IController * createSubController | ( | UTF8StringPtr | name,
|  | const IUIDescription * | description,
|  | VST3Editor * | editor
| ) |  |

## ◆ isPrivateParameter()

bool isPrivateParameter | ( | const ParamID | paramID | ) |

## ◆ createInstance()

static FUnknown * createInstance | ( | void * |  | ) |
| inline static

## Member Data Documentation

## ◆ cid

FUID cid
| static

## ◆ keyboardRange

DEFINE_INTERFACES DEF_INTERFACE (IMidiLearn) END_DEFINE_INTERFACES (Controller) REFCOUNT_METHODS (Controller) private VSTGUI::KeyboardViewRangeSelector::Range keyboardRange {}

## ◆ midiLearnParamID

ParamID midiLearnParamID {InvalidParamID}

## ◆ doMIDILearn

bool doMIDILearn {false}

Empty

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