source: src/Actions/AnalysisAction/PairCorrelationAction.def

Candidate_v1.6.1
Last change on this file 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: 2.2 KB
Line 
1/*
2 * PairCorrelationAction.def
3 *
4 * Created on: Aug 25, 2010
5 * Author: heber
6 */
7
8// all includes and forward declarations necessary for non-integral types below
9#include <string>
10#include <vector>
11class element;
12
13#include "Parameters/Validators/DummyValidator.hpp"
14#include "Parameters/Validators/Ops_Validator.hpp"
15#include "Parameters/Validators/STLVectorValidator.hpp"
16#include "Parameters/Validators/Specific/BoxLengthValidator.hpp"
17#include "Parameters/Validators/Specific/ElementValidator.hpp"
18#include "Parameters/Validators/Specific/FilePresentValidator.hpp"
19
20#include "Parameters/Validators/DummyValidator.hpp"
21
22// i.e. there is an integer with variable name Z that can be found in
23// ValueStorage by the token "Z" -> first column: int, Z, "Z"
24// "undefine" if no parameters are required, use (NOPARAM_DEFAULT) for each (undefined) default value
25#define paramtypes (std::vector<const element *>)(double)(double)(double)(boost::filesystem::path)(boost::filesystem::path)(bool)
26#define paramreferences (elements)(BinStart)(BinWidth)(BinEnd)(outputname)(binoutputname)(periodic)
27#define paramtokens ("elements")("bin-start")("bin-width")("bin-end")("output-file")("bin-output-file")("periodic")
28#define paramdescriptions ("set of elements")("start of the first bin")("width of the bins")("start of the last bin")("name of the output file")("name of the bin output file")("system is constraint to periodic boundary conditions")
29#define paramdefaults (NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(PARAM_DEFAULT(0.5))(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(PARAM_DEFAULT(false))
30#define paramvalids \
31(STLVectorValidator< std::vector<const element *> >(2,2, ElementValidator())) \
32(BoxLengthValidator()) \
33(BoxLengthValidator()) \
34(BoxLengthValidator()) \
35(!FilePresentValidator()) \
36(!FilePresentValidator()) \
37(DummyValidator<bool>())
38
39// some defines for all the names, you may use ACTION, STATE and PARAMS
40#define CATEGORY Analysis
41#define MENUNAME "analysis"
42#define MENUPOSITION 2
43#define ACTIONNAME PairCorrelation
44#define TOKEN "pair-correlation"
45
46// finally the information stored in the ActionTrait specialization
47#define DESCRIPTION "pair correlation analysis between two elements"
48#define SHORTFORM "C"
Note: See TracBrowser for help on using the repository browser.