TracktionEngine
Loading...
Searching...
No Matches
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
engine::PluginManager Class Reference

#include <tracktion_PluginManager.h>

Inherits juce::ChangeListener.

Classes

struct  BuiltInType
 
struct  BuiltInTypeBase
 

Public Member Functions

 PluginManager (Engine &)
 
 ~PluginManager () override
 
void initialise ()
 
bool doubleClickToOpenWindows ()
 
void setDoubleClickToOpenWindows (bool)
 
int getNumberOfThreadsForScanning ()
 
void setNumberOfThreadsForScanning (int)
 
bool usesSeparateProcessForScanning ()
 
void setUsesSeparateProcessForScanning (bool)
 
Plugin::Ptr createExistingPlugin (Edit &, const juce::ValueTree &)
 
Plugin::Ptr createNewPlugin (Edit &, const juce::ValueTree &)
 
Plugin::Ptr createNewPlugin (Edit &, const juce::String &type, const juce::PluginDescription &)
 
juce::Array< juce::PluginDescription > getARACompatiblePlugDescriptions ()
 
void registerBuiltInType (std::unique_ptr< BuiltInType >)
 
template<typename Type >
void createBuiltInType ()
 

Static Public Member Functions

static bool startChildProcessPluginScan (const juce::String &commandLine)
 This is called by a child process in the app's start-up code, to invoke the actual scan.
 
static bool isBuiltInPlugin (const juce::PluginDescription &d)
 
template<class PluginClass >
static juce::PluginDescription createBuiltInPluginDescription (bool synth=false)
 

Public Attributes

juce::AudioPluginFormatManager pluginFormatManager
 
juce::KnownPluginList knownPluginList
 
std::function< void()> abortCurrentPluginScan
 May be called by clients to cancel a scan if one is active.
 
std::function< std::unique_ptr< juce::AudioPluginInstance >(const juce::PluginDescription &, double rate, int blockSize, juce::String &errorMessage)> createPluginInstance
 Callback that is used to create plugin instances from a PluginDescription.
 
std::function< bool(Plugin &)> canUseFineGrainAutomation
 Callback that is used to determine if a plugin should use fine-grain automation or not.
 
std::function< void()> scanCompletedCallback
 

Static Public Attributes

static constexpr const char * builtInPluginFormatName = "TracktionInternal"
 

Constructor & Destructor Documentation

◆ PluginManager()

engine::PluginManager::PluginManager ( Engine )

◆ ~PluginManager()

engine::PluginManager::~PluginManager ( )
override

Member Function Documentation

◆ initialise()

void engine::PluginManager::initialise ( )

◆ startChildProcessPluginScan()

static bool engine::PluginManager::startChildProcessPluginScan ( const juce::String &  commandLine)
static

This is called by a child process in the app's start-up code, to invoke the actual scan.

Returns true if the command-line params invoke a scan, or false if this is a normal run.

◆ doubleClickToOpenWindows()

bool engine::PluginManager::doubleClickToOpenWindows ( )

◆ setDoubleClickToOpenWindows()

void engine::PluginManager::setDoubleClickToOpenWindows ( bool  )

◆ getNumberOfThreadsForScanning()

int engine::PluginManager::getNumberOfThreadsForScanning ( )

◆ setNumberOfThreadsForScanning()

void engine::PluginManager::setNumberOfThreadsForScanning ( int  )

◆ usesSeparateProcessForScanning()

bool engine::PluginManager::usesSeparateProcessForScanning ( )

◆ setUsesSeparateProcessForScanning()

void engine::PluginManager::setUsesSeparateProcessForScanning ( bool  )

◆ createExistingPlugin()

Plugin::Ptr engine::PluginManager::createExistingPlugin ( Edit ,
const juce::ValueTree &   
)

◆ createNewPlugin() [1/2]

Plugin::Ptr engine::PluginManager::createNewPlugin ( Edit ,
const juce::ValueTree &   
)

◆ createNewPlugin() [2/2]

Plugin::Ptr engine::PluginManager::createNewPlugin ( Edit ,
const juce::String &  type,
const juce::PluginDescription &   
)

◆ getARACompatiblePlugDescriptions()

juce::Array< juce::PluginDescription > engine::PluginManager::getARACompatiblePlugDescriptions ( )

◆ registerBuiltInType()

void engine::PluginManager::registerBuiltInType ( std::unique_ptr< BuiltInType )

◆ createBuiltInType()

template<typename Type >
void engine::PluginManager::createBuiltInType ( )

◆ isBuiltInPlugin()

static bool engine::PluginManager::isBuiltInPlugin ( const juce::PluginDescription &  d)
static

◆ createBuiltInPluginDescription()

template<class PluginClass >
static juce::PluginDescription engine::PluginManager::createBuiltInPluginDescription ( bool  synth = false)
static

Member Data Documentation

◆ pluginFormatManager

juce::AudioPluginFormatManager engine::PluginManager::pluginFormatManager

◆ knownPluginList

juce::KnownPluginList engine::PluginManager::knownPluginList

◆ abortCurrentPluginScan

std::function<void()> engine::PluginManager::abortCurrentPluginScan

May be called by clients to cancel a scan if one is active.

◆ builtInPluginFormatName

constexpr const char* engine::PluginManager::builtInPluginFormatName = "TracktionInternal"
staticconstexpr

◆ createPluginInstance

std::function<std::unique_ptr<juce::AudioPluginInstance>(const juce::PluginDescription&, double rate, int blockSize, juce::String& errorMessage)> engine::PluginManager::createPluginInstance

Callback that is used to create plugin instances from a PluginDescription.

By default this simply uses the PluginManager's pluginFormatManager but it can be set to provide custom behaviour.

◆ canUseFineGrainAutomation

std::function<bool (Plugin&)> engine::PluginManager::canUseFineGrainAutomation

Callback that is used to determine if a plugin should use fine-grain automation or not.

◆ scanCompletedCallback

std::function<void()> engine::PluginManager::scanCompletedCallback

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