JUCE  v6.1.6 (6.0.8-1114)
JUCE API
Looking for a senior C++ dev?
I'm looking for work. Hire me!
juce::AudioPluginFormatManager Class Reference

This maintains a list of known AudioPluginFormats. More...

#include <juce_AudioPluginFormatManager.h>

Collaboration diagram for juce::AudioPluginFormatManager:

Public Member Functions

 AudioPluginFormatManager ()
 
 ~AudioPluginFormatManager ()
 Destructor. More...
 
void addDefaultFormats ()
 Adds the set of available standard formats, e.g. More...
 
void addFormat (AudioPluginFormat *)
 Adds a format to the list. More...
 
std::unique_ptr< AudioPluginInstancecreatePluginInstance (const PluginDescription &description, double initialSampleRate, int initialBufferSize, String &errorMessage) const
 Tries to load the type for this description, by trying all the formats that this manager knows about. More...
 
void createPluginInstanceAsync (const PluginDescription &description, double initialSampleRate, int initialBufferSize, AudioPluginFormat::PluginCreationCallback callback)
 Tries to asynchronously load the type for this description, by trying all the formats that this manager knows about. More...
 
bool doesPluginStillExist (const PluginDescription &) const
 Checks that the file or component for this plugin actually still exists. More...
 
AudioPluginFormatgetFormat (int index) const
 Returns one of the available formats. More...
 
Array< AudioPluginFormat * > getFormats () const
 Returns a list of all the registered formats. More...
 
int getNumFormats () const
 Returns the number of types of format that are available. More...
 

Private Member Functions

AudioPluginFormatfindFormatForDescription (const PluginDescription &, String &errorMessage) const
 

Private Attributes

OwnedArray< AudioPluginFormatformats
 

Detailed Description

This maintains a list of known AudioPluginFormats.

See also
AudioPluginFormat

@tags{Audio}

Constructor & Destructor Documentation

◆ AudioPluginFormatManager()

juce::AudioPluginFormatManager::AudioPluginFormatManager ( )

◆ ~AudioPluginFormatManager()

juce::AudioPluginFormatManager::~AudioPluginFormatManager ( )

Destructor.

Member Function Documentation

◆ addDefaultFormats()

void juce::AudioPluginFormatManager::addDefaultFormats ( )

Adds the set of available standard formats, e.g.

VST.

◆ addFormat()

void juce::AudioPluginFormatManager::addFormat ( AudioPluginFormat )

Adds a format to the list.

The object passed in will be owned and deleted by the manager.

◆ createPluginInstance()

std::unique_ptr<AudioPluginInstance> juce::AudioPluginFormatManager::createPluginInstance ( const PluginDescription description,
double  initialSampleRate,
int  initialBufferSize,
String errorMessage 
) const

Tries to load the type for this description, by trying all the formats that this manager knows about.

If it can't load the plugin, it returns nullptr and leaves a message in the errorMessage string.

If you intend to instantiate a AudioUnit v3 plug-in then you must either use the non-blocking asynchronous version below - or call this method from a thread other than the message thread and without blocking the message thread.

◆ createPluginInstanceAsync()

void juce::AudioPluginFormatManager::createPluginInstanceAsync ( const PluginDescription description,
double  initialSampleRate,
int  initialBufferSize,
AudioPluginFormat::PluginCreationCallback  callback 
)

Tries to asynchronously load the type for this description, by trying all the formats that this manager knows about.

The caller must supply a callback object which will be called when the instantiation has completed.

If it can't load the plugin then the callback function will be called passing a nullptr as the instance argument along with an error message.

The callback function will be called on the message thread so the caller must not block the message thread.

The callback object will be deleted automatically after it has been invoked.

The caller is responsible for deleting the instance that is passed to the callback function.

If you intend to instantiate a AudioUnit v3 plug-in then you must use this non-blocking asynchronous version - or call the synchronous method from an auxiliary thread.

◆ doesPluginStillExist()

bool juce::AudioPluginFormatManager::doesPluginStillExist ( const PluginDescription ) const

Checks that the file or component for this plugin actually still exists.

(This won't try to load the plugin)

◆ findFormatForDescription()

AudioPluginFormat* juce::AudioPluginFormatManager::findFormatForDescription ( const PluginDescription ,
String errorMessage 
) const
private

◆ getFormat()

AudioPluginFormat* juce::AudioPluginFormatManager::getFormat ( int  index) const

Returns one of the available formats.

See also
getNumFormats

◆ getFormats()

Array<AudioPluginFormat*> juce::AudioPluginFormatManager::getFormats ( ) const

Returns a list of all the registered formats.

◆ getNumFormats()

int juce::AudioPluginFormatManager::getNumFormats ( ) const

Returns the number of types of format that are available.

Use getFormat() to get one of them.

Member Data Documentation

◆ formats

OwnedArray<AudioPluginFormat> juce::AudioPluginFormatManager::formats
private

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