ardour
|
#include <port_manager.h>
Classes | |
class | PortRegistrationFailure |
Public Types | |
typedef std::map< std::string, boost::shared_ptr< Port > > | Ports |
typedef std::list < boost::shared_ptr< Port > > | PortList |
Public Member Functions | |
PortManager () | |
virtual | ~PortManager () |
PortEngine & | port_engine () |
uint32_t | port_name_size () const |
std::string | my_name () const |
boost::shared_ptr< Port > | register_input_port (DataType, const std::string &portname, bool async=false) |
boost::shared_ptr< Port > | register_output_port (DataType, const std::string &portname, bool async=false) |
int | unregister_port (boost::shared_ptr< Port >) |
int | connect (const std::string &source, const std::string &destination) |
int | disconnect (const std::string &source, const std::string &destination) |
int | disconnect (boost::shared_ptr< Port >) |
int | reestablish_ports () |
int | reconnect_ports () |
bool | connected (const std::string &) |
bool | connected_to (const std::string &, const std::string &) |
bool | physically_connected (const std::string &) |
int | get_connections (const std::string &, std::vector< std::string > &) |
boost::shared_ptr< Port > | get_port_by_name (const std::string &) |
void | port_renamed (const std::string &, const std::string &) |
std::string | make_port_name_relative (const std::string &name) const |
std::string | make_port_name_non_relative (const std::string &name) const |
std::string | get_pretty_name_by_name (const std::string &portname) const |
bool | port_is_mine (const std::string &fullname) const |
bool | port_is_physical (const std::string &) const |
void | get_physical_outputs (DataType type, std::vector< std::string > &) |
void | get_physical_inputs (DataType type, std::vector< std::string > &) |
ChanCount | n_physical_outputs () const |
ChanCount | n_physical_inputs () const |
int | get_ports (const std::string &port_name_pattern, DataType type, PortFlags flags, std::vector< std::string > &) |
int | get_ports (DataType, PortList &) |
void | remove_all_ports () |
bool | can_request_input_monitoring () const |
void | request_input_monitoring (const std::string &, bool) const |
void | ensure_input_monitoring (const std::string &, bool) const |
void | registration_callback () |
int | graph_order_callback () |
void | connect_callback (const std::string &, const std::string &, bool connection) |
bool | port_remove_in_progress () const |
Public Attributes | |
PBD::Signal0< void > | GraphReordered |
PBD::Signal0< void > | PortRegisteredOrUnregistered |
PBD::Signal5< void, boost::weak_ptr< Port > , std::string, boost::weak_ptr < Port >, std::string, bool > | PortConnectedOrDisconnected |
Protected Member Functions | |
boost::shared_ptr< Port > | register_port (DataType type, const std::string &portname, bool input, bool async=false) |
void | port_registration_failure (const std::string &portname) |
void | fade_out (gain_t, gain_t, pframes_t) |
void | silence (pframes_t nframes) |
void | silence_outputs (pframes_t nframes) |
void | check_monitoring () |
void | cycle_start (pframes_t nframes) |
void | cycle_end (pframes_t nframes) |
Protected Attributes | |
boost::shared_ptr< AudioBackend > | _backend |
SerializedRCUManager< Ports > | ports |
bool | _port_remove_in_progress |
boost::shared_ptr< Ports > | _cycle_ports |
Definition at line 43 of file port_manager.h.
typedef std::list<boost::shared_ptr<Port> > ARDOUR::PortManager::PortList |
Definition at line 47 of file port_manager.h.
typedef std::map<std::string,boost::shared_ptr<Port> > ARDOUR::PortManager::Ports |
Definition at line 46 of file port_manager.h.
PortManager::PortManager | ( | ) |
Definition at line 37 of file port_manager.cc.
|
inlinevirtual |
Definition at line 50 of file port_manager.h.
bool PortManager::can_request_input_monitoring | ( | ) | const |
Definition at line 537 of file port_manager.cc.
|
protected |
Definition at line 683 of file port_manager.cc.
int PortManager::connect | ( | const std::string & | source, |
const std::string & | destination | ||
) |
Definition at line 393 of file port_manager.cc.
void PortManager::connect_callback | ( | const std::string & | , |
const std::string & | , | ||
bool | connection | ||
) |
Definition at line 504 of file port_manager.cc.
bool PortManager::connected | ( | const std::string & | ) |
Definition at line 377 of file port_manager.cc.
bool ARDOUR::PortManager::connected_to | ( | const std::string & | , |
const std::string & | |||
) |
|
protected |
Signal the end of an audio cycle. This signifies that the cycle began with cycle_start has ended. This MUST be called at the end of each cycle. Realtime safe.
Definition at line 618 of file port_manager.cc.
|
protected |
Signal the start of an audio cycle. This MUST be called before any reading/writing for this cycle. Realtime safe.
Definition at line 605 of file port_manager.cc.
int ARDOUR::PortManager::disconnect | ( | const std::string & | source, |
const std::string & | destination | ||
) |
int PortManager::disconnect | ( | boost::shared_ptr< Port > | port | ) |
Definition at line 456 of file port_manager.cc.
void PortManager::ensure_input_monitoring | ( | const std::string & | , |
bool | |||
) | const |
Definition at line 561 of file port_manager.cc.
Definition at line 700 of file port_manager.cc.
int ARDOUR::PortManager::get_connections | ( | const std::string & | , |
std::vector< std::string > & | |||
) |
void PortManager::get_physical_inputs | ( | DataType | type, |
std::vector< std::string > & | s | ||
) |
Definition at line 171 of file port_manager.cc.
void PortManager::get_physical_outputs | ( | DataType | type, |
std::vector< std::string > & | s | ||
) |
Definition at line 162 of file port_manager.cc.
boost::shared_ptr< Port > PortManager::get_port_by_name | ( | const std::string & | ) |
name | Full or short name of port |
Definition at line 204 of file port_manager.cc.
int ARDOUR::PortManager::get_ports | ( | const std::string & | port_name_pattern, |
DataType | type, | ||
PortFlags | flags, | ||
std::vector< std::string > & | |||
) |
Definition at line 250 of file port_manager.cc.
std::string PortManager::get_pretty_name_by_name | ( | const std::string & | portname | ) | const |
Definition at line 112 of file port_manager.cc.
int PortManager::graph_order_callback | ( | ) |
Definition at line 595 of file port_manager.cc.
string PortManager::make_port_name_non_relative | ( | const std::string & | name | ) | const |
Definition at line 96 of file port_manager.cc.
string PortManager::make_port_name_relative | ( | const std::string & | name | ) | const |
Definition at line 70 of file port_manager.cc.
string PortManager::my_name | ( | ) | const |
Definition at line 585 of file port_manager.cc.
ChanCount PortManager::n_physical_inputs | ( | ) | const |
Definition at line 191 of file port_manager.cc.
ChanCount PortManager::n_physical_outputs | ( | ) | const |
Definition at line 181 of file port_manager.cc.
bool ARDOUR::PortManager::physically_connected | ( | const std::string & | ) |
PortEngine & PortManager::port_engine | ( | ) |
Definition at line 721 of file port_manager.cc.
bool PortManager::port_is_mine | ( | const std::string & | fullname | ) | const |
Definition at line 129 of file port_manager.cc.
bool PortManager::port_is_physical | ( | const std::string & | portname | ) | const |
Definition at line 147 of file port_manager.cc.
uint32_t PortManager::port_name_size | ( | ) | const |
Definition at line 575 of file port_manager.cc.
|
protected |
Definition at line 274 of file port_manager.cc.
|
inline |
Definition at line 123 of file port_manager.h.
void PortManager::port_renamed | ( | const std::string & | old_relative_name, |
const std::string & | new_relative_name | ||
) |
Definition at line 236 of file port_manager.cc.
int PortManager::reconnect_ports | ( | ) |
Definition at line 488 of file port_manager.cc.
int PortManager::reestablish_ports | ( | ) |
Definition at line 462 of file port_manager.cc.
boost::shared_ptr< Port > PortManager::register_input_port | ( | DataType | , |
const std::string & | portname, | ||
bool | async = false |
||
) |
Definition at line 343 of file port_manager.cc.
boost::shared_ptr< Port > PortManager::register_output_port | ( | DataType | , |
const std::string & | portname, | ||
bool | async = false |
||
) |
Definition at line 349 of file port_manager.cc.
|
protected |
Definition at line 298 of file port_manager.cc.
void PortManager::registration_callback | ( | ) |
Definition at line 529 of file port_manager.cc.
void PortManager::remove_all_ports | ( | ) |
Definition at line 44 of file port_manager.cc.
void PortManager::request_input_monitoring | ( | const std::string & | , |
bool | |||
) | const |
Definition at line 547 of file port_manager.cc.
|
protected |
Definition at line 634 of file port_manager.cc.
|
protected |
Definition at line 644 of file port_manager.cc.
int PortManager::unregister_port | ( | boost::shared_ptr< Port > | port | ) |
Definition at line 355 of file port_manager.cc.
|
protected |
Definition at line 139 of file port_manager.h.
|
protected |
List of ports to be used between ::cycle_start() and ::cycle_end()
Definition at line 148 of file port_manager.h.
|
protected |
Definition at line 141 of file port_manager.h.
PBD::Signal0<void> ARDOUR::PortManager::GraphReordered |
Emitted if the backend notifies us of a graph order event
Definition at line 126 of file port_manager.h.
PBD::Signal5<void, boost::weak_ptr<Port>, std::string, boost::weak_ptr<Port>, std::string, bool> ARDOUR::PortManager::PortConnectedOrDisconnected |
Emitted if a Port is connected or disconnected. The Port parameters are the ports being connected / disconnected, or 0 if they are not known to Ardour. The std::string parameters are the (long) port names. The bool parameter is true if ports were connected, or false for disconnected.
Definition at line 136 of file port_manager.h.
PBD::Signal0<void> ARDOUR::PortManager::PortRegisteredOrUnregistered |
Emitted if a Port is registered or unregistered
Definition at line 129 of file port_manager.h.
|
protected |
Definition at line 140 of file port_manager.h.