X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fsession_configuration.h;h=62c12e56ef304baf9d47a2b933a0dff1103b5a03;hb=fbea6c254268e9780afd22fbb191569df4120463;hp=57e78d2af0e382e4accdca137bd655a0be7819d9;hpb=29e8fe16987548d44b6376a38c81da7737efde28;p=ardour.git diff --git a/libs/ardour/ardour/session_configuration.h b/libs/ardour/ardour/session_configuration.h index 57e78d2af0..62c12e56ef 100644 --- a/libs/ardour/ardour/session_configuration.h +++ b/libs/ardour/ardour/session_configuration.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2009 Paul Davis + Copyright (C) 2009 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 @@ -20,31 +20,34 @@ #ifndef __ardour_session_configuration_h__ #define __ardour_session_configuration_h__ -#include "ardour/configuration.h" +#include "pbd/configuration.h" namespace ARDOUR { -class SessionConfiguration : public Configuration +class LIBARDOUR_API SessionConfiguration : public PBD::Configuration { public: SessionConfiguration (); - void map_parameters (sigc::slot); - int set_state (XMLNode const &); + void map_parameters (boost::function&); + int set_state (XMLNode const &, int version); XMLNode& get_state (); XMLNode& get_variables (); void set_variables (XMLNode const &); + bool load_state (); + bool save_state (); + /* define accessor methods */ #undef CONFIG_VARIABLE #undef CONFIG_VARIABLE_SPECIAL #define CONFIG_VARIABLE(Type,var,name,value) \ - Type get_##var () const { return var.get(); } \ - bool set_##var (Type val) { bool ret = var.set (val); if (ret) { ParameterChanged (name); } return ret; } + Type get_##var () const { return var.get(); } \ + bool set_##var (Type val) { bool ret = var.set (val); if (ret) { ParameterChanged (name); } return ret; } #define CONFIG_VARIABLE_SPECIAL(Type,var,name,value,mutator) \ - Type get_##var () const { return var.get(); } \ - bool set_##var (Type val) { bool ret = var.set (val); if (ret) { ParameterChanged (name); } return ret; } + Type get_##var () const { return var.get(); } \ + bool set_##var (Type val) { bool ret = var.set (val); if (ret) { ParameterChanged (name); } return ret; } #include "ardour/session_configuration_vars.h" #undef CONFIG_VARIABLE #undef CONFIG_VARIABLE_SPECIAL @@ -54,16 +57,16 @@ public: /* declare variables */ #undef CONFIG_VARIABLE -#undef CONFIG_VARIABLE_SPECIAL -#define CONFIG_VARIABLE(Type,var,name,value) ConfigVariable var; -#define CONFIG_VARIABLE_SPECIAL(Type,var,name,value,mutator) ConfigVariableWithMutation var; +#undef CONFIG_VARIABLE_SPECIAL +#define CONFIG_VARIABLE(Type,var,name,value) PBD::ConfigVariable var; +#define CONFIG_VARIABLE_SPECIAL(Type,var,name,value,mutator) PBD::ConfigVariableWithMutation var; #include "ardour/session_configuration_vars.h" #undef CONFIG_VARIABLE -#undef CONFIG_VARIABLE_SPECIAL +#undef CONFIG_VARIABLE_SPECIAL int foo; }; } - + #endif