Ardour
9.0-pre0-582-g084a23a80d
|
#include <bundle.h>
Classes | |
struct | Channel |
Public Types | |
enum | Change { NameChanged = 0x1 , ConfigurationChanged = 0x2 , PortsChanged = 0x4 , TypeChanged = 0x8 , DirectionChanged = 0x10 } |
typedef std::vector< std::string > | PortList |
Public Member Functions | |
Bundle (bool i=true) | |
Bundle (std::string const &, bool i=true) | |
Bundle (std::shared_ptr< Bundle >) | |
virtual | ~Bundle () |
ChanCount | nchannels () const |
uint32_t | n_total () const |
PortList const & | channel_ports (uint32_t c) const |
void | add_channel (std::string const &, DataType) |
void | add_channel (std::string const &, DataType, std::string const &) |
void | add_channel (std::string const &, DataType, PortList) |
std::string | channel_name (uint32_t) const |
DataType | channel_type (uint32_t) const |
void | set_channel_name (uint32_t, std::string const &) |
void | add_port_to_channel (uint32_t, std::string) |
void | set_port (uint32_t, std::string) |
void | remove_port_from_channel (uint32_t, std::string) |
void | remove_ports_from_channel (uint32_t) |
void | remove_ports_from_channels () |
bool | port_attached_to_channel (uint32_t, std::string) |
bool | offers_port (std::string) const |
bool | offers_port_alone (std::string) const |
void | remove_channel (uint32_t) |
void | remove_channels () |
void | add_channels_from_bundle (std::shared_ptr< Bundle >) |
void | connect (std::shared_ptr< Bundle >, AudioEngine &, bool allow_partial=false) |
void | disconnect (std::shared_ptr< Bundle >, AudioEngine &) |
bool | connected_to (std::shared_ptr< Bundle >, AudioEngine &, DataType type=DataType::NIL, bool exclusive=false) |
bool | connected_to_anything (AudioEngine &) |
bool | has_same_ports (std::shared_ptr< Bundle >) const |
uint32_t | type_channel_to_overall (DataType, uint32_t) const |
uint32_t | overall_channel_to_type (DataType, uint32_t) const |
void | set_name (std::string const &) |
std::string | name () const |
void | set_ports_are_inputs () |
void | set_ports_are_outputs () |
bool | ports_are_inputs () const |
bool | ports_are_outputs () const |
void | suspend_signals () |
void | resume_signals () |
bool | operator== (Bundle const &other) |
Public Member Functions inherited from PBD::ScopedConnectionList | |
ScopedConnectionList () | |
ScopedConnectionList (const ScopedConnectionList &)=delete | |
ScopedConnectionList & | operator= (const ScopedConnectionList &)=delete |
virtual | ~ScopedConnectionList () |
void | add_connection (const UnscopedConnection &c) |
void | drop_connections () |
Public Attributes | |
PBD::Signal< void(Change)> | Changed |
Protected Attributes | |
Glib::Threads::Mutex | _channel_mutex |
std::vector< Channel > | _channel |
Private Member Functions | |
int | set_channels (std::string const &) |
int | parse_io_string (std::string const &, std::vector< std::string > &) |
void | emit_changed (Change) |
Private Attributes | |
std::string | _name |
bool | _ports_are_inputs |
bool | _signals_suspended |
Change | _pending_change |
A set of ‘channels’, each of which is associated with 0 or more ports. Each channel has a name which can be anything useful, and a data type. Intended for grouping things like, for example, a buss' outputs. ‘Channel’ is a rather overloaded term but I can't think of a better one right now.
typedef std::vector<std::string> ARDOUR::Bundle::PortList |
Things that might change about this bundle
ARDOUR::Bundle::Bundle | ( | bool | i = true | ) |
ARDOUR::Bundle::Bundle | ( | std::string const & | , |
bool | i = true |
||
) |
ARDOUR::Bundle::Bundle | ( | std::shared_ptr< Bundle > | ) |
void ARDOUR::Bundle::add_channel | ( | std::string const & | , |
DataType | |||
) |
void ARDOUR::Bundle::add_channel | ( | std::string const & | , |
DataType | , | ||
std::string const & | |||
) |
void ARDOUR::Bundle::add_channels_from_bundle | ( | std::shared_ptr< Bundle > | ) |
void ARDOUR::Bundle::add_port_to_channel | ( | uint32_t | , |
std::string | |||
) |
std::string ARDOUR::Bundle::channel_name | ( | uint32_t | ) | const |
PortList const& ARDOUR::Bundle::channel_ports | ( | uint32_t | c | ) | const |
c | Channel index. |
DataType ARDOUR::Bundle::channel_type | ( | uint32_t | ) | const |
void ARDOUR::Bundle::connect | ( | std::shared_ptr< Bundle > | , |
AudioEngine & | , | ||
bool | allow_partial = false |
||
) |
bool ARDOUR::Bundle::connected_to | ( | std::shared_ptr< Bundle > | , |
AudioEngine & | , | ||
DataType | type = DataType::NIL , |
||
bool | exclusive = false |
||
) |
bool ARDOUR::Bundle::connected_to_anything | ( | AudioEngine & | ) |
void ARDOUR::Bundle::disconnect | ( | std::shared_ptr< Bundle > | , |
AudioEngine & | |||
) |
|
private |
bool ARDOUR::Bundle::has_same_ports | ( | std::shared_ptr< Bundle > | ) | const |
uint32_t ARDOUR::Bundle::n_total | ( | ) | const |
|
inline |
bool ARDOUR::Bundle::offers_port | ( | std::string | ) | const |
bool ARDOUR::Bundle::offers_port_alone | ( | std::string | ) | const |
bool ARDOUR::Bundle::operator== | ( | Bundle const & | other | ) |
uint32_t ARDOUR::Bundle::overall_channel_to_type | ( | DataType | , |
uint32_t | |||
) | const |
|
private |
bool ARDOUR::Bundle::port_attached_to_channel | ( | uint32_t | , |
std::string | |||
) |
void ARDOUR::Bundle::remove_channel | ( | uint32_t | ) |
void ARDOUR::Bundle::remove_channels | ( | ) |
void ARDOUR::Bundle::remove_port_from_channel | ( | uint32_t | , |
std::string | |||
) |
void ARDOUR::Bundle::remove_ports_from_channel | ( | uint32_t | ) |
void ARDOUR::Bundle::remove_ports_from_channels | ( | ) |
void ARDOUR::Bundle::resume_signals | ( | ) |
void ARDOUR::Bundle::set_channel_name | ( | uint32_t | , |
std::string const & | |||
) |
|
private |
void ARDOUR::Bundle::set_name | ( | std::string const & | ) |
void ARDOUR::Bundle::set_port | ( | uint32_t | , |
std::string | |||
) |
void ARDOUR::Bundle::set_ports_are_inputs | ( | ) |
void ARDOUR::Bundle::set_ports_are_outputs | ( | ) |
void ARDOUR::Bundle::suspend_signals | ( | ) |
uint32_t ARDOUR::Bundle::type_channel_to_overall | ( | DataType | , |
uint32_t | |||
) | const |
|
mutableprotected |
PBD::Signal<void(Change)> ARDOUR::Bundle::Changed |