ardour
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
ARDOUR::ControlProtocolManager Class Reference

#include <control_protocol_manager.h>

Inheritance diagram for ARDOUR::ControlProtocolManager:
PBD::Stateful ARDOUR::SessionHandlePtr

Public Member Functions

 ~ControlProtocolManager ()
 
void set_session (Session *)
 
void discover_control_protocols ()
 
void foreach_known_protocol (boost::function< void(const ControlProtocolInfo *)>)
 
void load_mandatory_protocols ()
 
void midi_connectivity_established ()
 
int activate (ControlProtocolInfo &)
 
int deactivate (ControlProtocolInfo &)
 
int set_state (const XMLNode &, int version)
 
XMLNodeget_state (void)
 
- Public Member Functions inherited from PBD::Stateful
 Stateful ()
 
virtual ~Stateful ()
 
virtual bool apply_changes (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 (Command *) const
 
virtual void rdiff (std::vector< 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 ()
 

Static Public Member Functions

static ControlProtocolManagerinstance ()
 

Public Attributes

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

Static Public Attributes

static const std::string state_node_name = X_("ControlProtocols")
 
- Static Public Attributes inherited from PBD::Stateful
static int current_state_version = 0
 
static int loading_state_version = 0
 

Private Member Functions

 ControlProtocolManager ()
 
void session_going_away ()
 
int control_protocol_discover (std::string path)
 
ControlProtocolDescriptor * get_descriptor (std::string path)
 
ControlProtocolInfocpi_by_name (std::string)
 
ControlProtocol * instantiate (ControlProtocolInfo &)
 
int teardown (ControlProtocolInfo &)
 

Private Attributes

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

Static Private Attributes

static ControlProtocolManager_instance = 0
 

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 &)
 
PropertyChange set_values (XMLNode const &)
 
virtual void post_set (const PropertyChange &)
 
virtual void send_change (const PropertyChange &)
 
virtual void mid_thaw (const PropertyChange &)
 
- 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 55 of file control_protocol_manager.h.

Constructor & Destructor Documentation

ControlProtocolManager::~ControlProtocolManager ( )

Definition at line 49 of file control_protocol_manager.cc.

ControlProtocolManager::ControlProtocolManager ( )
private

Definition at line 45 of file control_protocol_manager.cc.

Member Function Documentation

int ControlProtocolManager::activate ( ControlProtocolInfo cpi)

Definition at line 84 of file control_protocol_manager.cc.

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

Definition at line 289 of file control_protocol_manager.cc.

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

Definition at line 374 of file control_protocol_manager.cc.

int ControlProtocolManager::deactivate ( ControlProtocolInfo cpi)

Definition at line 119 of file control_protocol_manager.cc.

void ControlProtocolManager::discover_control_protocols ( )

Definition at line 244 of file control_protocol_manager.cc.

void ControlProtocolManager::foreach_known_protocol ( boost::function< void(const ControlProtocolInfo *)>  method)

Definition at line 366 of file control_protocol_manager.cc.

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

Definition at line 333 of file control_protocol_manager.cc.

XMLNode & ControlProtocolManager::get_state ( void  )
virtual

Implements PBD::Stateful.

Definition at line 434 of file control_protocol_manager.cc.

ControlProtocolManager & ControlProtocolManager::instance ( )
static

Definition at line 463 of file control_protocol_manager.cc.

ControlProtocol * ControlProtocolManager::instantiate ( ControlProtocolInfo cpi)
private

Definition at line 151 of file control_protocol_manager.cc.

void ControlProtocolManager::load_mandatory_protocols ( )

Definition at line 226 of file control_protocol_manager.cc.

void ControlProtocolManager::midi_connectivity_established ( )

Definition at line 473 of file control_protocol_manager.cc.

void ControlProtocolManager::session_going_away ( )
privatevirtual

Reimplemented from ARDOUR::SessionHandlePtr.

Definition at line 126 of file control_protocol_manager.cc.

void ControlProtocolManager::set_session ( Session s)
virtual

Reimplemented from ARDOUR::SessionHandlePtr.

Definition at line 68 of file control_protocol_manager.cc.

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

Implements PBD::Stateful.

Definition at line 385 of file control_protocol_manager.cc.

int ControlProtocolManager::teardown ( ControlProtocolInfo cpi)
private

Definition at line 183 of file control_protocol_manager.cc.

Member Data Documentation

ControlProtocolManager * ControlProtocolManager::_instance = 0
staticprivate

Definition at line 82 of file control_protocol_manager.h.

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

Definition at line 71 of file control_protocol_manager.h.

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

Definition at line 85 of file control_protocol_manager.h.

Glib::Threads::Mutex ARDOUR::ControlProtocolManager::protocols_lock
private

Definition at line 84 of file control_protocol_manager.h.

PBD::Signal1<void,ControlProtocolInfo*> ARDOUR::ControlProtocolManager::ProtocolStatusChange

Definition at line 78 of file control_protocol_manager.h.

const string ControlProtocolManager::state_node_name = X_("ControlProtocols")
static

Definition at line 73 of file control_protocol_manager.h.


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