Ardour  9.0-pre0-582-g084a23a80d
Steinberg::VST3PI Class Reference

#include <vst3_plugin.h>

Inheritance diagram for Steinberg::VST3PI:
[legend]

Classes

struct  AudioBusInfo
 
struct  Param
 
class  RouteProcessorChangeBlock
 

Public Types

enum  ParameterChange {
  BeginGesture , EndGesture , ValueChange , InternalChange ,
  PresetChange , ParamValueChanged
}
 

Public Member Functions

 VST3PI (std::shared_ptr< ARDOUR::VST3PluginModule > m, std::string unique_id)
 
virtual ~VST3PI ()
 
tresult PLUGIN_API beginEdit (Vst::ParamID id) SMTG_OVERRIDE
 
tresult PLUGIN_API performEdit (Vst::ParamID id, Vst::ParamValue value) SMTG_OVERRIDE
 
tresult PLUGIN_API endEdit (Vst::ParamID id) SMTG_OVERRIDE
 
tresult PLUGIN_API restartComponent (int32 flags) SMTG_OVERRIDE
 
tresult PLUGIN_API setDirty (TBool state) SMTG_OVERRIDE
 
tresult PLUGIN_API requestOpenEditor (FIDString name) SMTG_OVERRIDE
 
tresult PLUGIN_API startGroupEdit () SMTG_OVERRIDE
 
tresult PLUGIN_API finishGroupEdit () SMTG_OVERRIDE
 
tresult PLUGIN_API resizeView (IPlugView *view, ViewRect *newSize) SMTG_OVERRIDE
 
tresult PLUGIN_API notifyUnitSelection (Vst::UnitID) SMTG_OVERRIDE
 
tresult PLUGIN_API notifyProgramListChange (Vst::ProgramListID, int32) SMTG_OVERRIDE
 
tresult PLUGIN_API getContextInfoValue (int32 &, FIDString) SMTG_OVERRIDE
 
tresult PLUGIN_API getContextInfoString (Vst::TChar *, int32, FIDString) SMTG_OVERRIDE
 
tresult PLUGIN_API getContextInfoValue (double &, FIDString) SMTG_OVERRIDE
 
tresult PLUGIN_API setContextInfoValue (FIDString, double) SMTG_OVERRIDE
 
tresult PLUGIN_API setContextInfoValue (FIDString, int32) SMTG_OVERRIDE
 
tresult PLUGIN_API setContextInfoString (FIDString, Vst::TChar *) SMTG_OVERRIDE
 
tresult PLUGIN_API beginEditContextInfoValue (FIDString) SMTG_OVERRIDE
 
tresult PLUGIN_API endEditContextInfoValue (FIDString) SMTG_OVERRIDE
 
bool has_editor () const
 
IPlugView * view ()
 
void close_view ()
 
void update_contoller_param ()
 
tresult PLUGIN_API queryInterface (const TUID _iid, void **obj) SMTG_OVERRIDE
 
uint32 PLUGIN_API addRef () SMTG_OVERRIDE
 
uint32 PLUGIN_API release () SMTG_OVERRIDE
 
FUID const & fuid () const
 
IPtr< Vst::IUnitInfo > unit_info ()
 
Vst::ParameterInfo const & program_change_port () const
 
void set_n_factory_presets (size_t n)
 
size_t n_factory_presets () const
 
uint32_t designated_bypass_port () const
 
uint32_t parameter_count () const
 
bool parameter_is_automatable (uint32_t p) const
 
bool parameter_is_readonly (uint32_t p) const
 
std::string parameter_label (uint32_t p) const
 
float default_value (uint32_t p) const
 
void get_parameter_descriptor (uint32_t, ARDOUR::ParameterDescriptor &) const
 
std::string print_parameter (uint32_t p) const
 
std::string print_parameter (Vst::ParamID, Vst::ParamValue) const
 
bool set_program (int p, int32 sample_off)
 
bool subscribe_to_automation_changes () const
 
void automation_state_changed (uint32_t, ARDOUR::AutoState, std::weak_ptr< ARDOUR::AutomationList >)
 
ARDOUR::Plugin::IOPortDescription describe_io_port (ARDOUR::DataType dt, bool input, uint32_t id) const
 
