Experimental patch to ensure playback buffer bounds use minimal beat->frame rounding.
[ardour.git] / libs / ardour / ardour / user_bundle.h
index c33ddeaed9ba5e1cf1bc836f24003dea17e1f73a..4ff435ef35922ac1304b952f390d959105c07c46 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2007 Paul Davis 
+    Copyright (C) 2007 Paul Davis
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -21,7 +21,7 @@
 #define __ardour_user_bundle_h__
 
 #include <vector>
-#include <glibmm/thread.h>
+#include <glibmm/threads.h>
 #include "pbd/stateful.h"
 #include "ardour/bundle.h"
 
@@ -29,44 +29,18 @@ namespace ARDOUR {
 
 class Session;
 
-class UserBundle : public Bundle, public PBD::Stateful {
+class LIBARDOUR_API UserBundle : public Bundle, public PBD::Stateful {
 
   public:
        UserBundle (std::string const &);
        UserBundle (XMLNode const &, bool);
 
-       ChanCount nchannels () const;
-       const ARDOUR::PortList& channel_ports (uint32_t) const;
-
-       void add_channel ();
-       void set_channels (uint32_t);
-       void remove_channel (uint32_t);
-       void add_port_to_channel (uint32_t, std::string const &);
-       void remove_port_from_channel (uint32_t, std::string const &);
-       bool port_attached_to_channel (uint32_t, std::string const &) const;
        XMLNode& get_state ();
 
-       /// The number of channels is about to change
-       sigc::signal<void> ConfigurationWillChange;
-       /// The number of channels has changed
-       sigc::signal<void> ConfigurationHasChanged;
-       /// The port set associated with one of our channels is about to change
-       /// Parameter is the channel number
-       sigc::signal<void, int> PortsWillChange;
-       /// The port set associated with one of our channels has changed
-       /// Parameter is the channel number
-       sigc::signal<void, int> PortsHaveChanged;
-       
   private:
-
-       int set_state (const XMLNode &);
-
-       /// mutex for _ports;
-       /// XXX: is this necessary?
-       mutable Glib::Mutex _ports_mutex; 
-       std::vector<PortList> _ports;
+       int set_state (XMLNode const &, int version);
 };
 
 }
-       
+
 #endif