VST 3 SDK: EditController Class Reference
Author: Steinberg

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

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Macros Groups Pages
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
EditController Class Reference
VST Implementation Helper Classes

Default implementation for a VST 3 edit controller. More...

`#include <vsteditcontroller.h>`

Inheritance diagram for EditController:

## Public Member Functions
| 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)
| to be called before a serie of performEdit
virtual tresult | performEdit (ParamID tag, ParamValue valueNormalized)
| will inform the host about the value change
virtual tresult | endEdit (ParamID tag)
| to be called after a serie of performEdit
virtual tresult | startGroupEdit ()
| calls IComponentHandler2::startGroupEdit() if host supports it
virtual tresult | finishGroupEdit ()
| calls IComponentHandler2::finishGroupEdit() if host supports it
virtual void | editorDestroyed (EditorView *)
| called from EditorView if it was destroyed
virtual void | editorAttached (EditorView *)
| called from EditorView if it was attached to a parent
virtual void | editorRemoved (EditorView *)
| called from EditorView if it was removed from a parent
virtual Parameter * | getParameterObject (ParamID tag)
| Gets for a given tag the parameter object.
virtual tresult | getParameterInfoByTag (ParamID tag, ParameterInfo &info)
| Gets for a given tag the parameter information.
virtual tresult | setDirty (TBool state)
| Calls IComponentHandler2::setDirty (state) if host supports it.
virtual tresult | requestOpenEditor (FIDString name=ViewType::kEditor)
| Calls IComponentHandler2::requestOpenEditor (name) if host supports it.
IComponentHandler * | getComponentHandler () const
Public Member Functions inherited from ComponentBase
| ComponentBase ()
| ~ComponentBase () override
FUnknown * | getHostContext () const
| Returns the hostContext (set by the host during initialize call).
IConnectionPoint * | getPeer () const
| Returns the peer for the messaging communication (you can only use IConnectionPoint::notify for communicate between peers, do not try to cast peerConnection.
IMessage * | allocateMessage () const
| Allocates a message instance (do not forget to release it).
tresult | sendMessage (IMessage *message) const
| Sends the given message to the peer.
tresult | sendTextMessage (const char8 *text) const
| Sends a simple text message to the peer (max 255 characters).
tresult | sendMessageID (const char8 *messageID) const
| Sends a message with a given ID without any other payload.
virtual tresult | receiveText (const char8 *text)
| Receives a simple text message from the peer (max 255 characters).
tresult | connect (IConnectionPoint *other) SMTG_OVERRIDE
tresult | disconnect (IConnectionPoint *other) SMTG_OVERRIDE
tresult | notify (IMessage *message) SMTG_OVERRIDE

## Static Public Member Functions
static KnobMode | getHostKnobMode ()
| return host knob mode

## Public Attributes
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 KnobMode | hostKnobMode = kCircularMode
Static Public Attributes inherited from IEditController
static const FUID | iid
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 IEditController2
static const FUID | iid

## Detailed Description

Default implementation for a VST 3 edit controller.

Can be used as base class for a specific controller implementation

## Constructor & Destructor Documentation

EditController | ( |  | ) |

## Member Function Documentation

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

Implements IEditController.

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

Implements IEditController.

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

Implements IEditController.

int32 getParameterCount | ( |  | ) |
| virtual

Implements IEditController.

tresult getParameterInfo | ( | int32 | paramIndex,
|  | ParameterInfo & | info
| ) |  |
| virtual

Implements IEditController.

tresult getParamStringByValue | ( | ParamID | tag,
|  | ParamValue | valueNormalized,
|  | String128 | string
| ) |  |
| virtual

Implements IEditController.

tresult getParamValueByString | ( | ParamID | tag,
|  | TChar * | string,
|  | ParamValue & | valueNormalized
| ) |  |
| virtual

Implements IEditController.

ParamValue normalizedParamToPlain | ( | ParamID | tag,
|  | ParamValue | valueNormalized
| ) |  |
| virtual

Implements IEditController.

ParamValue plainParamToNormalized | ( | ParamID | tag,
|  | ParamValue | plainValue
| ) |  |
| virtual

Implements IEditController.

ParamValue getParamNormalized | ( | ParamID | tag | ) |
| virtual

Implements IEditController.

tresult setParamNormalized | ( | ParamID | tag,
|  | ParamValue | value
| ) |  |
| virtual

Implements IEditController.

tresult setComponentHandler | ( | IComponentHandler * | handler | ) |
| virtual

Implements IEditController.

IPlugView* createView | ( | FIDString |  | ) |
| inlinevirtual

Implements IEditController.

tresult setKnobMode | ( | KnobMode | mode | ) |
| inlinevirtual

Implements IEditController2.

tresult openHelp | ( | TBool |  | ) |
| inlinevirtual

Implements IEditController2.

tresult openAboutBox | ( | TBool |  | ) |
| inlinevirtual

Implements IEditController2.

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

Reimplemented from ComponentBase.

Reimplemented in SingleComponentEffect.

tresult terminate | ( |  | ) |
| virtual

Reimplemented from ComponentBase.

Reimplemented in EditControllerEx1, and SingleComponentEffect.

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

to be called before a serie of performEdit

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

will inform the host about the value change

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

to be called after a serie of performEdit

tresult startGroupEdit | ( |  | ) |
| virtual

calls IComponentHandler2::startGroupEdit() if host supports it

tresult finishGroupEdit | ( |  | ) |
| virtual

calls IComponentHandler2::finishGroupEdit() if host supports it

virtual void editorDestroyed | ( | EditorView * |  | ) |
| inlinevirtual

called from EditorView if it was destroyed

virtual void editorAttached | ( | EditorView * |  | ) |
| inlinevirtual

called from EditorView if it was attached to a parent

virtual void editorRemoved | ( | EditorView * |  | ) |
| inlinevirtual

called from EditorView if it was removed from a parent

static KnobMode getHostKnobMode | ( |  | ) |
| inlinestatic

return host knob mode

virtual Parameter* getParameterObject | ( | ParamID | tag | ) |
| inlinevirtual

Gets for a given tag the parameter object.

tresult getParameterInfoByTag | ( | ParamID | tag,
|  | ParameterInfo & | info
| ) |  |
| virtual

Gets for a given tag the parameter information.

tresult setDirty | ( | TBool | state | ) |
| virtual

Calls IComponentHandler2::setDirty (state) if host supports it.

tresult requestOpenEditor | ( | FIDString | name = `ViewType::kEditor` | ) |
| virtual

Calls IComponentHandler2::requestOpenEditor (name) if host supports it.

IComponentHandler* getComponentHandler | ( |  | ) | const
| inline

## Member Data Documentation

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

KnobMode hostKnobMode = kCircularMode
| static

Empty

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