uint32_t n_audio_inputs (bool with_aux=true) const
 
uint32_t n_audio_outputs (bool with_aux=true) const
 
uint32_t n_audio_aux_in () const
 
uint32_t n_audio_aux_out () const
 
std::map< int, AudioBusInfo > const & bus_info_in () const
 
std::map< int, AudioBusInfo > const & bus_info_out () const
 
void cycle_start ()
 
void add_event (Evoral::Event< samplepos_t > const &, int32_t bus)
 
void vst3_to_midi_buffers (ARDOUR::BufferSet &, ARDOUR::ChanMapping const &)
 
uint32_t n_midi_inputs () const
 
uint32_t n_midi_outputs () const
 
bool try_set_parameter_by_id (Vst::ParamID id, float value)
 
void set_parameter (uint32_t p, float value, int32 sample_off, bool to_list=true, bool force=false)
 
float get_parameter (uint32_t p) const
 
std::string format_parameter (uint32_t p) const
 
Vst::ParamID index_to_id (uint32_t) const
 
Glib::Threads::Mutex & process_lock ()
 
bool & component_is_synced ()
 
uint32_t plugin_latency ()
 
uint32_t plugin_tailtime ()
 
bool set_block_size (int32_t)
 
bool activate ()
 
bool deactivate ()
 
bool active () const
 
bool is_loading_state () const
 
bool save_state (RAMStream &stream)
 
bool load_state (RAMStream &stream)
 
Vst::ProcessContext & context ()
 
void set_owner (ARDOUR::SessionObject *o)
 
void set_non_realtime (bool)
 
void enable_io (std::vector< bool > const &, std::vector< bool > const &)
 
void process (float **ins, float **outs, uint32_t n_samples)
 
Vst::IEditController * controller () const
 
bool add_slave (Vst::IEditController *, bool)
 
bool remove_slave (Vst::IEditController *)
 

Public Attributes

PBD::Signal< void(int, int)> OnResizeView
 
PBD::Signal< void(ParameterChange, uint32_t, float)> OnParameterChange
 

Private Member Functions

 VST3PI (const VST3PI &)
 
void terminate ()
 
IPlugView * try_create_view () const
 
bool connect_components ()
 
bool disconnect_components ()
 
bool update_processor ()
 
int32 count_channels (Vst::MediaType, Vst::BusDirection, Vst::BusType)
 
bool evoral_to_vst3 (Vst::Event &, Evoral::Event< samplepos_t > const &, int32_t)
 
void update_shadow_data ()
 
bool synchronize_states ()
 
void set_parameter_by_id (Vst::ParamID id, float value, int32 sample_off)
 
void set_parameter_internal (Vst::ParamID id, float value, int32 sample_off)
 
void set_event_bus_state (bool enabled)
 
bool midi_controller (int32_t, int16_t, Vst::CtrlNumber, Vst::ParamID &id)
 
bool live_midi_cc (int32_t, int16_t, Vst::CtrlNumber)
 
bool setup_info_listener ()
 
void stripable_property_changed (PBD::PropertyChange const &)
 
bool setup_psl_info_handler ()
 
void psl_subscribe_to (std::shared_ptr< ARDOUR::AutomationControl >, FIDString)
 
void psl_stripable_property_changed (PBD::PropertyChange const &)
 
void block_notifications ()
 
void resume_notifications ()
 
void send_processors_changed (ARDOUR::RouteProcessorChange const &)
 
void forward_signal (Presonus::IContextInfoHandler2 *, FIDString) const
 

Private Attributes

std::shared_ptr< ARDOUR::VST3PluginModule_module
 
std::shared_ptr< ConnectionProxy_component_cproxy
 
std::shared_ptr< ConnectionProxy_controller_cproxy
 
FUID _fuid
 
Vst::IComponent * _component
 
Vst::IEditController * _controller
 
IPlugView * _view
 
IPtr< Vst::IAudioProcessor > _processor
 
Vst::ProcessContext _context
 
Glib::Threads::Mutex _process_lock
 
Vst3ParameterChanges _input_param_changes
 
Vst3ParameterChanges _output_param_changes
 
Vst3EventList _input_events
 
Vst3EventList _output_events
 
bool _is_loading_state
 
bool _is_processing
 
int32_t _block_size
 
bool _process_offline
 
