source: src/Actions/AnalysisAction/PointCorrelationAction.def@ 8efcf4

ForceAnnealing_oldresults IndependentFragmentGrids_IntegrationTest
Last change on this file since 8efcf4 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.3 KB
Line 
1/*
2 * PointCorrelationAction.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 "LinearAlgebra/Vector.hpp"
10#include <vector>
11#include <string>
12
13class element;
14
15#include "Parameters/Validators/DummyValidator.hpp"
16#include "Parameters/Validators/Ops_Validator.hpp"
17#include "Parameters/Validators/STLVectorValidator.hpp"
18#include "Parameters/Validators/Specific/BoxVectorValidator.hpp"
19#include "Parameters/Validators/Specific/BoxLengthValidator.hpp"
20#include "Parameters/Validators/Specific/ElementValidator.hpp"
21#include "Parameters/Validators/Specific/FilePresentValidator.hpp"
22
23// i.e. there is an integer with variable name Z that can be found in
24// ValueStorage by the token "Z" -> first column: int, Z, "Z"
25// "undefine" if no parameters are required, use (NOPARAM_DEFAULT) for each (undefined) default value
26#define paramtypes (std::vector<const element *>)(Vector)(double)(double)(double)(boost::filesystem::path)(boost::filesystem::path)(bool)
27#define paramreferences (elements)(Point)(BinStart)(BinWidth)(BinEnd)(outputname)(binoutputname)(periodic)
28#define paramtokens ("elements")("position")("bin-start")("bin-width")("bin-end")("output-file")("bin-output-file")("periodic")
29#define paramdescriptions ("set of elements")("position in R^3 space")("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")
30#define paramdefaults (NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(PARAM_DEFAULT(0.5))(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(PARAM_DEFAULT(false))
31#define paramvalids \
32(STLVectorValidator< std::vector<const element *> >(ElementValidator())) \
33(BoxVectorValidator()) \
34(BoxLengthValidator()) \
35(BoxLengthValidator()) \
36(BoxLengthValidator()) \
37(!FilePresentValidator()) \
38(!FilePresentValidator()) \
39(DummyValidator<bool>())
40
41// some defines for all the names, you may use ACTION, STATE and PARAMS
42#define CATEGORY Analysis
43#define MENUNAME "analysis"
44#define MENUPOSITION 3
45#define ACTIONNAME PointCorrelation
46#define TOKEN "point-correlation"
47
48// finally the information stored in the ActionTrait specialization
49#define DESCRIPTION "pair correlation analysis between element and point"
50#undef SHORTFORM
Note: See TracBrowser for help on using the repository browser.