Zrythm v2.0.0-DEV
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
PluginConfigurationManager Class Referencefinal

Public Types

using PluginConfiguration = zrythm::plugins::PluginConfiguration

Public Member Functions

std::unique_ptr< PluginConfiguration > create_configuration_for_descriptor (const plugins::PluginDescriptor &descr)
 Creates a configuration for the given descriptor based on an existing configuration if it exists, or otherwise creates a default configuration for the descriptor.
void serialize_to_file ()
 Serializes the current settings.
void serialize_to_file_no_throw ()
 Wrapper over serialize_to_file that ignores exceptions.
int get_format_major_version () const
int get_format_minor_version () const
std::string get_document_type () const
PluginConfiguration * find (const zrythm::plugins::PluginDescriptor &descr)
 Finds a setting for the given plugin descriptor.
void set (const PluginConfiguration &setting, bool serialize)
 Replaces a setting or appends a setting to the cache.
void increment_num_instantiations_for_plugin (const plugins::PluginDescriptor &descr)
void activate_plugin_configuration (const PluginConfiguration &config, bool autoroute_multiout, bool has_stereo_outputs)
 Creates necessary tracks at the end of the tracklist.
void activate_plugin_configuration_async (const PluginConfiguration &config)
 Asks the user a few things via dialogs then calls activate_plugin_configuration().

Static Public Member Functions

static std::unique_ptr< PluginConfigurationManagerread_or_new ()
 Reads the file and fills up the object, or creates an empty object if the file could not be read.

Friends

void to_json (nlohmann::json &j, const PluginConfigurationManager &p)
void from_json (const nlohmann::json &j, PluginConfigurationManager &p)

Detailed Description

Definition at line 27 of file plugin_configuration_manager.h.

Member Typedef Documentation

◆ PluginConfiguration

using PluginConfigurationManager::PluginConfiguration = zrythm::plugins::PluginConfiguration

Definition at line 30 of file plugin_configuration_manager.h.

Member Function Documentation

◆ activate_plugin_configuration()

void PluginConfigurationManager::activate_plugin_configuration ( const PluginConfiguration & config,
bool autoroute_multiout,
bool has_stereo_outputs )

Creates necessary tracks at the end of the tracklist.

Parameters
config
autoroute_multiout
has_stereo_outputs

This creates and performs undoable actions.

TODO: maybe move this to a PluginInstantiator/PluginFactory class?

◆ create_configuration_for_descriptor()

std::unique_ptr< PluginConfiguration > PluginConfigurationManager::create_configuration_for_descriptor ( const plugins::PluginDescriptor & descr)

Creates a configuration for the given descriptor based on an existing configuration if it exists, or otherwise creates a default configuration for the descriptor.

Parameters
descr
Returns
std::unique_ptr<PluginConfiguration>

◆ find()

PluginConfiguration * PluginConfigurationManager::find ( const zrythm::plugins::PluginDescriptor & descr)

Finds a setting for the given plugin descriptor.

Returns
The found setting or NULL.

◆ get_document_type()

std::string PluginConfigurationManager::get_document_type ( ) const
inline

Definition at line 74 of file plugin_configuration_manager.h.

◆ get_format_major_version()

int PluginConfigurationManager::get_format_major_version ( ) const
inline

Definition at line 72 of file plugin_configuration_manager.h.

◆ get_format_minor_version()

int PluginConfigurationManager::get_format_minor_version ( ) const
inline

Definition at line 73 of file plugin_configuration_manager.h.

◆ increment_num_instantiations_for_plugin()

void PluginConfigurationManager::increment_num_instantiations_for_plugin ( const plugins::PluginDescriptor & descr)
Note
This also serializes all plugin settings.

◆ serialize_to_file()

void PluginConfigurationManager::serialize_to_file ( )

Serializes the current settings.

Exceptions
ZrythmExceptionon error.

◆ serialize_to_file_no_throw()

void PluginConfigurationManager::serialize_to_file_no_throw ( )
inline

Wrapper over serialize_to_file that ignores exceptions.

Definition at line 60 of file plugin_configuration_manager.h.

◆ set()

void PluginConfigurationManager::set ( const PluginConfiguration & setting,
bool serialize )

Replaces a setting or appends a setting to the cache.

This clones the setting before adding it.

Parameters
serializeWhether to serialize the updated cache now.

◆ from_json

void from_json ( const nlohmann::json & j,
PluginConfigurationManager & p )
friend

Definition at line 129 of file plugin_configuration_manager.h.

◆ to_json

void to_json ( nlohmann::json & j,
const PluginConfigurationManager & p )
friend

Definition at line 125 of file plugin_configuration_manager.h.


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