uint32_t _port_id_bypass
 
Vst::ParameterInfo _program_change_port
 
std::vector< Param_ctrl_params
 
std::map< Vst::ParamID, uint32_t > _ctrl_id_index
 
std::map< uint32_t, Vst::ParamID > _ctrl_index_id
 
std::vector< float > _shadow_data
 
std::vector< bool > _update_ctrl
 
std::vector< ARDOUR::Plugin::IOPortDescription_io_name [Vst::kNumMediaTypes][2]
 
std::vector< bool > _enabled_audio_in
 
std::vector< bool > _enabled_audio_out
 
ARDOUR::SessionObject_owner
 
PBD::ScopedConnectionList _strip_connections
 
PBD::ScopedConnectionList _ac_connection_list
 
std::set< Evoral::Parameter_ac_subscriptions
 
bool _add_to_selection
 
std::optional< uint32_t > _plugin_latency
 
std::optional< uint32_t > _plugin_tail
 
int _n_bus_in
 
int _n_bus_out
 
std::vector< Vst::AudioBusBuffers > _busbuf_in
 
std::vector< Vst::AudioBusBuffers > _busbuf_out
 
std::map< int, int > _n_buschn_in
 
std::map< int, int > _n_buschn_out
 
std::map< int, AudioBusInfo_bus_info_in
 
std::map< int, AudioBusInfo_bus_info_out
 
int _n_inputs
 
int _n_outputs
 
int _n_aux_inputs
 
int _n_aux_outputs
 
int _n_midi_inputs
 
int _n_midi_outputs
 
int _n_factory_presets
 
std::atomic< int > _block_rpc
 
ARDOUR::RouteProcessorChange _rpc_queue
 
bool _no_kMono
 
bool _restart_component_is_synced
 
std::atomic< bool > _in_set_owner
 

Detailed Description

Definition at line 58 of file vst3_plugin.h.

Member Enumeration Documentation

◆ ParameterChange

Enumerator
BeginGesture 
EndGesture 
ValueChange 
InternalChange 
PresetChange 
ParamValueChanged 

Definition at line 173 of file vst3_plugin.h.

Constructor & Destructor Documentation

◆ VST3PI() [1/2]

Steinberg::VST3PI::VST3PI ( std::shared_ptr< ARDOUR::VST3PluginModule m,
std::string  unique_id 
)

◆ ~VST3PI()

virtual Steinberg::VST3PI::~VST3PI ( )
virtual

◆ VST3PI() [2/2]

Steinberg::VST3PI::VST3PI ( const VST3PI )
private

Member Function Documentation

◆ activate()

bool Steinberg::VST3PI::activate ( )

◆ active()

bool Steinberg::VST3PI::active ( ) const
inline

Definition at line 189 of file vst3_plugin.h.

◆ add_event()

void Steinberg::VST3PI::add_event ( Evoral::Event< samplepos_t > const &  ,
int32_t  bus 
)

◆ add_slave()

bool Steinberg::VST3PI::add_slave ( Vst::IEditController *  ,
bool   
)

◆ addRef()

uint32 PLUGIN_API Steinberg::VST3PI::addRef ( )
inline

Definition at line 106 of file vst3_plugin.h.

◆ automation_state_changed()

void Steinberg::VST3PI::automation_state_changed ( uint32_t  ,
ARDOUR::AutoState  ,
std::weak_ptr< ARDOUR::AutomationList  
)

◆ beginEdit()

tresult PLUGIN_API Steinberg::VST3PI::beginEdit ( Vst::ParamID  id)

◆ beginEditContextInfoValue()

tresult PLUGIN_API Steinberg::VST3PI::beginEditContextInfoValue ( FIDString  )

◆ block_notifications()

void Steinberg::VST3PI::block_notifications ( )
private

◆ bus_info_in()

std::map<int, AudioBusInfo> const& Steinberg::VST3PI::bus_info_in ( ) const
inline

Definition at line 151 of file vst3_plugin.h.

◆ bus_info_out()

std::map<int, AudioBusInfo> const& Steinberg::VST3PI::bus_info_out ( ) const
inline

Definition at line 152 of file vst3_plugin.h.

◆ close_view()

void Steinberg::VST3PI::close_view ( )

◆ component_is_synced()

