openshot-audio  0.1.4
juce_VST3Headers.h
Go to the documentation of this file.
1 /*
2  ==============================================================================
3 
4  This file is part of the JUCE library.
5  Copyright (c) 2015 - ROLI Ltd.
6 
7  Permission is granted to use this software under the terms of either:
8  a) the GPL v2 (or any later version)
9  b) the Affero GPL v3
10 
11  Details of these licenses can be found at: www.gnu.org/licenses
12 
13  JUCE is distributed in the hope that it will be useful, but WITHOUT ANY
14  WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
15  A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16 
17  ------------------------------------------------------------------------------
18 
19  To release a closed-source product which uses JUCE, commercial licenses are
20  available: visit www.juce.com for more information.
21 
22  ==============================================================================
23 */
24 
25 #ifndef JUCE_VST3HEADERS_H_INCLUDED
26 #define JUCE_VST3HEADERS_H_INCLUDED
27 
28 #undef Point
29 #undef Component
30 
31 // Wow, those Steinberg guys really don't worry too much about compiler warnings.
32 #if _MSC_VER
33  #pragma warning (disable: 4505)
34  #pragma warning (push, 0)
35  #pragma warning (disable: 4702)
36 #elif __clang__
37  #pragma clang diagnostic push
38  #pragma clang diagnostic ignored "-Wnon-virtual-dtor"
39  #pragma clang diagnostic ignored "-Wreorder"
40  #pragma clang diagnostic ignored "-Wunsequenced"
41  #pragma clang diagnostic ignored "-Wint-to-pointer-cast"
42  #pragma clang diagnostic ignored "-Wunused-parameter"
43  #pragma clang diagnostic ignored "-Wconversion"
44  #pragma clang diagnostic ignored "-Woverloaded-virtual"
45  #pragma clang diagnostic ignored "-Wshadow"
46  #pragma clang diagnostic ignored "-Wdeprecated-register"
47 #endif
48 
49 /* These files come with the Steinberg VST3 SDK - to get them, you'll need to
50  visit the Steinberg website and agree to whatever is currently required to
51  get them.
52 
53  Then, you'll need to make sure your include path contains your "VST3 SDK"
54  directory (or whatever you've named it on your machine). The Introjucer has
55  a special box for setting this path.
56 */
57 #if JUCE_VST3HEADERS_INCLUDE_HEADERS_ONLY
58  #include <base/source/fstring.h>
59  #include <pluginterfaces/base/conststringtable.h>
60  #include <pluginterfaces/base/funknown.h>
61  #include <pluginterfaces/base/ipluginbase.h>
62  #include <pluginterfaces/base/ustring.h>
63  #include <pluginterfaces/gui/iplugview.h>
64  #include <pluginterfaces/vst/ivstattributes.h>
65  #include <pluginterfaces/vst/ivstaudioprocessor.h>
66  #include <pluginterfaces/vst/ivstcomponent.h>
67  #include <pluginterfaces/vst/ivstcontextmenu.h>
68  #include <pluginterfaces/vst/ivsteditcontroller.h>
69  #include <pluginterfaces/vst/ivstevents.h>
70  #include <pluginterfaces/vst/ivsthostapplication.h>
71  #include <pluginterfaces/vst/ivstmessage.h>
72  #include <pluginterfaces/vst/ivstmidicontrollers.h>
73  #include <pluginterfaces/vst/ivstparameterchanges.h>
74  #include <pluginterfaces/vst/ivstplugview.h>
75  #include <pluginterfaces/vst/ivstprocesscontext.h>
76  #include <pluginterfaces/vst/vsttypes.h>
77  #include <pluginterfaces/vst/ivstunits.h>
78  #include <public.sdk/source/common/memorystream.h>
79 #else
80  #include <base/source/baseiids.cpp>
81  #include <base/source/fatomic.cpp>
82  #include <base/source/fbuffer.cpp>
83  #include <base/source/fdebug.cpp>
84  #include <base/source/fobject.cpp>
85  #include <base/source/frect.cpp>
86  #include <base/source/fstreamer.cpp>
87  #include <base/source/fstring.cpp>
88  #include <base/source/fthread.cpp>
89  #include <base/source/updatehandler.cpp>
90  #include <pluginterfaces/base/conststringtable.cpp>
91  #include <pluginterfaces/base/funknown.cpp>
92  #include <pluginterfaces/base/ipluginbase.h>
93  #include <pluginterfaces/base/ustring.cpp>
94  #include <pluginterfaces/gui/iplugview.h>
95  #include <public.sdk/source/common/memorystream.cpp>
96  #include <public.sdk/source/common/pluginview.cpp>
97  #include <public.sdk/source/vst/vsteditcontroller.cpp>
98  #include <public.sdk/source/vst/vstbus.cpp>
99  #include <public.sdk/source/vst/vstinitiids.cpp>
100  #include <public.sdk/source/vst/vstcomponent.cpp>
101  #include <public.sdk/source/vst/vstcomponentbase.cpp>
102  #include <public.sdk/source/vst/vstparameters.cpp>
103  #include <public.sdk/source/vst/hosting/hostclasses.cpp>
104 
105 //==============================================================================
106 namespace Steinberg
107 {
109  DEF_CLASS_IID (IPluginBase)
110  DEF_CLASS_IID (IPlugView)
111  DEF_CLASS_IID (IPlugFrame)
112  DEF_CLASS_IID (IBStream)
113  DEF_CLASS_IID (ISizeableStream)
114  DEF_CLASS_IID (IPluginFactory)
115  DEF_CLASS_IID (IPluginFactory2)
116  DEF_CLASS_IID (IPluginFactory3)
117 }
118 #endif //JUCE_VST3HEADERS_INCLUDE_HEADERS_ONLY
119 
120 #if _MSC_VER
121  #pragma warning (pop)
122 #elif __clang__
123  #pragma clang diagnostic pop
124 #endif
125 
126 //==============================================================================
127 #undef ASSERT
128 #undef WARNING
129 #undef PRINTSYSERROR
130 #undef DEBUGSTR
131 #undef DBPRT0
132 #undef DBPRT1
133 #undef DBPRT2
134 #undef DBPRT3
135 #undef DBPRT4
136 #undef DBPRT5
137 #undef min
138 #undef max
139 #undef MIN
140 #undef MAX
141 #undef calloc
142 #undef free
143 #undef malloc
144 #undef realloc
145 #undef NEW
146 #undef NEWVEC
147 #undef VERIFY
148 #undef VERIFY_IS
149 #undef VERIFY_NOT
150 #undef META_CREATE_FUNC
151 #undef CLASS_CREATE_FUNC
152 #undef SINGLE_CREATE_FUNC
153 #undef _META_CLASS
154 #undef _META_CLASS_IFACE
155 #undef _META_CLASS_SINGLE
156 #undef META_CLASS
157 #undef META_CLASS_IFACE
158 #undef META_CLASS_SINGLE
159 #undef SINGLETON
160 #undef OBJ_METHODS
161 #undef QUERY_INTERFACE
162 #undef LICENCE_UID
163 #undef BEGIN_FACTORY
164 #undef DEF_CLASS
165 #undef DEF_CLASS1
166 #undef DEF_CLASS2
167 #undef DEF_CLASS_W
168 #undef END_FACTORY
169 #undef Point
170 #undef Component
171 
172 #endif // JUCE_VST3HEADERS_H_INCLUDED
Definition: juce_VST3Headers.h:106