LMMS
Loading...
Searching...
No Matches
Steinberg::IPluginBase Class Referenceabstract

#include <ipluginbase.h>

Inheritance diagram for Steinberg::IPluginBase:
Steinberg::FUnknown Steinberg::Vst::ComponentBase Steinberg::Vst::IComponent Steinberg::Vst::IEditController Steinberg::Vst::Component Steinberg::Vst::EditController Steinberg::Vst::Component Steinberg::Vst::EditController Steinberg::Vst::EditControllerEx1 Steinberg::Vst::EditControllerEx1

Public Member Functions

virtual tresult PLUGIN_API initialize (FUnknown *context)=0
virtual tresult PLUGIN_API terminate ()=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 FUID iid
Static Public Attributes inherited from Steinberg::FUnknown
static const FUID iid

Detailed Description

Basic interface to a plug-in component: IPluginBase

  • [plug imp]
  • initialize/terminate the plug-in component

The host uses this interface to initialize and to terminate the plug-in component. The context that is passed to the initialize method contains any interface to the host that the plug-in will need to work. These interfaces can vary from category to category. A list of supported host context interfaces should be included in the documentation of a specific category.

Member Function Documentation

◆ initialize()

virtual tresult PLUGIN_API Steinberg::IPluginBase::initialize ( FUnknown * context)
pure virtual

The host passes a number of interfaces as context to initialize the plug-in class.

Note
Extensive memory allocations etc. should be performed in this method rather than in the class' constructor! If the method does NOT return kResultOk, the object is released immediately. In this case terminate is not called!

Implemented in Steinberg::Vst::Component, Steinberg::Vst::ComponentBase, and Steinberg::Vst::EditController.

◆ terminate()

virtual tresult PLUGIN_API Steinberg::IPluginBase::terminate ( )
pure virtual

This function is called before the plug-in is unloaded and can be used for cleanups. You have to release all references to any host application interfaces.

Implemented in Steinberg::Vst::Component, Steinberg::Vst::ComponentBase, Steinberg::Vst::EditController, and Steinberg::Vst::EditControllerEx1.

Member Data Documentation

◆ iid

const FUID Steinberg::IPluginBase::iid
static

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