VST 3 SDK  VST 3.6.5
SDK for developing VST Plug-in
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Macros Groups Pages
Public Member Functions | Data Fields
EditControllerEx1 Class Reference

Advanced implementation (support IUnitInfo) for a VST 3 edit controller. More...

#include <vsteditcontroller.h>

+ Inheritance diagram for EditControllerEx1:

Public Member Functions

 EditControllerEx1 ()
 
virtual ~EditControllerEx1 ()
 
bool addUnit (Unit *unit)
 Adds a given unit. More...
 
bool addProgramList (ProgramList *list)
 Adds a given program list. More...
 
ProgramListgetProgramList (ProgramListID listId) const
 Returns the ProgramList associated to a given listId. More...
 
tresult notifyPogramListChange (ProgramListID listId, int32 programIndex=kAllProgramInvalid)
 Notifies the host about program list changes. More...
 
virtual int32 getUnitCount ()
 
virtual tresult getUnitInfo (int32 unitIndex, UnitInfo &info)
 
virtual int32 getProgramListCount ()
 
virtual tresult getProgramListInfo (int32 listIndex, ProgramListInfo &info)
 
virtual tresult getProgramName (ProgramListID listId, int32 programIndex, String128 name)
 
virtual tresult getProgramInfo (ProgramListID listId, int32 programIndex, CString attributeId, String128 attributeValue)
 
virtual tresult hasProgramPitchNames (ProgramListID listId, int32 programIndex)
 
virtual tresult getProgramPitchName (ProgramListID listId, int32 programIndex, int16 midiPitch, String128 name)
 
virtual tresult setProgramName (ProgramListID listId, int32 programIndex, const String128 name)
 
virtual UnitID getSelectedUnit ()
 
virtual tresult selectUnit (UnitID unitId)
 
virtual tresult getUnitByBus (MediaType, BusDirection, int32, int32, UnitID &)
 
virtual tresult setUnitProgramData (int32, int32, IBStream *)
 
virtual tresult notifyUnitSelection ()
 Notifies the host about the selected Unit. More...
 
virtual void update (FUnknown *changedUnknown, int32 message)
 
- Public Member Functions inherited from EditController
 EditController ()
 
virtual tresult setComponentState (IBStream *state)
 
virtual tresult setState (IBStream *state)
 
virtual tresult getState (IBStream *state)
 
virtual int32 getParameterCount ()
 
virtual tresult getParameterInfo (int32 paramIndex, ParameterInfo &info)
 
virtual tresult getParamStringByValue (ParamID tag, ParamValue valueNormalized, String128 string)
 
virtual tresult getParamValueByString (ParamID tag, TChar *string, ParamValue &valueNormalized)
 
virtual ParamValue normalizedParamToPlain (ParamID tag, ParamValue valueNormalized)
 
virtual ParamValue plainParamToNormalized (ParamID tag, ParamValue plainValue)
 
virtual ParamValue getParamNormalized (ParamID tag)
 
virtual tresult setParamNormalized (ParamID tag, ParamValue value)
 
virtual tresult setComponentHandler (IComponentHandler *handler)
 
virtual IPlugViewcreateView (FIDString)
 
virtual tresult setKnobMode (KnobMode mode)
 
virtual tresult openHelp (TBool)
 
virtual tresult openAboutBox (TBool)
 
virtual tresult initialize (FUnknown *context)
 
virtual tresult terminate ()
 
virtual tresult beginEdit (ParamID tag)
 to be called before a serie of performEdit More...
 
virtual tresult performEdit (ParamID tag, ParamValue valueNormalized)
 will inform the host about the value change More...
 
virtual tresult endEdit (ParamID tag)
 to be called after a serie of performEdit More...
 
virtual tresult startGroupEdit ()
 calls IComponentHandler2::startGroupEdit() if host supports it More...
 
virtual tresult finishGroupEdit ()
 calls IComponentHandler2::finishGroupEdit() if host supports it More...
 
virtual void editorDestroyed (EditorView *)
 called from EditorView if it was destroyed More...
 
virtual void editorAttached (EditorView *)
 called from EditorView if it was attached to a parent More...
 
virtual void editorRemoved (EditorView *)
 called from EditorView if it was removed from a parent More...
 
virtual ParametergetParameterObject (ParamID tag)
 Gets for a given tag the parameter object. More...
 
virtual tresult getParameterInfoByTag (ParamID tag, ParameterInfo &info)
 Gets for a given tag the parameter information. More...
 
virtual tresult setDirty (TBool state)
 Calls IComponentHandler2::setDirty (state) if host supports it. More...
 
virtual tresult requestOpenEditor (FIDString name=ViewType::kEditor)
 Calls IComponentHandler2::requestOpenEditor (name) if host supports it. More...
 
IComponentHandlergetComponentHandler () const
 
- Public Member Functions inherited from ComponentBase
 ComponentBase ()
 
virtual ~ComponentBase ()
 
FUnknowngetHostContext ()
 Returns the hostContext (set by the host during initialize call). More...
 