bool& Steinberg::VST3PI::component_is_synced ( )
inline

Definition at line 170 of file vst3_plugin.h.

◆ connect_components()

bool Steinberg::VST3PI::connect_components ( )
private

◆ context()

Vst::ProcessContext& Steinberg::VST3PI::context ( )
inline

Definition at line 196 of file vst3_plugin.h.

◆ controller()

Vst::IEditController* Steinberg::VST3PI::controller ( ) const
inline

Definition at line 209 of file vst3_plugin.h.

◆ count_channels()

int32 Steinberg::VST3PI::count_channels ( Vst::MediaType  ,
Vst::BusDirection  ,
Vst::BusType   
)
private

◆ cycle_start()

void Steinberg::VST3PI::cycle_start ( )

◆ deactivate()

bool Steinberg::VST3PI::deactivate ( )

◆ default_value()

float Steinberg::VST3PI::default_value ( uint32_t  p) const

◆ describe_io_port()

ARDOUR::Plugin::IOPortDescription Steinberg::VST3PI::describe_io_port ( ARDOUR::DataType  dt,
bool  input,
uint32_t  id 
) const

◆ designated_bypass_port()

uint32_t Steinberg::VST3PI::designated_bypass_port ( ) const
inline

Definition at line 119 of file vst3_plugin.h.

◆ disconnect_components()

bool Steinberg::VST3PI::disconnect_components ( )
private

◆ enable_io()

void Steinberg::VST3PI::enable_io ( std::vector< bool > const &  ,
std::vector< bool > const &   
)

◆ endEdit()

tresult PLUGIN_API Steinberg::VST3PI::endEdit ( Vst::ParamID  id)

◆ endEditContextInfoValue()

tresult PLUGIN_API Steinberg::VST3PI::endEditContextInfoValue ( FIDString  )

◆ evoral_to_vst3()

bool Steinberg::VST3PI::evoral_to_vst3 ( Vst::Event &  ,
Evoral::Event< samplepos_t > const &  ,
int32_t   
)
private

◆ finishGroupEdit()

tresult PLUGIN_API Steinberg::VST3PI::finishGroupEdit ( )

◆ format_parameter()

std::string Steinberg::VST3PI::format_parameter ( uint32_t  p) const

◆ forward_signal()

void Steinberg::VST3PI::forward_signal ( Presonus::IContextInfoHandler2 *  ,
FIDString   
) const
private

◆ fuid()

FUID const& Steinberg::VST3PI::fuid ( ) const
inline

Definition at line 109 of file vst3_plugin.h.

◆ get_parameter()

float Steinberg::VST3PI::get_parameter ( uint32_t  p) const

◆ get_parameter_descriptor()

void Steinberg::VST3PI::get_parameter_descriptor ( uint32_t  ,
ARDOUR::ParameterDescriptor  
) const

◆ getContextInfoString()

tresult PLUGIN_API Steinberg::VST3PI::getContextInfoString ( Vst::TChar *  ,
int32  ,
FIDString   
)

◆ getContextInfoValue() [1/2]

tresult PLUGIN_API Steinberg::VST3PI::getContextInfoValue ( double &  ,
FIDString   
)

◆ getContextInfoValue() [2/2]

tresult PLUGIN_API Steinberg::VST3PI::getContextInfoValue ( int32 &  ,
FIDString   
)

◆ has_editor()

bool Steinberg::VST3PI::has_editor ( ) const

◆ index_to_id()

Vst::ParamID Steinberg::VST3PI::index_to_id ( uint32_t  ) const

◆ is_loading_state()

bool Steinberg::VST3PI::is_loading_state ( ) const
inline

Definition at line 190 of file vst3_plugin.h.

◆ live_midi_cc()

bool Steinberg::VST3PI::live_midi_cc ( int32_t  ,
int16_t  ,
Vst::CtrlNumber   
)
private

◆ load_state()

bool Steinberg::VST3PI::load_state ( RAMStream &  stream)

◆ midi_controller()

bool Steinberg::VST3PI::midi_controller ( int32_t  ,
int16_t  ,
Vst::CtrlNumber  ,
Vst::ParamID &  id 
)
private

◆ n_audio_aux_in()

uint32_t Steinberg::VST3PI::n_audio_aux_in ( ) const
inline

