openshot-audio  0.1.4
juce_VST3PluginFormat.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_VST3PLUGINFORMAT_H_INCLUDED
26 #define JUCE_VST3PLUGINFORMAT_H_INCLUDED
27 
28 #if JUCE_PLUGINHOST_VST3
29 
32 class JUCE_API VST3PluginFormat : public AudioPluginFormat
33 {
34 public:
36  VST3PluginFormat();
37 
39  ~VST3PluginFormat();
40 
41  //==============================================================================
43  String getName() const override { return "VST3"; }
45  void findAllTypesForFile (OwnedArray<PluginDescription>& results, const String& fileOrIdentifier) override;
47  AudioPluginInstance* createInstanceFromDescription (const PluginDescription& description, double, int) override;
49  bool fileMightContainThisPluginType (const String& fileOrIdentifier) override;
51  String getNameOfPluginFromIdentifier (const String& fileOrIdentifier) override;
53  bool pluginNeedsRescanning (const PluginDescription& description) override;
55  StringArray searchPathsForPlugins (const FileSearchPath& searchPath, bool recursive) override;
57  bool doesPluginStillExist (const PluginDescription& description) override;
61  bool canScanForPlugins() const override { return true; }
62 
63 private:
64  //==============================================================================
65  void recursiveFileSearch (StringArray&, const File&, bool recursive);
66 
67  //==============================================================================
69 };
70 
71 #endif // JUCE_PLUGINHOST_VST3
72 #endif // JUCE_VST3PLUGINFORMAT_H_INCLUDED
virtual FileSearchPath getDefaultLocationsToSearch()=0
virtual String getName() const =0
Definition: juce_AudioPluginFormat.h:35
virtual String getNameOfPluginFromIdentifier(const String &fileOrIdentifier)=0
Definition: juce_String.h:43
#define JUCE_API
Definition: juce_StandardHeader.h:139
virtual bool pluginNeedsRescanning(const PluginDescription &)=0
virtual void findAllTypesForFile(OwnedArray< PluginDescription > &results, const String &fileOrIdentifier)=0
virtual bool fileMightContainThisPluginType(const String &fileOrIdentifier)=0
Definition: juce_FileSearchPath.h:39
virtual bool doesPluginStillExist(const PluginDescription &desc)=0
Definition: juce_PluginDescription.h:40
virtual StringArray searchPathsForPlugins(const FileSearchPath &directoriesToSearch, bool recursive)=0
Definition: juce_StringArray.h:39
virtual AudioPluginInstance * createInstanceFromDescription(const PluginDescription &desc, double initialSampleRate, int initialBufferSize)=0
#define JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(className)
Definition: juce_PlatformDefs.h:198
Definition: juce_AudioPluginInstance.h:42
Definition: juce_File.h:45
virtual bool canScanForPlugins() const =0