LMMS
Loading...
Searching...
No Matches
Presonus::ISlaveControllerHandler Struct Referenceabstract

#include <ipsleditcontroller.h>

Inheritance diagram for Presonus::ISlaveControllerHandler:
Steinberg::FUnknown

Public Member Functions

virtual Steinberg::tresult PLUGIN_API addSlave (Steinberg::Vst::IEditController *slave, Steinberg::int32 slaveMode)=0
virtual Steinberg::tresult PLUGIN_API removeSlave (Steinberg::Vst::IEditController *slave)=0
Public Member Functions inherited from Steinberg::FUnknown
virtual tresult PLUGIN_API queryInterface (const TUID _iid, void **obj)=0
virtual uint32 PLUGIN_API addRef ()=0
virtual uint32 PLUGIN_API release ()=0

Static Public Attributes

static const Steinberg::FUID iid
Static Public Attributes inherited from Steinberg::FUnknown
static const FUID iid

Detailed Description

Extension to Steinberg::Vst::IEditController used to notify the plug-in about slave instances.

The host might decide to use "cloned" (slave) instances in various scenarios, e.g. to process audio paths with different latencies simultaneously or to synchronize grouped plug-in instances between multiple mixer channels - see SlaveMode. In this case multiple plug-in instances are active at the same time even though it looks like one to the user, i.e. only the editor of the master instance is visible and can be used to change parameters. The edit controller implementation has to synchronize parameter changes between instances that aren't visible to the host internally.

Member Function Documentation

◆ addSlave()

virtual Steinberg::tresult PLUGIN_API Presonus::ISlaveControllerHandler::addSlave ( Steinberg::Vst::IEditController * slave,
Steinberg::int32 slaveMode )
pure virtual

Add slave edit controller. Implementation must sync non-automatable parameters between this instance (master) and given slave instance internally, i.e. when the master (this) changes update all connected slaves.

◆ removeSlave()

virtual Steinberg::tresult PLUGIN_API Presonus::ISlaveControllerHandler::removeSlave ( Steinberg::Vst::IEditController * slave)
pure virtual

Remove slave edit controller.

Member Data Documentation

◆ iid

const Steinberg::FUID Presonus::ISlaveControllerHandler::iid
static

The documentation for this struct was generated from the following file: