Ardour  9.0-pre0-582-g084a23a80d
ARDOUR::ControlProtocolManager Class Reference

#include <control_protocol_manager.h>

Inheritance diagram for ARDOUR::ControlProtocolManager:
[legend]

Public Member Functions

 ~ControlProtocolManager ()
 
void set_session (Session *)
 
void discover_control_protocols ()
 
void foreach_known_protocol (std::function< void(const ControlProtocolInfo *)>)
 
void midi_connectivity_established (bool)
 
void drop_protocols ()
 
void probe_midi_control_protocols ()
 
void probe_usb_control_protocols (bool, uint16_t, uint16_t)
 
int activate (ControlProtocolInfo &)
 
int deactivate (ControlProtocolInfo &)
 
int set_state (const XMLNode &, int version)
 
XMLNodeget_state () const
 
void stripable_selection_changed (ARDOUR::StripableNotificationListPtr)
 
- Public Member Functions inherited from PBD::Stateful
 Stateful ()
 
virtual ~Stateful ()
 
virtual bool apply_change (PropertyBase const &)
 
PropertyChange apply_changes (PropertyList const &)
 
const OwnedPropertyListproperties () const
 
void add_property (PropertyBase &s)
 
void add_extra_xml (XMLNode &)
 
XMLNodeextra_xml (const std::string &str, bool add_if_missing=false)
 
void save_extra_xml (const XMLNode &)
 
const PBD::IDid () const
 
bool set_id (const XMLNode &)
 
void set_id (const std::string &)
 
void reset_id ()
 
void clear_changes ()
 
virtual void clear_owned_changes ()
 
PropertyListget_changes_as_properties (PBD::Command *) const
 
virtual void rdiff (std::vector< PBD::Command * > &) const
 
bool changed () const
 
virtual PropertyListproperty_factory (const XMLNode &) const
 
virtual void suspend_property_changes ()
 
virtual void resume_property_changes ()
 
bool property_changes_suspended () const
 
- Public Member Functions inherited from ARDOUR::SessionHandlePtr
 SessionHandlePtr (ARDOUR::Session *s)
 
 SessionHandlePtr ()
 
virtual ~SessionHandlePtr ()
 
virtual ARDOUR::Sessionsession () const
 

Static Public Member Functions

static ControlProtocolManagerinstance ()
 

Public Attributes

std::list< ControlProtocolInfo * > control_protocol_info
 
PBD::Signal< void(ControlProtocolInfo *)> ProtocolStatusChange
 
- Public Attributes inherited from PBD::Stateful
PBD::Signal< void(const PropertyChange &)> PropertyChanged
 

Static Public Attributes

static const std::string state_node_name
 
static PBD::Signal< void(ARDOUR::StripableNotificationListPtr)> StripableSelectionChanged
 
- Static Public Attributes inherited from PBD::Stateful
static int current_state_version
 
static int loading_state_version
 

Private Member Functions

 ControlProtocolManager ()
 
void session_going_away ()
 
int control_protocol_discover (std::string path)
 
ControlProtocolDescriptorget_descriptor (std::string path)
 
ControlProtocolInfocpi_by_name (std::string)
 
ControlProtocolinstantiate (ControlProtocolInfo &)
 
int teardown (ControlProtocolInfo &, bool lock_required)
 

Private Attributes

Glib::Threads::RWLock protocols_lock
 
std::list< ControlProtocol * > control_protocols
 

Static Private Attributes

static ControlProtocolManager_instance
 

Additional Inherited Members

- Protected Member Functions inherited from PBD::Stateful
void add_instant_xml (XMLNode &, const std::string &directory_path)
 
XMLNodeinstant_xml (const std::string &str, const std::string &directory_path)
 
void add_properties (XMLNode &) const
 
PropertyChange set_values (XMLNode const &)
 
virtual void post_set (const PropertyChange &)
 
virtual void send_change (const PropertyChange &)
 
virtual void mid_thaw (const PropertyChange &)
 
bool regenerate_xml_or_string_ids () const
 
- Protected Attributes inherited from PBD::Stateful
XMLNode_extra_xml
 
XMLNode_instant_xml
 
PBD::PropertyChange _pending_changed
 
Glib::Threads::Mutex _lock
 
std::string _xml_node_name
 name of node to use for this object in XML More...
 
OwnedPropertyList_properties
 
- Protected Attributes inherited from ARDOUR::SessionHandlePtr
ARDOUR::Session_session
 