Definition at line 139 of file vst3_plugin.h.

◆ n_audio_aux_out()

uint32_t Steinberg::VST3PI::n_audio_aux_out ( ) const
inline

Definition at line 140 of file vst3_plugin.h.

◆ n_audio_inputs()

uint32_t Steinberg::VST3PI::n_audio_inputs ( bool  with_aux = true) const

◆ n_audio_outputs()

uint32_t Steinberg::VST3PI::n_audio_outputs ( bool  with_aux = true) const

◆ n_factory_presets()

size_t Steinberg::VST3PI::n_factory_presets ( ) const
inline

Definition at line 116 of file vst3_plugin.h.

◆ n_midi_inputs()

uint32_t Steinberg::VST3PI::n_midi_inputs ( ) const

◆ n_midi_outputs()

uint32_t Steinberg::VST3PI::n_midi_outputs ( ) const

◆ notifyProgramListChange()

tresult PLUGIN_API Steinberg::VST3PI::notifyProgramListChange ( Vst::ProgramListID  ,
int32   
)

◆ notifyUnitSelection()

tresult PLUGIN_API Steinberg::VST3PI::notifyUnitSelection ( Vst::UnitID  )

◆ parameter_count()

uint32_t Steinberg::VST3PI::parameter_count ( ) const
inline

Definition at line 120 of file vst3_plugin.h.

◆ parameter_is_automatable()

bool Steinberg::VST3PI::parameter_is_automatable ( uint32_t  p) const
inline

Definition at line 121 of file vst3_plugin.h.

◆ parameter_is_readonly()

bool Steinberg::VST3PI::parameter_is_readonly ( uint32_t  p) const
inline

Definition at line 122 of file vst3_plugin.h.

◆ parameter_label()

std::string Steinberg::VST3PI::parameter_label ( uint32_t  p) const
inline

Definition at line 123 of file vst3_plugin.h.

◆ performEdit()

tresult PLUGIN_API Steinberg::VST3PI::performEdit ( Vst::ParamID  id,
Vst::ParamValue  value 
)

◆ plugin_latency()

uint32_t Steinberg::VST3PI::plugin_latency ( )

◆ plugin_tailtime()

uint32_t Steinberg::VST3PI::plugin_tailtime ( )

◆ print_parameter() [1/2]

std::string Steinberg::VST3PI::print_parameter ( uint32_t  p) const

◆ print_parameter() [2/2]

std::string Steinberg::VST3PI::print_parameter ( Vst::ParamID  ,
Vst::ParamValue   
) const

◆ process()

void Steinberg::VST3PI::process ( float **  ins,
float **  outs,
uint32_t  n_samples 
)

◆ process_lock()

Glib::Threads::Mutex& Steinberg::VST3PI::process_lock ( )
inline

Definition at line 169 of file vst3_plugin.h.

◆ program_change_port()

Vst::ParameterInfo const& Steinberg::VST3PI::program_change_port ( ) const
inline

Definition at line 113 of file vst3_plugin.h.

◆ psl_stripable_property_changed()

void Steinberg::VST3PI::psl_stripable_property_changed ( PBD::PropertyChange const &  )
private

◆ psl_subscribe_to()

void Steinberg::VST3PI::psl_subscribe_to ( std::shared_ptr< ARDOUR::AutomationControl ,
FIDString   
)
private

◆ queryInterface()

tresult PLUGIN_API Steinberg::VST3PI::queryInterface ( const TUID  _iid,
void **  obj 
)

◆ release()

uint32 PLUGIN_API Steinberg::VST3PI::release ( )
inline

Definition at line 107 of file vst3_plugin.h.

◆ remove_slave()

bool Steinberg::VST3PI::remove_slave ( Vst::IEditController *  )

◆ requestOpenEditor()

tresult PLUGIN_API Steinberg::VST3PI::requestOpenEditor ( FIDString  name)

◆ resizeView()

tresult PLUGIN_API Steinberg::VST3PI::resizeView ( IPlugView *  view,
ViewRect *  newSize 
)

◆ restartComponent()

tresult PLUGIN_API Steinberg::VST3PI::restartComponent ( int32  flags)

◆ resume_notifications()

void Steinberg::VST3PI::resume_notifications ( )
private

