JUCE-7.0.12-0-g4f43011b96 JUCE-7.0.12-0-g4f43011b96
JUCE — C++ application framework with suport for VST, VST3, LV2 audio plug-ins

« « « Anklang Documentation
Loading...
Searching...
No Matches
ivsthostapplication.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------
2// Project : VST SDK
3//
4// Category : Interfaces
5// Filename : pluginterfaces/vst/ivsthostapplication.h
6// Created by : Steinberg, 04/2006
7// Description : VST Host Interface
8//
9//-----------------------------------------------------------------------------
10// This file is part of a Steinberg SDK. It is subject to the license terms
11// in the LICENSE file found in the top-level directory of this distribution
12// and at www.steinberg.net/sdklicenses.
13// No part of the SDK, including this file, may be copied, modified, propagated,
14// or distributed except according to the terms contained in the LICENSE file.
15//-----------------------------------------------------------------------------
16
17#pragma once
18
20
21//------------------------------------------------------------------------
22namespace Steinberg {
23namespace Vst {
24
25//------------------------------------------------------------------------
36{
37public:
38//------------------------------------------------------------------------
40 virtual tresult PLUGIN_API getName (String128 name) = 0;
41
43 virtual tresult PLUGIN_API createInstance (TUID cid, TUID _iid, void** obj) = 0;
44
45//------------------------------------------------------------------------
46 static const FUID iid;
47};
48
49DECLARE_CLASS_IID (IHostApplication, 0x58E595CC, 0xDB2D4969, 0x8B6AAF8C, 0x36A664E5)
50
51//------------------------------------------------------------------------
54{
55 TUID iid;
56 IMessage::iid.toTUID (iid);
57 IMessage* m = nullptr;
58 if (host->createInstance (iid, iid, (void**)&m) == kResultOk)
59 return m;
60 return nullptr;
61}
62
63//------------------------------------------------------------------------
75{
76public:
77 //------------------------------------------------------------------------
78 static const FUID iid;
79};
80
81DECLARE_CLASS_IID (IVst3ToVst2Wrapper, 0x29633AEC, 0x1D1C47E2, 0xBB85B97B, 0xD36EAC61)
82
83//------------------------------------------------------------------------
95{
96public:
97 //------------------------------------------------------------------------
98 static const FUID iid;
99};
100
101DECLARE_CLASS_IID (IVst3ToAUWrapper, 0xA3B8C6C5, 0xC0954688, 0xB0916F0B, 0xB697AA44)
102
103//------------------------------------------------------------------------
115{
116public:
117 //------------------------------------------------------------------------
118 static const FUID iid;
119};
120DECLARE_CLASS_IID (IVst3ToAAXWrapper, 0x6D319DC6, 0x60C56242, 0xB32C951B, 0x93BEF4C6)
121
122//------------------------------------------------------------------------
139{
140public:
141//------------------------------------------------------------------------
145 virtual tresult PLUGIN_API enableMPEInputProcessing (TBool state) = 0;
151 virtual tresult PLUGIN_API setMPEInputDeviceSettings (int32 masterChannel,
152 int32 memberBeginChannel,
153 int32 memberEndChannel) = 0;
154
155//------------------------------------------------------------------------
156 static const FUID iid;
157};
158
159DECLARE_CLASS_IID (IVst3WrapperMPESupport, 0x44149067, 0x42CF4BF9, 0x8800B750, 0xF7359FE3)
160
161//------------------------------------------------------------------------
162} // namespace Vst
163} // namespace Steinberg
Handling 16 Byte Globally Unique Identifiers.
Definition funknown.h:241
The basic interface of all interfaces.
Definition funknown.h:375
Basic host callback interface: Vst::IHostApplication.
virtual tresult PLUGIN_API getName(String128 name)=0
Gets host application name.
virtual tresult PLUGIN_API createInstance(TUID cid, TUID _iid, void **obj)=0
Creates host object (e.g.
Private plug-in message: Vst::IMessage.
Definition ivstmessage.h:41
VST 3 to AAX Wrapper interface: Vst::IVst3ToAAXWrapper.
VST 3 to AU Wrapper interface: Vst::IVst3ToAUWrapper.
VST 3 to VST 2 Wrapper interface: Vst::IVst3ToVst2Wrapper.
Wrapper MPE Support interface: Vst::IVst3WrapperMPESupport.
virtual tresult PLUGIN_API enableMPEInputProcessing(TBool state)=0
enable or disable MPE processing
virtual tresult PLUGIN_API setMPEInputDeviceSettings(int32 masterChannel, int32 memberBeginChannel, int32 memberEndChannel)=0
setup the MPE processing
char TUID[16]
plain UID type
Definition funknown.h:209
TChar String128[128]
128 character UTF-16 string
Definition vsttypes.h:69
IMessage * allocateMessage(IHostApplication *host)
Helper to allocate a message.