Fixes to bundle manager to make it vaguely usable.
[ardour.git] / libs / ardour / ardour / configuration.h
index 07d4bb8db39fbfa2fe8d2abb62298f35c0902afb..7b890500d8fc375f84db7fd9f5bb90f5a089c995 100644 (file)
@@ -36,36 +36,28 @@ class XMLNode;
 
 namespace ARDOUR {
 
-class Configuration : public Stateful
+class Configuration : public PBD::Stateful
 {
   public:
        Configuration();
        virtual ~Configuration();
 
-       struct MidiPortDescriptor {
-               std::string tag;
-               std::string device;
-               std::string type;
-               std::string mode;
-
-               MidiPortDescriptor (const XMLNode&);
-               XMLNode& get_state();
-       };
-
-       std::map<std::string,MidiPortDescriptor *> midi_ports;
-
-       std::vector<ConfigVariable<uint32_t> *> canvas_colors;
+       std::map<std::string,XMLNode> midi_ports;
 
        void map_parameters (sigc::slot<void,const char*> theSlot);
 
        int load_state ();
        int save_state ();
 
+       /// calls Stateful::*instant_xml methods using 
+       /// ARDOUR::user_config_directory for the directory argument
+       void add_instant_xml (XMLNode&);
+       XMLNode * instant_xml (const std::string& str);
+
        int set_state (const XMLNode&);
        XMLNode& get_state (void);
        XMLNode& get_variables (sigc::slot<bool,ConfigVariableBase::Owner>, std::string which_node = "Config");
        void set_variables (const XMLNode&, ConfigVariableBase::Owner owner);
-       void pack_canvasvars ();
 
        void set_current_owner (ConfigVariableBase::Owner);
 
@@ -87,11 +79,6 @@ class Configuration : public Stateful
 #undef  CONFIG_VARIABLE
 #undef  CONFIG_VARIABLE_SPECIAL
 
-#undef  CANVAS_VARIABLE
-#define CANVAS_VARIABLE(var,name) ConfigVariable<uint32_t> var;  // <-- is this really so bad?
-#include "ardour/canvas_vars.h"
-#undef  CANVAS_VARIABLE
-
   private:
 
        /* declare variables */