refine self-automating plugin interface
[ardour.git] / libs / ardour / ardour / chan_mapping.h
index 88cdf44408aac0084fbd46c69722492164681bc0..ac546e3bbd6000b180ec22db4a20b1c600d307bb 100644 (file)
@@ -25,6 +25,7 @@
 #include <ostream>
 #include <utility>
 
+#include "pbd/xml++.h"
 #include "ardour/data_type.h"
 #include "ardour/chan_count.h"
 
@@ -42,6 +43,7 @@ public:
        ChanMapping() {}
        ChanMapping(ARDOUR::ChanCount identity);
        ChanMapping(const ChanMapping&);
+       ChanMapping(const XMLNode& node);
 
        uint32_t get(DataType t, uint32_t from, bool* valid) const;
 
@@ -86,7 +88,11 @@ public:
         */
        bool     is_monotonic () const;
 
-       uint32_t count () const;
+       uint32_t n_total () const;
+
+       ChanCount count () const;
+
+       XMLNode* state(const std::string& name) const;
 
        /** Test if this mapping is a subset
         * @param superset to test against