35 Bundle::Bundle (
bool i)
36 : _ports_are_inputs (i),
37 _signals_suspended (false),
38 _pending_change (
Change (0))
50 _ports_are_inputs (i),
51 _signals_suspended (false),
52 _pending_change (
Change (0))
58 : _channel (other->_channel),
60 _ports_are_inputs (other->_ports_are_inputs),
61 _signals_suspended (other->_signals_suspended),
62 _pending_change (other->_pending_change)
73 for (vector<Channel>::const_iterator i =
_channel.begin(); i !=
_channel.end(); ++i) {
74 c.
set (i->type, c.
get (i->type) + 1);
97 assert (portname.find_first_of (
':') != string::npos);
101 _channel[ch].ports.push_back (portname);
116 bool changed =
false;
121 PortList::iterator i = find (pl.begin(), pl.end(), portname);
142 assert (portname.find_first_of (
':') != string::npos);
147 _channel[ch].ports.push_back (portname);
233 for (std::vector<Channel>::const_iterator i =
_channel.begin(); i !=
_channel.end(); ++i) {
234 for (PortList::const_iterator j = i->ports.begin(); j != i->ports.end(); ++j) {
252 for (std::vector<Channel>::const_iterator i =
_channel.begin(); i !=
_channel.end(); ++i) {
253 if (i->ports.size() == 1 && i->ports[0] == p) {
308 for (uint32_t j = 0; j < pl.size(); ++j) {
325 for (uint32_t i = 0; i <
N; ++i) {
329 for (Bundle::PortList::const_iterator j = our_ports.begin(); j != our_ports.end(); ++j) {
330 for (Bundle::PortList::const_iterator k = other_ports.begin(); k != other_ports.end(); ++k) {
343 for (uint32_t i = 0; i <
N; ++i) {
347 for (Bundle::PortList::const_iterator j = our_ports.begin(); j != our_ports.end(); ++j) {
348 for (Bundle::PortList::const_iterator k = other_ports.begin(); k != other_ports.end(); ++k) {
361 for (uint32_t c = 0; c <
_channel.size(); ++c) {
424 for (uint32_t j = 0; j < A.size(); ++j) {
425 for (uint32_t k = 0; k < B.size(); ++k) {
458 for (uint32_t j = 0; j < ports.size(); ++j) {
511 for (uint32_t i = 0; i <
N; ++i) {
532 os <<
"BUNDLE " << b.
nchannels() <<
" channels: ";
536 for (Bundle::PortList::const_iterator j = pl.begin(); j != pl.end(); ++j) {
574 vector<Channel>::const_iterator i =
_channel.begin ();
610 vector<Channel>::const_iterator i =
_channel.begin ();
611 for (uint32_t j = 0; j < c; ++j) {
bool operator==(Bundle const &other)
bool connected_to(boost::shared_ptr< Bundle >, AudioEngine &)
void set_port(uint32_t, std::string)
the direction (whether ports are inputs or outputs) has changed
std::string channel_name(uint32_t) const
bool connected_to(std::string const &) const
bool offers_port_alone(std::string) const
std::vector< std::string > PortList
void connect(boost::shared_ptr< Bundle >, AudioEngine &)
void set_ports_are_inputs()
PortList const & channel_ports(uint32_t) const
ostream & operator<<(ostream &os, Bundle const &b)
bool connected(const std::string &)
void set_channel_name(uint32_t, std::string const &)
std::vector< Channel > _channel
void remove_ports_from_channel(uint32_t)
the port list associated with one of our channels has changed
int disconnect(const std::string &source, const std::string &destination)
void emit_changed(Change)
void add_channels_from_bundle(boost::shared_ptr< Bundle >)
void disconnect(boost::shared_ptr< Bundle >, AudioEngine &)
the bundle name or a channel name has changed
ChanCount nchannels() const
void remove_ports_from_channels()
void add_channel(std::string const &, DataType)
int connect(const std::string &source, const std::string &destination)
DataType channel_type(uint32_t) const
void remove_port_from_channel(uint32_t, std::string)
bool offers_port(std::string) const
void set_ports_are_outputs()
PBD::Signal1< void, Change > Changed
uint32_t get(DataType t) const
boost::shared_ptr< Port > get_port_by_name(const std::string &)
bool port_attached_to_channel(uint32_t, std::string)
void set(DataType t, uint32_t count)
uint32_t type_channel_to_overall(DataType, uint32_t) const
bool connected_to_anything(AudioEngine &)
the number of channels has changed
void remove_channel(uint32_t)
Glib::Threads::Mutex _channel_mutex
void set_name(std::string const &)
void add_port_to_channel(uint32_t, std::string)
bool has_same_ports(boost::shared_ptr< Bundle >) const
uint32_t overall_channel_to_type(DataType, uint32_t) const