|
VST 3 SDK VST 3.7
SDK for developing VST plug-in
|
Namespaces | |
| namespace | Algo |
| namespace | Attributes |
| namespace | AttributesFlags |
| namespace | AttributesFunction |
| namespace | AttributesStyle |
| namespace | ChannelContext |
| namespace | CurveType |
| namespace | FunctionNameType |
| namespace | Helpers |
| namespace | InterAppAudio |
| namespace | LayerType |
| namespace | MPE |
| namespace | MusicalCharacter |
| namespace | MusicalInstrument |
| namespace | MusicalStyle |
| namespace | PlugType |
| namespace | PresetAttributes |
| namespace | SampleAccurate |
| namespace | SpeakerArr |
| namespace | StateType |
| namespace | StringConvert |
| namespace | Test |
| namespace | UMP |
| namespace | ViewType |
Classes | |
| class | AudioBuffer |
| class | AudioBus |
| Description of an Audio Bus. More... | |
| struct | AudioBusBuffers |
| class | AudioEffect |
| Default implementation for a VST 3 audio effect. More... | |
| class | BufferStream |
| Stream implementation for a memory buffer. More... | |
| class | Bus |
| Basic Bus object. More... | |
| struct | BusInfo |
| class | BusList |
| List of Busses. More... | |
| class | BypassProcessor |
| struct | Chord |
| struct | ChordEvent |
| class | Component |
| Default implementation for a VST 3 Component. More... | |
| class | ComponentBase |
| Base class for VST 3 Component and Edit Controller. More... | |
| class | ConnectionProxy |
| Helper for creating and initializing component. More... | |
| struct | DataEvent |
| struct | DataExchangeBlock |
| class | DataExchangeHandler |
| Helper class to provide a single API for plug-ins to transfer data from the realtime audio process to the edit controller either via the backwards compatible message handling protocol (see IMessage) or the new IDataExchangeHandler/IDataExchangeReceiver API. More... | |
| class | DataExchangeReceiverHandler |
| Helper class to provide a single API for plug-ins to transfer data from the realtime audio process to the edit controller either via the message handling protocol (see IMessage) or the new IDataExchangeHandler/IDataExchangeReceiver API. More... | |
| class | EditController |
| Default implementation for a VST 3 edit controller. More... | |
| class | EditControllerEx1 |
| Advanced implementation (support IUnitInfo) for a VST 3 edit controller. More... | |
| class | EditorView |
| View related to an edit controller. More... | |
| struct | Event |
| class | EventBus |
| Description of an Event Bus. More... | |
| class | EventList |
| Example implementation of IEventList. More... | |
| class | FileStream |
| Stream implementation for a file using stdio. More... | |
| struct | FrameRate |
| class | HostApplication |
| Implementation's example of IHostApplication. More... | |
| class | HostAttributeList |
| Example, ready to use implementation of IAttributeList. More... | |
| struct | HostDataExchangeHandler |
| class | HostMessage |
| Example implementation of IMessage. More... | |
| class | HostProcessData |
| Extension of ProcessData. More... | |
| class | IAttributeList |
| class | IAudioPresentationLatency |
| class | IAudioProcessor |
| class | IAutomationState |
| class | IComponent |
| class | IComponentHandler |
| class | IComponentHandler2 |
| class | IComponentHandler3 |
| class | IComponentHandlerBusActivation |
| class | IComponentHandlerSystemTime |
| class | IConnectionPoint |
| class | IContextMenu |
| struct | IContextMenuItem |
| class | IContextMenuTarget |
| class | IDataExchangeHandler |
| struct | IDataExchangeHandlerHost |
| class | IDataExchangeReceiver |
| class | IEditController |
| class | IEditController2 |
| class | IEditControllerHostEditing |
| class | IEventList |
| class | IHostApplication |
| class | IInterAppAudioConnectionNotification |
| class | IInterAppAudioHost |
| class | IInterAppAudioPresetManager |
| class | IKeyswitchController |
| class | IMessage |
| class | IMidiLearn |
| class | IMidiMapping |
| class | INoteExpressionController |
| class | INoteExpressionPhysicalUIMapping |
| class | IParameterChanges |
| class | IParameterFinder |
| class | IParameterFunctionName |
| class | IParamValueQueue |
| class | IPlugInterfaceSupport |
| class | IPrefetchableSupport |
| class | IProcessContextRequirements |
| class | IProgramListData |
| class | IProgress |
| class | IRemapParamID |
| class | IStreamAttributes |
| class | ITestPlugProvider |
| class | ITestPlugProvider2 |
| class | IUnitData |
| class | IUnitHandler |
| class | IUnitHandler2 |
| class | IUnitInfo |
| class | IVst3ToAAXWrapper |
| class | IVst3ToAUWrapper |
| class | IVst3ToVst2Wrapper |
| class | IVst3WrapperMPESupport |
| class | IXmlRepresentationController |
| struct | KeyswitchInfo |
| struct | LegacyMIDICCOutEvent |
| struct | NoteExpressionTextEvent |
| class | NoteExpressionType |
| Note expression type object. More... | |
| class | NoteExpressionTypeContainer |
| Collection of note expression types. More... | |
| struct | NoteExpressionTypeInfo |
| struct | NoteExpressionValueDescription |
| struct | NoteExpressionValueEvent |
| struct | NoteOffEvent |
| struct | NoteOnEvent |
| class | ParamChanges |
| AutomationTest helper classes: implementation of IParamValueQueue. More... | |
| class | Parameter |
| Description of a Parameter. More... | |
| class | ParameterChanges |
| Implementation's example of IParameterChanges - not threadsave!. More... | |
| class | ParameterChangeTransfer |
| Ring buffer for transferring parameter changes from a writer to a read thread . More... | |
| class | ParameterContainer |
| Collection of parameters. More... | |
| struct | ParameterInfo |
| class | ParameterValueQueue |
| Implementation's example of IParamValueQueue - not threadsave!. More... | |
| class | ParamPoint |
| AutomationTest helper classes. More... | |
| struct | PhysicalUIMap |
| struct | PhysicalUIMapList |
| class | PluginContextFactory |
| class | PlugInterfaceSupport |
| Example implementation of IPlugInterfaceSupport. More... | |
| class | PlugProvider |
| Helper for creating and initializing component. More... | |
| struct | PolyPressureEvent |
| class | PresetFile |
| Handler for a VST 3 Preset File. More... | |
| struct | ProcessContext |
| class | ProcessContextRequirements |
| struct | ProcessData |
| class | ProcessDataSlicer |
| Process Data Slicer. More... | |
| struct | ProcessSetup |
| class | ProgramList |
| ProgramList element. More... | |
| struct | ProgramListInfo |
| class | ProgramListWithPitchNames |
| ProgramListWithPitchNames element. More... | |
| class | RangeNoteExpressionType |
| Note expression type object representing a custom range. More... | |
| class | RangeParameter |
| Description of a RangeParameter. More... | |
| class | ReadOnlyBStream |
| Stream representing a Read-Only subsection of its source stream. More... | |
| struct | RepresentationInfo |
| struct | RoutingInfo |
| struct | RTTransferT |
| Transfer objects from a non realtime thread to a realtime one. More... | |
| struct | ScaleEvent |
| class | SingleComponentEffect |
| Default implementation for a non-distributable Plug-in that combines processor and edit controller in one component. More... | |
| class | SpeakerArray |
| Helper class representing speaker arrangement as array of speaker types. More... | |
| class | StringListParameter |
| Description of a StringListParameter. More... | |
| class | StringResult |
| class | SystemTime |
| SystemTime Helper class. More... | |
| class | TestBase |
| Test Helper. More... | |
| struct | TestDefaults |
| class | TestEnh |
| Test Helper. More... | |
| struct | TestingPluginContext |
| class | ThreadChecker |
| class | Unit |
| Unit element. More... | |
| struct | UnitInfo |
| class | VSTGUIEditor |
| Base class for an edit view using VSTGUI. More... | |
| class | XmlRepresentationHelper |
| Helper for XML Representation creation. More... | |
Enumerations | |
| enum | ComponentFlags |
| enum | SymbolicSampleSizes |
| enum | ProcessModes |
| enum | MediaTypes |
| enum | BusDirections |
| enum | BusTypes |
| enum | IoModes |
| enum | RestartFlags |
| enum | KnobModes |
| enum | NoteIDUserRange |
| enum | ControllerNumbers |
| enum | NoteExpressionTypeIDs |
| enum | KeyswitchTypeIDs |
| enum | PhysicalUITypeIDs |
| enum | ePrefetchableSupport |
| enum | ChunkType { kHeader , kComponentState , kControllerState , kProgramData , kMetaInfo , kChunkList , kNumPresetChunks } |
Functions | |
| IMessage * | allocateMessage (IHostApplication *host) |
| void ** | getChannelBuffersPointer (const ProcessSetup &processSetup, const AudioBusBuffers &bufs) |
| Returns the current channelBuffers used (depending of symbolicSampleSize). More... | |
| uint32 | getSampleFramesSizeInBytes (const ProcessSetup &processSetup, int32 numSamples) |
| Returns the size in bytes of numSamples for one channel depending of symbolicSampleSize. More... | |
| uint64 | getChannelMask (int32 numChannels) |
| return the bit-mask of channels for the given number of channel for example: numChannels = 1 => 0b0001 (binar) = 0x01 = 1 (decimal) numChannels = 2 => 0b0011 (binar) = 0x03 = 3 (decimal) numChannels = 6 => 0b0011 1111 (binar) = 0x3F = 63 (decimal) More... | |
| tresult | getSpeakerChannelIndex (SpeakerArrangement arrangement, uint64 speaker, int32 &channel) |
| Gets the channel index of a given speaker in a arrangement, returns kResultFalse if speaker not part of the arrangement else returns kResultTrue. More... | |
| void | setupVSTGUIBundleSupport (void *hInstance) |
| const ChunkID & | getChunkID (ChunkType type) |
| bool | verify (tresult result) |
| bool | copyStream (IBStream *inStream, IBStream *outStream) |
| IMPLEMENT_FUNKNOWN_METHODS (FileStream, IBStream, IBStream::iid) tresult FileStream | |
| IMPLEMENT_REFCOUNT (ReadOnlyBStream) ReadOnlyBStream | |
| IMPLEMENT_FUNKNOWN_METHODS (BufferStream, IBStream, IBStream::iid) BufferStream | |
| bool | isEqualID (const ChunkID id1, const ChunkID id2) |
| IMPLEMENT_FUNKNOWN_METHODS (ConnectionProxy, IConnectionPoint, IConnectionPoint::iid) ConnectionProxy | |
| IMPLEMENT_FUNKNOWN_METHODS (EventList, IEventList, IEventList::iid) EventList | |
| IMPLEMENT_FUNKNOWN_METHODS (HostMessage, IMessage, IMessage::iid) HostMessage | |
| IMPLEMENT_FUNKNOWN_METHODS (HostAttributeList, IAttributeList, IAttributeList::iid) IPtr< IAttributeList > HostAttributeList | |
| IMPLEMENT_FUNKNOWN_METHODS (ParameterChanges, IParameterChanges, IParameterChanges::iid) IMPLEMENT_FUNKNOWN_METHODS(ParameterValueQueue | |
| IMPLEMENT_FUNKNOWN_METHODS (TestBase, ITest, ITest::iid) | |
| void | addMessage (ITestResult *testResult, const std::u16string &str) |
| void | addMessage (ITestResult *testResult, const char *str) |
| void | addErrorMessage (ITestResult *testResult, const char *str) |
| void | addErrorMessage (ITestResult *testResult, const std::u16string &str) |
| std::u16string | printf (const char8 *format,...) |
| IMPLEMENT_FUNKNOWN_METHODS (ParamChanges, IParamValueQueue, IParamValueQueue::iid) ParamChanges | |
| SMTG_TYPE_ALIGN_CHECK (PFactoryInfo, 4, 4, 4, 4) SMTG_TYPE_ALIGN_CHECK(PClassInfo | |
| SMTG_TYPE_ALIGN_CHECK (PClassInfo2, 4, 4, 4, 4) SMTG_TYPE_ALIGN_CHECK(PClassInfoW | |
| SMTG_TYPE_ALIGN_CHECK (ProcessSetup, 8, 1, 8, 8) SMTG_TYPE_ALIGN_CHECK(AudioBusBuffers | |
| SMTG_TYPE_ALIGN_CHECK (ProcessData, 8, 1, 4, 4) SMTG_TYPE_ALIGN_CHECK(BusInfo | |
| SMTG_TYPE_ALIGN_CHECK (RoutingInfo, 4, 1, 4, 4) SMTG_TYPE_ALIGN_CHECK(IContextMenuItem | |
| SMTG_TYPE_ALIGN_CHECK (ParameterInfo, 8, 1, 8, 8) SMTG_TYPE_ALIGN_CHECK(NoteOnEvent | |
| SMTG_TYPE_ALIGN_CHECK (NoteOffEvent, 4, 1, 4, 4) SMTG_TYPE_ALIGN_CHECK(DataEvent | |
| SMTG_TYPE_ALIGN_CHECK (PolyPressureEvent, 4, 1, 4, 4) SMTG_TYPE_ALIGN_CHECK(ChordEvent | |
| SMTG_TYPE_ALIGN_CHECK (ScaleEvent, 8, 1, 4, 4) SMTG_TYPE_ALIGN_CHECK(LegacyMIDICCOutEvent | |
| SMTG_TYPE_ALIGN_CHECK (Event, 8, 1, 8, 8) SMTG_TYPE_ALIGN_CHECK(NoteExpressionValueDescription | |
| SMTG_TYPE_ALIGN_CHECK (NoteExpressionValueEvent, 8, 1, 4, 8) SMTG_TYPE_ALIGN_CHECK(NoteExpressionTextEvent | |
| SMTG_TYPE_ALIGN_CHECK (NoteExpressionTypeInfo, 8, 1, 8, 8) SMTG_TYPE_ALIGN_CHECK(KeyswitchInfo | |
| SMTG_TYPE_ALIGN_CHECK (FrameRate, 4, 1, 4, 4) SMTG_TYPE_ALIGN_CHECK(Chord | |
| SMTG_TYPE_ALIGN_CHECK (ProcessContext, 8, 1, 8, 8) SMTG_TYPE_ALIGN_CHECK(RepresentationInfo | |
| SMTG_TYPE_ALIGN_CHECK (UnitInfo, 4, 1, 4, 4) SMTG_TYPE_ALIGN_CHECK(ProgramListInfo | |
| void | printStructSizes () |
| void * | aligned_alloc (size_t numBytes, uint32_t alignment) |
| aligned allocation More... | |
| void | aligned_free (void *addr, uint32_t alignment) |
| template<SymbolicSampleSizes SampleSize, typename std::enable_if< SampleSize==SymbolicSampleSizes::kSample32 >::type * = nullptr> | |
| Sample32 ** | getChannelBuffers (AudioBusBuffers &buffer) |
| get channel buffers from audio bus buffers 32 bit variant More... | |
| template<SymbolicSampleSizes SampleSize, typename std::enable_if< SampleSize==SymbolicSampleSizes::kSample64 >::type * = nullptr> | |
| Sample64 ** | getChannelBuffers (AudioBusBuffers &buffer) |
| get channel buffers from audio bus buffers 64 bit variant More... | |
| bool | operator== (const DataExchangeHandler::Config &c1, const DataExchangeHandler::Config &c2) |
| bool | operator!= (const DataExchangeBlock &lhs, const DataExchangeBlock &rhs) |
| bool | operator== (const DataExchangeBlock &lhs, const DataExchangeBlock &rhs) |
| const Steinberg::Vst::TChar * | toTChar (const std::u16string &str) |
| template<typename NumberT > | |
| std::u16string | toString (NumberT value) |
| convert a number to an UTF-16 string More... | |
| FUnknown * | createTestFactoryInstance (void *) |
| create a Test Factory instance More... | |
| const FUID & | getTestFactoryUID () |
| get the test factory class ID More... | |
| void | registerTest (FIDString name, const char *desc, const TestFunc &func) |
| register a simple test function More... | |
| void | registerTest (FIDString name, const char *desc, TestFunc &&func) |
| register a simple test function More... | |
| void | registerTest (FIDString name, const char *desc, const TestFuncWithContext &func) |
| register a test function with context pointer More... | |
| void | registerTest (FIDString name, const char *desc, TestFuncWithContext &&func) |
| register a test function with context pointer More... | |
| void | registerTest (FIDString name, ITest *test) |
| register a custom test, the test object will be owned by the implementation More... | |
| using ProcessSampleSize = int32 |
| using TestFunc = std::function<bool (ITestResult*)> |
simple test function
| using TestFuncWithContext = std::function<bool (FUnknown*, ITestResult*)> |
test function with context pointer
| enum ChunkType |
|
inline |
Returns the current channelBuffers used (depending of symbolicSampleSize).
|
inline |
Returns the size in bytes of numSamples for one channel depending of symbolicSampleSize.
return the bit-mask of channels for the given number of channel for example: numChannels = 1 => 0b0001 (binar) = 0x01 = 1 (decimal) numChannels = 2 => 0b0011 (binar) = 0x03 = 3 (decimal) numChannels = 6 => 0b0011 1111 (binar) = 0x3F = 63 (decimal)
| tresult getSpeakerChannelIndex | ( | SpeakerArrangement | arrangement, |
| uint64 | speaker, | ||
| int32 & | channel | ||
| ) |
Gets the channel index of a given speaker in a arrangement, returns kResultFalse if speaker not part of the arrangement else returns kResultTrue.
| void setupVSTGUIBundleSupport | ( | void * | hInstance | ) |
|
inline |
| Steinberg::Vst::IMPLEMENT_FUNKNOWN_METHODS | ( | FileStream | , |
| IBStream | , | ||
| IBStream::iid | |||
| ) |
| Steinberg::Vst::IMPLEMENT_REFCOUNT | ( | ReadOnlyBStream | ) |
| Steinberg::Vst::IMPLEMENT_FUNKNOWN_METHODS | ( | BufferStream | , |
| IBStream | , | ||
| IBStream::iid | |||
| ) |
| Steinberg::Vst::IMPLEMENT_FUNKNOWN_METHODS | ( | ConnectionProxy | , |
| IConnectionPoint | , | ||
| IConnectionPoint::iid | |||
| ) |
| Steinberg::Vst::IMPLEMENT_FUNKNOWN_METHODS | ( | EventList | , |
| IEventList | , | ||
| IEventList::iid | |||
| ) |
| Steinberg::Vst::IMPLEMENT_FUNKNOWN_METHODS | ( | HostMessage | , |
| IMessage | , | ||
| IMessage::iid | |||
| ) |
| Steinberg::Vst::IMPLEMENT_FUNKNOWN_METHODS | ( | HostAttributeList | , |
| IAttributeList | , | ||
| IAttributeList::iid | |||
| ) |
| Steinberg::Vst::IMPLEMENT_FUNKNOWN_METHODS | ( | ParameterChanges | , |
| IParameterChanges | , | ||
| IParameterChanges::iid | |||
| ) |
| Steinberg::Vst::IMPLEMENT_FUNKNOWN_METHODS | ( | TestBase | , |
| ITest | , | ||
| ITest::iid | |||
| ) |
| void addMessage | ( | ITestResult * | testResult, |
| const std::u16string & | str | ||
| ) |
| void addMessage | ( | ITestResult * | testResult, |
| const char * | str | ||
| ) |
| void addErrorMessage | ( | ITestResult * | testResult, |
| const char * | str | ||
| ) |
| void addErrorMessage | ( | ITestResult * | testResult, |
| const std::u16string & | str | ||
| ) |
| std::u16string printf | ( | const char8 * | format, |
| ... | |||
| ) |
| Steinberg::Vst::IMPLEMENT_FUNKNOWN_METHODS | ( | ParamChanges | , |
| IParamValueQueue | , | ||
| IParamValueQueue::iid | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | PFactoryInfo | , |
| 4 | , | ||
| 4 | , | ||
| 4 | , | ||
| 4 | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | PClassInfo2 | , |
| 4 | , | ||
| 4 | , | ||
| 4 | , | ||
| 4 | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | ProcessSetup | , |
| 8 | , | ||
| 1 | , | ||
| 8 | , | ||
| 8 | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | ProcessData | , |
| 8 | , | ||
| 1 | , | ||
| 4 | , | ||
| 4 | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | RoutingInfo | , |
| 4 | , | ||
| 1 | , | ||
| 4 | , | ||
| 4 | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | ParameterInfo | , |
| 8 | , | ||
| 1 | , | ||
| 8 | , | ||
| 8 | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | NoteOffEvent | , |
| 4 | , | ||
| 1 | , | ||
| 4 | , | ||
| 4 | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | PolyPressureEvent | , |
| 4 | , | ||
| 1 | , | ||
| 4 | , | ||
| 4 | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | ScaleEvent | , |
| 8 | , | ||
| 1 | , | ||
| 4 | , | ||
| 4 | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | Event | , |
| 8 | , | ||
| 1 | , | ||
| 8 | , | ||
| 8 | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | NoteExpressionValueEvent | , |
| 8 | , | ||
| 1 | , | ||
| 4 | , | ||
| 8 | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | NoteExpressionTypeInfo | , |
| 8 | , | ||
| 1 | , | ||
| 8 | , | ||
| 8 | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | FrameRate | , |
| 4 | , | ||
| 1 | , | ||
| 4 | , | ||
| 4 | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | ProcessContext | , |
| 8 | , | ||
| 1 | , | ||
| 8 | , | ||
| 8 | |||
| ) |
| Steinberg::Vst::SMTG_TYPE_ALIGN_CHECK | ( | UnitInfo | , |
| 4 | , | ||
| 1 | , | ||
| 4 | , | ||
| 4 | |||
| ) |
|
inline |
|
inline |
aligned allocation
note that you need to use aligned_free to free the block of memory
| numBytes | number of bytes to allocate |
| alignment | alignment of memory base address. must be a power of 2 and at least as large as sizeof (void*) or zero in which it uses malloc for allocation |
|
inline |
|
inline |
get channel buffers from audio bus buffers 32 bit variant
|
inline |
get channel buffers from audio bus buffers 64 bit variant
| bool Steinberg::Vst::operator== | ( | const DataExchangeHandler::Config & | c1, |
| const DataExchangeHandler::Config & | c2 | ||
| ) |
|
inline |
|
inline |
|
inline |
| std::u16string Steinberg::Vst::toString | ( | NumberT | value | ) |
convert a number to an UTF-16 string
| value | number |
| const FUID & Steinberg::Vst::getTestFactoryUID | ( | ) |
get the test factory class ID
register a simple test function
register a simple test function
| void Steinberg::Vst::registerTest | ( | FIDString | name, |
| const char * | desc, | ||
| const TestFuncWithContext & | func | ||
| ) |
register a test function with context pointer
| void Steinberg::Vst::registerTest | ( | FIDString | name, |
| const char * | desc, | ||
| TestFuncWithContext && | func | ||
| ) |
register a test function with context pointer
register a custom test, the test object will be owned by the implementation
|
constexpr |