diff options
Diffstat (limited to 'libs/ardour/auto_bundle.cc')
-rw-r--r-- | libs/ardour/auto_bundle.cc | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/libs/ardour/auto_bundle.cc b/libs/ardour/auto_bundle.cc new file mode 100644 index 0000000000..9da32bbb7a --- /dev/null +++ b/libs/ardour/auto_bundle.cc @@ -0,0 +1,47 @@ +#include <cassert> +#include "ardour/auto_bundle.h" + +ARDOUR::AutoBundle::AutoBundle (bool i) + : Bundle (i) +{ + +} + +ARDOUR::AutoBundle::AutoBundle (std::string const & n, bool i) + : Bundle (n, i) +{ + +} + +uint32_t +ARDOUR::AutoBundle::nchannels () const +{ + Glib::Mutex::Lock lm (_ports_mutex); + return _ports.size (); +} + +const ARDOUR::PortList& +ARDOUR::AutoBundle::channel_ports (uint32_t c) const +{ + assert (c < nchannels()); + + Glib::Mutex::Lock lm (_ports_mutex); + return _ports[c]; +} + +void +ARDOUR::AutoBundle::set_channels (uint32_t n) +{ + Glib::Mutex::Lock lm (_ports_mutex); + _ports.resize (n); +} + +void +ARDOUR::AutoBundle::set_port (uint32_t c, std::string const & p) +{ + assert (c < nchannels ()); + + Glib::Mutex::Lock lm (_ports_mutex); + _ports[c].resize (1); + _ports[c][0] = p; +} |