PBD::ScopedConnectionList _session_connections
 

Detailed Description

Definition at line 65 of file control_protocol_manager.h.

Constructor & Destructor Documentation

◆ ~ControlProtocolManager()

ARDOUR::ControlProtocolManager::~ControlProtocolManager ( )

◆ ControlProtocolManager()

ARDOUR::ControlProtocolManager::ControlProtocolManager ( )
private

Member Function Documentation

◆ activate()

int ARDOUR::ControlProtocolManager::activate ( ControlProtocolInfo )

◆ control_protocol_discover()

int ARDOUR::ControlProtocolManager::control_protocol_discover ( std::string  path)
private

◆ cpi_by_name()

ControlProtocolInfo* ARDOUR::ControlProtocolManager::cpi_by_name ( std::string  )
private

◆ deactivate()

int ARDOUR::ControlProtocolManager::deactivate ( ControlProtocolInfo )

◆ discover_control_protocols()

void ARDOUR::ControlProtocolManager::discover_control_protocols ( )

◆ drop_protocols()

void ARDOUR::ControlProtocolManager::drop_protocols ( )

◆ foreach_known_protocol()

void ARDOUR::ControlProtocolManager::foreach_known_protocol ( std::function< void(const ControlProtocolInfo *)>  )

◆ get_descriptor()

ControlProtocolDescriptor* ARDOUR::ControlProtocolManager::get_descriptor ( std::string  path)
private

◆ get_state()

XMLNode& ARDOUR::ControlProtocolManager::get_state ( ) const
virtual

Implements PBD::Stateful.

◆ instance()

static ControlProtocolManager& ARDOUR::ControlProtocolManager::instance ( )
static

◆ instantiate()

ControlProtocol* ARDOUR::ControlProtocolManager::instantiate ( ControlProtocolInfo )
private

◆ midi_connectivity_established()

void ARDOUR::ControlProtocolManager::midi_connectivity_established ( bool  )

◆ probe_midi_control_protocols()

void ARDOUR::ControlProtocolManager::probe_midi_control_protocols ( )

◆ probe_usb_control_protocols()

void ARDOUR::ControlProtocolManager::probe_usb_control_protocols ( bool  ,
uint16_t  ,
uint16_t   
)

◆ session_going_away()

void ARDOUR::ControlProtocolManager::session_going_away ( )
privatevirtual

Reimplemented from ARDOUR::SessionHandlePtr.

◆ set_session()

void ARDOUR::ControlProtocolManager::set_session ( Session )
virtual

Reimplemented from ARDOUR::SessionHandlePtr.

◆ set_state()

int ARDOUR::ControlProtocolManager::set_state ( const XMLNode ,
int  version 
)
virtual

Implements PBD::Stateful.

◆ stripable_selection_changed()

void ARDOUR::ControlProtocolManager::stripable_selection_changed ( ARDOUR::StripableNotificationListPtr  )

◆ teardown()

int ARDOUR::ControlProtocolManager::teardown ( ControlProtocolInfo ,
bool  lock_required 
)
private

Member Data Documentation

◆ _instance

ControlProtocolManager* ARDOUR::ControlProtocolManager::_instance
staticprivate

Definition at line 97 of file control_protocol_manager.h.

◆ control_protocol_info

std::list<ControlProtocolInfo*> ARDOUR::ControlProtocolManager::control_protocol_info

Definition at line 83 of file control_protocol_manager.h.

◆ control_protocols

std::list<ControlProtocol*> ARDOUR::ControlProtocolManager::control_protocols
private

Definition at line 100 of file control_protocol_manager.h.

◆ protocols_lock

Glib::Threads::RWLock ARDOUR::ControlProtocolManager::protocols_lock
mutableprivate

Definition at line 99 of file control_protocol_manager.h.

◆ ProtocolStatusChange

PBD::Signal<void(ControlProtocolInfo*)> ARDOUR::ControlProtocolManager::ProtocolStatusChange

Definition at line 90 of file control_protocol_manager.h.

◆ state_node_name

const std::string ARDOUR::ControlProtocolManager::state_node_name
static

Definition at line 85 of file control_protocol_manager.h.

◆ StripableSelectionChanged

PBD::Signal<void(ARDOUR::StripableNotificationListPtr)> ARDOUR::ControlProtocolManager::StripableSelectionChanged
static

Definition at line 93 of file control_protocol_manager.h.


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