--- trunk/src/utils/ParameterManager.hpp 2009/11/25 20:02:06 1390 +++ branches/development/src/utils/ParameterManager.hpp 2011/11/22 20:38:56 1665 @@ -36,13 +36,13 @@ * [1] Meineke, et al., J. Comp. Chem. 26, 252-271 (2005). * [2] Fennell & Gezelter, J. Chem. Phys. 124, 234104 (2006). * [3] Sun, Lin & Gezelter, J. Chem. Phys. 128, 24107 (2008). - * [4] Vardeman & Gezelter, in progress (2009). - * + * [4] Kuang & Gezelter, J. Chem. Phys. 133, 164101 (2010). + * [4] , Stocker & Gezelter, J. Chem. Theory Comput. 7, 834 (2011). * * ParameterManager.hpp * * Created by Charles F. Vardeman II on 11/16/05. * @author Charles F. Vardeman II - * @version $Id: ParameterManager.hpp,v 1.6 2009-11-25 20:02:04 gezelter Exp $ + * @version $Id$ * */ @@ -50,6 +50,7 @@ #define UTILS_PARAMETERMANAGER_HPP #include +#include #include #include @@ -234,8 +235,16 @@ TYPE get##NAME() { return NAME.getData();} bool have##NAME() { return !NAME.empty();} \ TYPE get##NAME() { return NAME.getData();} +#define DeclareAlterableParameter(NAME, TYPE) \ +private: \ +Parameter NAME; \ +public: \ +bool have##NAME() { return !NAME.empty();} \ +TYPE get##NAME() { return NAME.getData();} \ +bool set##NAME(TYPE s) { return NAME.setData(s);} \ + #define DefineParameter(NAME,KEYWORD) \ NAME.setKeyword(KEYWORD); \ parameters_.insert(std::map::value_type(std::string(KEYWORD), static_cast(&NAME)));