Loading...
Searching...
No Matches
juce::AudioPluginFormatManager Class Reference

## Detailed Description

This maintains a list of known AudioPluginFormats.

See also
  AudioPluginFormat

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

- juce_audio_processors_headless/format/juce_AudioPluginFormatManager.h

## Public Member Functions

| AudioPluginFormatManager ()=default
void | addDefaultFormats ()=delete
| This function has been removed.
int | getNumFormats () const
| Returns the number of types of format that are available.
AudioPluginFormat * | getFormat (int index) const
| Returns one of the available formats.
Array< AudioPluginFormat * > | getFormats () const
| Returns a list of all the registered formats.
void | addFormat (AudioPluginFormat *f)
| Adds a format to the list.
void | addFormat (std::unique_ptr< AudioPluginFormat >)
| Adds a format to the list.
std::unique_ptr< AudioPluginInstance > | 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.
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.
void | createARAFactoryAsync (const PluginDescription &description, AudioPluginFormat::ARAFactoryCreationCallback callback) const
| Tries to create an ::ARAFactoryWrapper for this description.
bool | doesPluginStillExist (const PluginDescription &) const
| Checks that the file or component for this plugin actually still exists.

## Constructors and Destructors

## AudioPluginFormatManager()

juce::AudioPluginFormatManager::AudioPluginFormatManager | ( |  | ) |

default

Referenced by doesPluginStillExist().

## Member Functions

## addDefaultFormats()

void juce::AudioPluginFormatManager::addDefaultFormats | ( |  | ) |

delete

This function has been removed.

To add default formats to the manager, use one of the new functions addDefaultFormatsToManager() or addHeadlessDefaultFormatsToManager();

## getNumFormats()

int juce::AudioPluginFormatManager::getNumFormats | ( |  | ) | const

Returns the number of types of format that are available.

Use getFormat() to get one of them.

## 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.

## addFormat() [1/2]

void juce::AudioPluginFormatManager::addFormat | ( | AudioPluginFormat * | f | ) |

inline

Adds a format to the list.

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

References addFormat(), and juce::rawToUniquePtr().

Referenced by addFormat().

## addFormat() [2/2]

void juce::AudioPluginFormatManager::addFormat | ( | std::unique_ptr< 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.

## createARAFactoryAsync()

void juce::AudioPluginFormatManager::createARAFactoryAsync | ( | const PluginDescription & | description,
|  | AudioPluginFormat::ARAFactoryCreationCallback | callback ) const

Tries to create an ::ARAFactoryWrapper for this description.

The result of the operation will be wrapped into an ARAFactoryResult, which will be passed to a callback object supplied by the caller.

The operation may fail, in which case the callback will be called with with a result object where ARAFactoryResult::araFactory.get() will return a nullptr.

In case of success the returned ::ARAFactoryWrapper will ensure that modules required for the correct functioning of the ARAFactory will remain loaded for the lifetime of the object.

## 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)

References AudioPluginFormatManager().

### Purchase

Get JUCE

### Discover

What's New in JUCE Features

### Learn

Documentaion Tutorials Made with JUCE Resources

### Support

JUCE Forum Newsletter Archive

### About

Contact Us JUCE Legal JUCE Licensing FAQ

### Events

Audio Developer Conference
© Raw Material Software Limited