◆ save_state()

bool Steinberg::VST3PI::save_state ( RAMStream &  stream)

◆ send_processors_changed()

void Steinberg::VST3PI::send_processors_changed ( ARDOUR::RouteProcessorChange const &  )
private

◆ set_block_size()

bool Steinberg::VST3PI::set_block_size ( int32_t  )

◆ set_event_bus_state()

void Steinberg::VST3PI::set_event_bus_state ( bool  enabled)
private

◆ set_n_factory_presets()

void Steinberg::VST3PI::set_n_factory_presets ( size_t  n)
inline

Definition at line 115 of file vst3_plugin.h.

◆ set_non_realtime()

void Steinberg::VST3PI::set_non_realtime ( bool  )

◆ set_owner()

void Steinberg::VST3PI::set_owner ( ARDOUR::SessionObject o)

◆ set_parameter()

void Steinberg::VST3PI::set_parameter ( uint32_t  p,
float  value,
int32  sample_off,
bool  to_list = true,
bool  force = false 
)

◆ set_parameter_by_id()

void Steinberg::VST3PI::set_parameter_by_id ( Vst::ParamID  id,
float  value,
int32  sample_off 
)
private

◆ set_parameter_internal()

void Steinberg::VST3PI::set_parameter_internal ( Vst::ParamID  id,
float  value,
int32  sample_off 
)
private

◆ set_program()

bool Steinberg::VST3PI::set_program ( int  p,
int32  sample_off 
)

◆ setContextInfoString()

tresult PLUGIN_API Steinberg::VST3PI::setContextInfoString ( FIDString  ,
Vst::TChar *   
)

◆ setContextInfoValue() [1/2]

tresult PLUGIN_API Steinberg::VST3PI::setContextInfoValue ( FIDString  ,
double   
)

◆ setContextInfoValue() [2/2]

tresult PLUGIN_API Steinberg::VST3PI::setContextInfoValue ( FIDString  ,
int32   
)

◆ setDirty()

tresult PLUGIN_API Steinberg::VST3PI::setDirty ( TBool  state)

◆ setup_info_listener()

bool Steinberg::VST3PI::setup_info_listener ( )
private

◆ setup_psl_info_handler()

bool Steinberg::VST3PI::setup_psl_info_handler ( )
private

◆ startGroupEdit()

tresult PLUGIN_API Steinberg::VST3PI::startGroupEdit ( )

◆ stripable_property_changed()

void Steinberg::VST3PI::stripable_property_changed ( PBD::PropertyChange const &  )
private

◆ subscribe_to_automation_changes()

bool Steinberg::VST3PI::subscribe_to_automation_changes ( ) const

◆ synchronize_states()

bool Steinberg::VST3PI::synchronize_states ( )
private

◆ terminate()

void Steinberg::VST3PI::terminate ( )
private

◆ try_create_view()

IPlugView* Steinberg::VST3PI::try_create_view ( ) const
private

◆ try_set_parameter_by_id()

bool Steinberg::VST3PI::try_set_parameter_by_id ( Vst::ParamID  id,
float  value 
)

◆ unit_info()

IPtr<Vst::IUnitInfo> Steinberg::VST3PI::unit_info ( )

◆ update_contoller_param()

void Steinberg::VST3PI::update_contoller_param ( )

◆ update_processor()

bool Steinberg::VST3PI::update_processor ( )
private

◆ update_shadow_data()

void Steinberg::VST3PI::update_shadow_data ( )
private

◆ view()

IPlugView* Steinberg::VST3PI::view ( )

◆ vst3_to_midi_buffers()

void Steinberg::VST3PI::vst3_to_midi_buffers ( ARDOUR::BufferSet ,
ARDOUR::ChanMapping const &   
)

Member Data Documentation

◆ _ac_connection_list

PBD::ScopedConnectionList Steinberg::VST3PI::_ac_connection_list
private

Definition at line 327 of file vst3_plugin.h.

◆ _ac_subscriptions

std::set<Evoral::Parameter> Steinberg::VST3PI::_ac_subscriptions
private

Definition at line 328 of file vst3_plugin.h.

◆ _add_to_selection

bool Steinberg::VST3PI::_add_to_selection
private

Definition at line 329 of file vst3_plugin.h.