IConnectionPointgetPeer ()
 Returns the peer for the messaging communication (you can only use IConnectionPoint::notify for communicate between peers, do not try to cast peerConnection. More...
 
IMessageallocateMessage ()
 Allocates a message instance (don't forget to release it). More...
 
tresult sendMessage (IMessage *message)
 Sends the given message to the peer. More...
 
tresult sendTextMessage (const char8 *text)
 Sends a simple text message to the peer (max 255 characters). More...
 
virtual tresult receiveText (const char8 *text)
 Receives a simple text message from the peer (max 255 characters). More...
 
tresult connect (IConnectionPoint *other)
 
tresult disconnect (IConnectionPoint *other)
 
tresult notify (IMessage *message)
 
- Public Member Functions inherited from FUnknown
virtual tresult queryInterface (const TUID _iid, void **obj)=0
 
virtual uint32 addRef ()=0
 
virtual uint32 release ()=0
 

Data Fields

OBJ_METHODS(EditControllerEx1,
EditController)
DEFINE_INTERFACES
DEF_INTERFACE(IUnitInfo)
END_DEFINE_INTERFACES(EditController)
REFCOUNT_METHODS(EditController)
protected TDictionary
< ProgramListID, IPtr
< ProgramList > > 
programLists
 
UnitID selectedUnit
 
- Data Fields inherited from EditController
OBJ_METHODS(EditController,
ComponentBase)
DEFINE_INTERFACES
DEF_INTERFACE(IEditController)
DEF_INTERFACE(IEditController2)
END_DEFINE_INTERFACES(ComponentBase)
REFCOUNT_METHODS(ComponentBase)
protected IComponentHandler2
componentHandler2
 
ParameterContainer parameters
 
- Data Fields inherited from ComponentBase
OBJ_METHODS(ComponentBase,
FObject) DEFINE_INTERFACES
DEF_INTERFACE(IPluginBase)
DEF_INTERFACE(IConnectionPoint)
END_DEFINE_INTERFACES(FObject)
REFCOUNT_METHODS(FObject)
protected IConnectionPoint
peerConnection
 

Additional Inherited Members

- Static Public Member Functions inherited from EditController
static KnobMode getHostKnobMode ()
 return host knob mode More...
 
- Static Public Attributes inherited from EditController
static KnobMode hostKnobMode = kCircularMode
 
- 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 IUnitInfo
static const FUID iid
 

Detailed Description

Advanced implementation (support IUnitInfo) for a VST 3 edit controller.

Constructor & Destructor Documentation

~EditControllerEx1 ( )
virtual

Member Function Documentation

bool addUnit ( Unit unit)

Adds a given unit.

bool addProgramList ( ProgramList list)

Adds a given program list.

ProgramList * getProgramList ( ProgramListID  listId) const

Returns the ProgramList associated to a given listId.

tresult notifyPogramListChange ( ProgramListID  listId,
int32  programIndex = kAllProgramInvalid 
)

Notifies the host about program list changes.

virtual int32 getUnitCount ( )
inlinevirtual

Implements IUnitInfo.

tresult getUnitInfo ( int32  unitIndex,
UnitInfo info 
)
virtual

Implements IUnitInfo.

int32 getProgramListCount ( )
virtual

Implements IUnitInfo.

tresult getProgramListInfo ( int32  listIndex,
ProgramListInfo info 
)
virtual

Implements IUnitInfo.

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

Implements IUnitInfo.

tresult getProgramInfo ( ProgramListID  listId,
int32  programIndex,
CString  attributeId,
String128  attributeValue 
)
virtual

Implements IUnitInfo.

tresult hasProgramPitchNames ( ProgramListID  listId,
int32  programIndex 
)
virtual

Implements IUnitInfo.

tresult getProgramPitchName ( ProgramListID  listId,
int32  programIndex,
int16  midiPitch,
String128  name 
)
virtual

Implements IUnitInfo.

tresult setProgramName ( ProgramListID  listId,
int32  programIndex,
const String128  name 
)
virtual
virtual UnitID getSelectedUnit ( )
inlinevirtual

Implements IUnitInfo.

virtual tresult selectUnit ( UnitID  unitId)
inlinevirtual

Implements IUnitInfo.

virtual tresult getUnitByBus ( MediaType  ,
BusDirection  ,
int32  ,
int32  ,
UnitID  
)
inlinevirtual

Implements IUnitInfo.

virtual tresult setUnitProgramData ( int32  ,
int32  ,
IBStream  
)
inlinevirtual

Implements IUnitInfo.

tresult notifyUnitSelection ( )
virtual

Notifies the host about the selected Unit.

void update ( FUnknown changedUnknown,
int32  message 
)
virtual

Field Documentation

OBJ_METHODS (EditControllerEx1, EditController) DEFINE_INTERFACES DEF_INTERFACE (IUnitInfo) END_DEFINE_INTERFACES (EditController) REFCOUNT_METHODS(EditController) protected TDictionary<ProgramListID, IPtr<ProgramList> > programLists
UnitID selectedUnit
Empty

Copyright ©2015 Steinberg Media Technologies GmbH. All Rights Reserved.