VST 3 Examples: BaseController Class Reference
Author: Steinberg

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

- Main Page
- 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 Types | Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
BaseController Class Reference

`#include <mdaBaseController.h>`

Inheritance diagram for BaseController:

## Public Types
enum | { kMagicNumber = 9999999, kBypassParam = 'bpas', kPresetParam = 'prst', kModWheelParam = 'modw', kBreathParam = 'brth', kCtrler3Param = 'ct03', kExpressionParam = 'expr', kPitchBendParam = 'pitb', kSustainParam = 'sust', kAftertouchParam = 'aftt' }
Public Types inherited from EditControllerEx1
typedef (EditControllerEx1, EditController) DEFINE_INTERFACES DEF_INTERFACE(IUnitInfo) END_DEFINE_INTERFACES(EditController) REFCOUNT_METHODS(EditController) protected std::map < ProgramListID, ProgramListVector::size_type > | ProgramIndexMap
typedef std::vector< IPtr< Unit >> | UnitVector

## Public Member Functions
| BaseController ()
tresult | initialize (FUnknown *context) SMTG_OVERRIDE
tresult | setComponentState (IBStream *state) SMTG_OVERRIDE
tresult | notify (IMessage *message) SMTG_OVERRIDE
int32 | getProgramListCount () SMTG_OVERRIDE
tresult | getProgramListInfo (int32 listIndex, ProgramListInfo &info) SMTG_OVERRIDE
tresult | getProgramName (ProgramListID listId, int32 programIndex, String128 name) SMTG_OVERRIDE
tresult | getMidiControllerAssignment (int32 busIndex, int16 channel, CtrlNumber midiControllerNumber, ParamID &tag) SMTG_OVERRIDE
ParameterContainer & | getParameters ()
| DELEGATE_REFCOUNT (EditControllerEx1) tresult queryInterface(const char *iid
Public Member Functions inherited from EditControllerEx1
| EditControllerEx1 ()
| ~EditControllerEx1 () override
tresult | terminate () SMTG_OVERRIDE
bool | addUnit (Unit *unit)
bool | addProgramList (ProgramList *list)
ProgramList * | getProgramList (ProgramListID listId) const
tresult | notifyProgramListChange (ProgramListID listId, int32 programIndex=kAllProgramInvalid)
int32 | getUnitCount () SMTG_OVERRIDE
tresult | getUnitInfo (int32 unitIndex, UnitInfo &info) SMTG_OVERRIDE
tresult | getProgramInfo (ProgramListID listId, int32 programIndex, CString attributeId, String128 attributeValue) SMTG_OVERRIDE
tresult | hasProgramPitchNames (ProgramListID listId, int32 programIndex) SMTG_OVERRIDE
tresult | getProgramPitchName (ProgramListID listId, int32 programIndex, int16 midiPitch, String128 name) SMTG_OVERRIDE
virtual tresult | setProgramName (ProgramListID listId, int32 programIndex, const String128 name)
UnitID | getSelectedUnit () SMTG_OVERRIDE
tresult | selectUnit (UnitID unitId) SMTG_OVERRIDE
tresult | getUnitByBus (MediaType, BusDirection, int32, int32, UnitID &) SMTG_OVERRIDE
tresult | setUnitProgramData (int32, int32, IBStream *) SMTG_OVERRIDE
virtual tresult | notifyUnitSelection ()
void | update (FUnknown *changedUnknown, int32 message) SMTG_OVERRIDE
Public Member Functions inherited from EditController
| EditController ()
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
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 Attributes
void **obj | SMTG_OVERRIDE
Public Attributes inherited from EditControllerEx1
UnitVector | units
ProgramListVector | programLists
ProgramIndexMap | programIndexMap
UnitID | selectedUnit
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

## Static Public Attributes
static const TChar | kMicroSecondsString [] = {0x00b5, 0x0073, 0x0}
Static Public Attributes inherited from IMidiMapping
static const FUID | iid
Static Public Attributes inherited from FUnknown
static const FUID | iid

## Protected Member Functions
double | getSampleRate () const

## Protected Attributes
int32 | midiCCParamID [kCountCtrlNumber]
double | sampleRate
bool | addBypassParameter

## Additional Inherited Members
Static Public Member Functions inherited from EditController
static KnobMode | getHostKnobMode ()

## Member Enumeration Documentation

anonymous enum

Enumerator
kMagicNumber |
kBypassParam |
kPresetParam |
kModWheelParam |
kBreathParam |
kCtrler3Param |
kExpressionParam |
kPitchBendParam |
kSustainParam |
kAftertouchParam |

## Constructor & Destructor Documentation

BaseController | ( |  | ) |

## Member Function Documentation

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

Reimplemented from EditController.

Reimplemented in SpecMeterController, TestToneController, DubDelayController, LimiterController, BeatBoxController, ComboController, DeEsserController, DegradeController, DelayController, DetuneController, DitherController, DX10Controller, DynamicsController, EPianoController, ImageController, JX10Controller, LeslieController, LoudnessController, MultiBandController, OverdriveController, PianoController, RePsychoController, RezFilterController, RingModController, RoundPanController, ShepardController, SplitterController, StereoController, SubSynthController, TalkBoxController, ThruZeroController, and TrackerController.

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

Reimplemented from EditController.

tresult notify | ( | IMessage * | message | ) |
| virtual

Implements IConnectionPoint.

int32 getProgramListCount | ( |  | ) |
| virtual

Reimplemented from EditControllerEx1.

tresult getProgramListInfo | ( | int32 | listIndex,
|  | ProgramListInfo & | info
| ) |  |
| virtual

Reimplemented from EditControllerEx1.

tresult getProgramName | ( | ProgramListID | listId,
|  | int32 | programIndex,
|  | String128 | name
| ) |  |
| virtual

Reimplemented from EditControllerEx1.

tresult getMidiControllerAssignment | ( | int32 | busIndex,
|  | int16 | channel,
|  | CtrlNumber | midiControllerNumber,
|  | ParamID & | tag
| ) |  |
| virtual

Implements IMidiMapping.

ParameterContainer& getParameters | ( |  | ) |
| inline

DELEGATE_REFCOUNT | ( | EditControllerEx1 |  | ) | const

double getSampleRate | ( |  | ) | const
| inlineprotected

## Member Data Documentation

void** obj SMTG_OVERRIDE

const TChar kMicroSecondsString = {0x00b5, 0x0073, 0x0}
| static

int32 midiCCParamID[kCountCtrlNumber]
| protected

double sampleRate
| protected

bool addBypassParameter
| protected

Empty

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