◆ _block_rpc

std::atomic<int> Steinberg::VST3PI::_block_rpc
mutableprivate

Definition at line 355 of file vst3_plugin.h.

◆ _block_size

int32_t Steinberg::VST3PI::_block_size
private

Definition at line 296 of file vst3_plugin.h.

◆ _bus_info_in

std::map<int, AudioBusInfo> Steinberg::VST3PI::_bus_info_in
private

Definition at line 344 of file vst3_plugin.h.

◆ _bus_info_out

std::map<int, AudioBusInfo> Steinberg::VST3PI::_bus_info_out
private

Definition at line 345 of file vst3_plugin.h.

◆ _busbuf_in

std::vector<Vst::AudioBusBuffers> Steinberg::VST3PI::_busbuf_in
private

Definition at line 337 of file vst3_plugin.h.

◆ _busbuf_out

std::vector<Vst::AudioBusBuffers> Steinberg::VST3PI::_busbuf_out
private

Definition at line 338 of file vst3_plugin.h.

◆ _component

Vst::IComponent* Steinberg::VST3PI::_component
private

Definition at line 278 of file vst3_plugin.h.

◆ _component_cproxy

std::shared_ptr<ConnectionProxy> Steinberg::VST3PI::_component_cproxy
private

Definition at line 274 of file vst3_plugin.h.

◆ _context

Vst::ProcessContext Steinberg::VST3PI::_context
private

Definition at line 283 of file vst3_plugin.h.

◆ _controller

Vst::IEditController* Steinberg::VST3PI::_controller
private

Definition at line 279 of file vst3_plugin.h.

◆ _controller_cproxy

std::shared_ptr<ConnectionProxy> Steinberg::VST3PI::_controller_cproxy
private

Definition at line 275 of file vst3_plugin.h.

◆ _ctrl_id_index

std::map<Vst::ParamID, uint32_t> Steinberg::VST3PI::_ctrl_id_index
private

Definition at line 314 of file vst3_plugin.h.

◆ _ctrl_index_id

std::map<uint32_t, Vst::ParamID> Steinberg::VST3PI::_ctrl_index_id
private

Definition at line 315 of file vst3_plugin.h.

◆ _ctrl_params

std::vector<Param> Steinberg::VST3PI::_ctrl_params
private

Definition at line 313 of file vst3_plugin.h.

◆ _enabled_audio_in

std::vector<bool> Steinberg::VST3PI::_enabled_audio_in
private

Definition at line 321 of file vst3_plugin.h.

◆ _enabled_audio_out

std::vector<bool> Steinberg::VST3PI::_enabled_audio_out
private

Definition at line 322 of file vst3_plugin.h.

◆ _fuid

FUID Steinberg::VST3PI::_fuid
private

Definition at line 277 of file vst3_plugin.h.

◆ _in_set_owner

std::atomic<bool> Steinberg::VST3PI::_in_set_owner
private

Definition at line 365 of file vst3_plugin.h.

◆ _input_events

Vst3EventList Steinberg::VST3PI::_input_events
private

Definition at line 290 of file vst3_plugin.h.

◆ _input_param_changes

Vst3ParameterChanges Steinberg::VST3PI::_input_param_changes
private

Definition at line 287 of file vst3_plugin.h.

◆ _io_name

std::vector<ARDOUR::Plugin::IOPortDescription> Steinberg::VST3PI::_io_name[Vst::kNumMediaTypes][2]
private

Definition at line 319 of file vst3_plugin.h.

◆ _is_loading_state

bool Steinberg::VST3PI::_is_loading_state
private

Definition at line 294 of file vst3_plugin.h.

◆ _is_processing

bool Steinberg::VST3PI::_is_processing
private

Definition at line 295 of file vst3_plugin.h.

◆ _module

std::shared_ptr<ARDOUR::VST3PluginModule> Steinberg::VST3PI::_module
private

Definition at line 272 of file vst3_plugin.h.

◆ _n_aux_inputs

int Steinberg::VST3PI::_n_aux_inputs
private

Definition at line 349 of file vst3_plugin.h.

◆ _n_aux_outputs

int Steinberg::VST3PI::_n_aux_outputs
private

Definition at line 350 of file vst3_plugin.h.

◆ _n_bus_in

