Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
LV2PluginFormat Class Reference

Implements a plugin format for LV2 plugins. More...

#include <juce_LV2PluginFormat.h>

Inheritance diagram for LV2PluginFormat:

Public Member Functions

 LV2PluginFormat ()
 
 ~LV2PluginFormat () override
 
String getName () const override
 Returns the format name.
 
void findAllTypesForFile (OwnedArray< PluginDescription > &results, const String &fileOrIdentifier) override
 This tries to create descriptions for all the plugin types available in a binary module file.
 
bool fileMightContainThisPluginType (const String &fileOrIdentifier) override
 Should do a quick check to see if this file or directory might be a plugin of this format.
 
String getNameOfPluginFromIdentifier (const String &fileOrIdentifier) override
 Returns a readable version of the name of the plugin that this identifier refers to.
 
bool pluginNeedsRescanning (const PluginDescription &) override
 Returns true if this plugin's version or date has changed and it should be re-checked.
 
bool doesPluginStillExist (const PluginDescription &) override
 Checks whether this plugin could possibly be loaded.
 
bool canScanForPlugins () const override
 Returns true if this format needs to run a scan to find its list of plugins.
 
bool isTrivialToScan () const override
 Should return true if this format is both safe and quick to scan - i.e.
 
StringArray searchPathsForPlugins (const FileSearchPath &directoriesToSearch, bool recursive, bool allowPluginsWhichRequireAsynchronousInstantiation=false) override
 Searches a suggested set of directories for any plugins in this format.
 
FileSearchPath getDefaultLocationsToSearch () override
 Returns the typical places to look for this kind of plugin.
 
- Public Member Functions inherited from AudioPluginFormat
 ~AudioPluginFormat () override
 Destructor.
 
std::unique_ptr< AudioPluginInstancecreateInstanceFromDescription (const PluginDescription &, double initialSampleRate, int initialBufferSize)
 Tries to recreate a type from a previously generated PluginDescription.
 
std::unique_ptr< AudioPluginInstancecreateInstanceFromDescription (const PluginDescription &, double initialSampleRate, int initialBufferSize, String &errorMessage)
 Same as above but with the possibility of returning an error message.
 
void createPluginInstanceAsync (const PluginDescription &description, double initialSampleRate, int initialBufferSize, PluginCreationCallback)
 Tries to recreate a type from a previously generated PluginDescription.
 
virtual void createARAFactoryAsync (const PluginDescription &, ARAFactoryCreationCallback callback)
 Tries to create an ARAFactoryWrapper for this description.
 

Static Public Member Functions

static String getFormatName ()
 

Additional Inherited Members

- Public Types inherited from AudioPluginFormat
using PluginCreationCallback = std::function<void (std::unique_ptr<AudioPluginInstance>, const String&)>
 A callback lambda that is passed to createPluginInstanceAsync()
 
using ARAFactoryCreationCallback = std::function<void (ARAFactoryResult)>
 A callback lambda that is passed to getARAFactory()
 
- Protected Member Functions inherited from AudioPluginFormat
 AudioPluginFormat ()
 

Detailed Description

Implements a plugin format for LV2 plugins.

Constructor & Destructor Documentation

◆ LV2PluginFormat()

LV2PluginFormat::LV2PluginFormat ( )

◆ ~LV2PluginFormat()

LV2PluginFormat::~LV2PluginFormat ( )
override

Member Function Documentation

◆ getFormatName()

static String LV2PluginFormat::getFormatName ( )
static

◆ getName()

String LV2PluginFormat::getName ( ) const
overridevirtual

Returns the format name.

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

Implements AudioPluginFormat.

◆ findAllTypesForFile()

void LV2PluginFormat::findAllTypesForFile ( OwnedArray< PluginDescription > & results,
const String & fileOrIdentifier )
overridevirtual

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.

Implements AudioPluginFormat.

◆ fileMightContainThisPluginType()

bool LV2PluginFormat::fileMightContainThisPluginType ( const String & fileOrIdentifier)
overridevirtual

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.

Implements AudioPluginFormat.

◆ getNameOfPluginFromIdentifier()

String LV2PluginFormat::getNameOfPluginFromIdentifier ( const String & fileOrIdentifier)
overridevirtual

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

Implements AudioPluginFormat.

◆ pluginNeedsRescanning()

bool LV2PluginFormat::pluginNeedsRescanning ( const PluginDescription & )
overridevirtual

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

Implements AudioPluginFormat.

◆ doesPluginStillExist()

bool LV2PluginFormat::doesPluginStillExist ( const PluginDescription & )
overridevirtual

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.

Implements AudioPluginFormat.

◆ canScanForPlugins()

bool LV2PluginFormat::canScanForPlugins ( ) const
overridevirtual

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

Implements AudioPluginFormat.

◆ isTrivialToScan()

bool LV2PluginFormat::isTrivialToScan ( ) const
overridevirtual

Should return true if this format is both safe and quick to scan - i.e.

if a file can be scanned within a few milliseconds on a background thread, without actually needing to load an executable.

Implements AudioPluginFormat.

◆ searchPathsForPlugins()

StringArray LV2PluginFormat::searchPathsForPlugins ( const FileSearchPath & directoriesToSearch,
bool recursive,
bool allowPluginsWhichRequireAsynchronousInstantiation = false )
overridevirtual

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.

Parameters
directoriesToSearchThis specifies which directories shall be searched for plug-ins.
recursiveShould the search recursively traverse folders.
allowPluginsWhichRequireAsynchronousInstantiationIf this is false then plug-ins which require asynchronous creation will be excluded.

Implements AudioPluginFormat.

◆ getDefaultLocationsToSearch()

FileSearchPath LV2PluginFormat::getDefaultLocationsToSearch ( )
overridevirtual

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.

Implements AudioPluginFormat.


The documentation for this class was generated from the following file:
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram