/* * FitPotentialAction.def * * Created on: Apr 08, 2013 * Author: heber */ // all includes and forward declarations necessary for non-integral types below #include #include #include #include "Parameters/Validators/RangeValidator.hpp" #include "Parameters/Validators/STLVectorValidator.hpp" #include "Parameters/Validators/Specific/ElementValidator.hpp" #include "Parameters/Validators/Specific/FilePresentValidator.hpp" #include "Parameters/Validators/Specific/PotentialTypeValidator.hpp" // i.e. there is an integer with variable name Z that can be found in // ValueStorage by the token "Z" -> first column: int, Z, "Z" // "undefine" if no parameters are required, use (NOPARAM_DEFAULT) for each (undefined) default value #define paramtypes (boost::filesystem::path)(std::string)(std::vector)(std::vector)(unsigned int) #define paramtokens ("homology-file")("fit-potential")("potential-charges")("fragment-charges")("take-best-of") #define paramdescriptions ("homology file to parse")("potential type to fit")("charges specifying the potential")("charges specifying the fragment")("take the best among this many approximations") #define paramdefaults (NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(PARAM_DEFAULT(3)) #define paramreferences (homology_file)(potentialtype)(charges)(fragment)(best_of_howmany) #define paramvalids \ (FilePresentValidator()) \ (PotentialTypeValidator()) \ (STLVectorValidator< std::vector >(1,99, ElementValidator())) \ (STLVectorValidator< std::vector >(1,99, ElementValidator())) \ (RangeValidator< unsigned int>(1,99)) #undef statetypes #undef statereferences // some defines for all the names, you may use ACTION, STATE and PARAMS #define CATEGORY Fragmentation #define MENUNAME "fragmentation" #define MENUPOSITION 6 #define ACTIONNAME FitPotential #define TOKEN "fit-potential" // finally the information stored in the ActionTrait specialization #define DESCRIPTION "fit an empirical potential to the given part of a specified fragment" #undef SHORTFORM