int Steinberg::VST3PI::_n_bus_in
private

Definition at line 334 of file vst3_plugin.h.

◆ _n_bus_out

int Steinberg::VST3PI::_n_bus_out
private

Definition at line 335 of file vst3_plugin.h.

◆ _n_buschn_in

std::map<int, int> Steinberg::VST3PI::_n_buschn_in
private

Definition at line 341 of file vst3_plugin.h.

◆ _n_buschn_out

std::map<int, int> Steinberg::VST3PI::_n_buschn_out
private

Definition at line 342 of file vst3_plugin.h.

◆ _n_factory_presets

int Steinberg::VST3PI::_n_factory_presets
private

Definition at line 353 of file vst3_plugin.h.

◆ _n_inputs

int Steinberg::VST3PI::_n_inputs
private

Definition at line 347 of file vst3_plugin.h.

◆ _n_midi_inputs

int Steinberg::VST3PI::_n_midi_inputs
private

Definition at line 351 of file vst3_plugin.h.

◆ _n_midi_outputs

int Steinberg::VST3PI::_n_midi_outputs
private

Definition at line 352 of file vst3_plugin.h.

◆ _n_outputs

int Steinberg::VST3PI::_n_outputs
private

Definition at line 348 of file vst3_plugin.h.

◆ _no_kMono

bool Steinberg::VST3PI::_no_kMono
private

Definition at line 359 of file vst3_plugin.h.

◆ _output_events

Vst3EventList Steinberg::VST3PI::_output_events
private

Definition at line 291 of file vst3_plugin.h.

◆ _output_param_changes

Vst3ParameterChanges Steinberg::VST3PI::_output_param_changes
private

Definition at line 288 of file vst3_plugin.h.

◆ _owner

ARDOUR::SessionObject* Steinberg::VST3PI::_owner
private

Definition at line 325 of file vst3_plugin.h.

◆ _plugin_latency

std::optional<uint32_t> Steinberg::VST3PI::_plugin_latency
private

Definition at line 331 of file vst3_plugin.h.

◆ _plugin_tail

std::optional<uint32_t> Steinberg::VST3PI::_plugin_tail
private

Definition at line 332 of file vst3_plugin.h.

◆ _port_id_bypass

uint32_t Steinberg::VST3PI::_port_id_bypass
private

Definition at line 311 of file vst3_plugin.h.

◆ _process_lock

Glib::Threads::Mutex Steinberg::VST3PI::_process_lock
private

Definition at line 284 of file vst3_plugin.h.

◆ _process_offline

bool Steinberg::VST3PI::_process_offline
private

Definition at line 297 of file vst3_plugin.h.

◆ _processor

IPtr<Vst::IAudioProcessor> Steinberg::VST3PI::_processor
private

Definition at line 282 of file vst3_plugin.h.

◆ _program_change_port

Vst::ParameterInfo Steinberg::VST3PI::_program_change_port
private

Definition at line 312 of file vst3_plugin.h.

◆ _restart_component_is_synced

bool Steinberg::VST3PI::_restart_component_is_synced
private

Definition at line 361 of file vst3_plugin.h.

◆ _rpc_queue

ARDOUR::RouteProcessorChange Steinberg::VST3PI::_rpc_queue
private

Definition at line 356 of file vst3_plugin.h.

◆ _shadow_data

std::vector<float> Steinberg::VST3PI::_shadow_data
private

Definition at line 316 of file vst3_plugin.h.

◆ _strip_connections

PBD::ScopedConnectionList Steinberg::VST3PI::_strip_connections
private

Definition at line 326 of file vst3_plugin.h.

◆ _update_ctrl

std::vector<bool> Steinberg::VST3PI::_update_ctrl
mutableprivate

Definition at line 317 of file vst3_plugin.h.

◆ _view

IPlugView* Steinberg::VST3PI::_view
private

Definition at line 280 of file vst3_plugin.h.

◆ OnParameterChange

PBD::Signal<void(ParameterChange, uint32_t, float)> Steinberg::VST3PI::OnParameterChange

Definition at line 181 of file vst3_plugin.h.

◆ OnResizeView

PBD::Signal<void(int, int)> Steinberg::VST3PI::OnResizeView

Definition at line 103 of file vst3_plugin.h.


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