source: src/Actions/MoleculeAction/LinearInterpolationofTrajectoriesAction.def@ 23b6cf

Last change on this file since 23b6cf was 6ba9ba, checked in by Frederik Heber <heber@…>, 13 years ago

Default values are properly set by the Action into their (Action)Parameters.

  • we changed the boost::preprocessor magic to accomplish this.
  • NODEFAULT -> NOPARAM_DEFAULT to be safe.
  • it has been a hell of a lot of work to make it possible to add a construct such as ", default" to the call of a function, either the comma or the default is easy but both could only be accomplished via a list contained in the sequence of default values. Because the list has an explicit NIL element which is taken as NOPARAM_DEFAULT.
  • PARAM_DEFAULT is a macro to wrap the default value into a list.
  • Property mode set to 100644
File size: 1.6 KB
Line 
1/*
2 * LinearInterpolationofTrajectoriesAction.def
3 *
4 * Created on: Aug 26, 2010
5 * Author: heber
6 */
7
8// all includes and forward declarations necessary for non-integral types below
9class MoleculeListClass;
10
11#include "Parameters/Validators/DummyValidator.hpp"
12#include "Parameters/Validators/GenericValidators.hpp"
13
14// i.e. there is an integer with variable name Z that can be found in
15// ValueStorage by the token "Z" -> first column: int, Z, "Z"
16// "undefine" if no parameters are required, use (NOPARAM_DEFAULT) for each (undefined) default value
17#define paramtypes (unsigned int)(unsigned int)(unsigned int)(bool)
18#define paramtokens ("start-step")("interpolation-steps")("end-step")("id-mapping")
19#define paramdescriptions ("first or start step")("number of steps to interpolate in between start and end step")("last or end step")("whether the identity shall be used in mapping atoms onto atoms or not")
20#undef paramdefaults
21#define paramreferences (start)(interpolation_steps)(end)(IdMapping)
22#define paramvalids \
23(DummyValidator< unsigned int >()) \
24(NotZeroValidator< unsigned int >()) \
25(DummyValidator< unsigned int >()) \
26(DummyValidator< bool >())
27
28#undef statetypes
29#undef statereferences
30
31// some defines for all the names, you may use ACTION, STATE and PARAMS
32#define CATEGORY Molecule
33#define MENUNAME "molecule"
34#define MENUPOSITION 6
35#define ACTIONNAME LinearInterpolationofTrajectories
36#define TOKEN "linear-interpolation-of-trajectories"
37
38
39// finally the information stored in the ActionTrait specialization
40#define DESCRIPTION "linear interpolation in discrete steps between start and end position of a molecule"
41#undef SHORTFORM
Note: See TracBrowser for help on using the repository browser.