JUCE
Public Member Functions | Protected Member Functions | List of all members
AudioPluginFormat Class Referenceabstract

The base class for a type of plugin format, such as VST, AudioUnit, LADSPA, etc. More...

+ Inheritance diagram for AudioPluginFormat:

Public Member Functions

virtual ~AudioPluginFormat ()
 Destructor. More...
 
virtual String getName () const =0
 Returns the format name. More...
 
virtual void findAllTypesForFile (OwnedArray< PluginDescription > &results, const String &fileOrIdentifier)=0
 This tries to create descriptions for all the plugin types available in a binary module file. More...
 
virtual AudioPluginInstancecreateInstanceFromDescription (const PluginDescription &desc, double initialSampleRate, int initialBufferSize)=0
 Tries to recreate a type from a previously generated PluginDescription. More...
 
virtual bool fileMightContainThisPluginType (const String &fileOrIdentifier)=0
 Should do a quick check to see if this file or directory might be a plugin of this format. More...
 
virtual String getNameOfPluginFromIdentifier (const String &fileOrIdentifier)=0
 Returns a readable version of the name of the plugin that this identifier refers to. More...
 
virtual bool pluginNeedsRescanning (const PluginDescription &)=0
 Returns true if this plugin's version or date has changed and it should be re-checked. More...
 
virtual bool doesPluginStillExist (const PluginDescription &desc)=0
 Checks whether this plugin could possibly be loaded. More...
 
virtual bool canScanForPlugins () const =0
 Returns true if this format needs to run a scan to find its list of plugins. More...
 
virtual StringArray searchPathsForPlugins (const FileSearchPath &directoriesToSearch, bool recursive)=0
 Searches a suggested set of directories for any plugins in this format. More...
 
virtual FileSearchPath getDefaultLocationsToSearch ()=0
 Returns the typical places to look for this kind of plugin. More...
 

Protected Member Functions

 AudioPluginFormat () noexcept
 

Detailed Description

The base class for a type of plugin format, such as VST, AudioUnit, LADSPA, etc.

See also
AudioFormatManager

Constructor & Destructor Documentation

virtual AudioPluginFormat::~AudioPluginFormat ( )
virtual

Destructor.

AudioPluginFormat::AudioPluginFormat ( )
protectednoexcept

Member Function Documentation

virtual String AudioPluginFormat::getName ( ) const
pure virtual

Returns the format name.

E.g. "VST", "AudioUnit", etc.

Implemented in VSTPluginFormat, AudioUnitPluginFormat, and LADSPAPluginFormat.

virtual void AudioPluginFormat::findAllTypesForFile ( OwnedArray< PluginDescription > &  results,
const String fileOrIdentifier 
)
pure virtual

This tries to create descriptions for all the plugin types available in a binary module file.

The file will be some kind of DLL or bundle.

Normally there will only be one type returned, but some plugins (e.g. VST shells) can use a single DLL to create a set of different plugin subtypes, so in that case, each subtype is returned as a separate object.

Implemented in VSTPluginFormat, AudioUnitPluginFormat, and LADSPAPluginFormat.

Referenced by AudioUnitPluginFormat::getName(), and LADSPAPluginFormat::getName().

virtual AudioPluginInstance* AudioPluginFormat::createInstanceFromDescription ( const PluginDescription desc,
double  initialSampleRate,
int  initialBufferSize 
)
pure virtual

Tries to recreate a type from a previously generated PluginDescription.

See also
PluginDescription::createInstance

Implemented in VSTPluginFormat, AudioUnitPluginFormat, and LADSPAPluginFormat.

Referenced by AudioUnitPluginFormat::getName(), and LADSPAPluginFormat::getName().

virtual bool AudioPluginFormat::fileMightContainThisPluginType ( const String fileOrIdentifier)
pure virtual

Should do a quick check to see if this file or directory might be a plugin of this format.

This is for searching for potential files, so it shouldn't actually try to load the plugin or do anything time-consuming.

Implemented in VSTPluginFormat, AudioUnitPluginFormat, and LADSPAPluginFormat.

Referenced by AudioUnitPluginFormat::getName(), and LADSPAPluginFormat::getName().

virtual String AudioPluginFormat::getNameOfPluginFromIdentifier ( const String fileOrIdentifier)
pure virtual

Returns a readable version of the name of the plugin that this identifier refers to.

Implemented in VSTPluginFormat, AudioUnitPluginFormat, and LADSPAPluginFormat.

Referenced by AudioUnitPluginFormat::getName(), and LADSPAPluginFormat::getName().

virtual bool AudioPluginFormat::pluginNeedsRescanning ( const PluginDescription )
pure virtual

Returns true if this plugin's version or date has changed and it should be re-checked.

Implemented in VSTPluginFormat, AudioUnitPluginFormat, and LADSPAPluginFormat.

Referenced by AudioUnitPluginFormat::getName(), and LADSPAPluginFormat::getName().

virtual bool AudioPluginFormat::doesPluginStillExist ( const PluginDescription desc)
pure virtual

Checks whether this plugin could possibly be loaded.

It doesn't actually need to load it, just to check whether the file or component still exists.

Implemented in VSTPluginFormat, AudioUnitPluginFormat, and LADSPAPluginFormat.

Referenced by AudioUnitPluginFormat::getName(), and LADSPAPluginFormat::getName().

virtual bool AudioPluginFormat::canScanForPlugins ( ) const
pure virtual

Returns true if this format needs to run a scan to find its list of plugins.

Implemented in VSTPluginFormat, AudioUnitPluginFormat, and LADSPAPluginFormat.

virtual StringArray AudioPluginFormat::searchPathsForPlugins ( const FileSearchPath directoriesToSearch,
bool  recursive 
)
pure virtual

Searches a suggested set of directories for any plugins in this format.

The path might be ignored, e.g. by AUs, which are found by the OS rather than manually.

Implemented in VSTPluginFormat, AudioUnitPluginFormat, and LADSPAPluginFormat.

Referenced by AudioUnitPluginFormat::getName(), and LADSPAPluginFormat::getName().

virtual FileSearchPath AudioPluginFormat::getDefaultLocationsToSearch ( )
pure virtual

Returns the typical places to look for this kind of plugin.

Note that if this returns no paths, it means that the format doesn't search in files or folders, e.g. AudioUnits.

Implemented in VSTPluginFormat, AudioUnitPluginFormat, and LADSPAPluginFormat.

Referenced by AudioUnitPluginFormat::getName(), and LADSPAPluginFormat::getName().


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