- class Preset {
- public:
- Preset (string filename, Session & s);
- ~Preset ();
-
- uint32_t id () const { return _id; }
- string name () const { return _name; }
-
- void set_name (string name);
- void set_id (uint32_t id);
-
- // Note: The set_..._state functions take ownership of the XMLNode
- void set_global_state (XMLNode & state);
- void set_local_state (XMLNode & state);
-
- XMLNode const * get_global_state () const { return global.root(); }
- XMLNode const * get_local_state () const { return local; }
-
- void save () const;
- void remove_local () const;
-
- private:
-
- XMLNode * get_instant_xml () const;
- void save_instant_xml () const;
- void remove_instant_xml () const;
-
- uint32_t _id;
- string _name;
-
- Session & session;
- XMLTree global;
- XMLNode * local;
-
- };
-
- typedef boost::shared_ptr<Preset> PresetPtr;
- typedef std::list<PresetPtr> PresetList;