source: src/Actions/AtomAction/MirrorAction.def@ 23b6cf

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

Added AtomMirrorAction.

  • also added regression tests.
  • Property mode set to 100644
File size: 1.5 KB
Line 
1/*
2 * MirrorAction.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
9#include "Actions/Values.hpp"
10#include "LinearAlgebra/Vector.hpp"
11
12#include "Parameters/Validators/DummyValidator.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 (Vector)(double)(bool)
18#define paramtokens ("mirror-atoms")("plane-offset")("periodic")
19#define paramdescriptions ("normal vector of mirror plane")("offset of plane with respect to origin")("system is constraint to periodic boundary conditions")
20#define paramreferences (normal)(offset)(periodic)
21#define paramdefaults (NOPARAM_DEFAULT)(NOPARAM_DEFAULT)(PARAM_DEFAULT(false))
22#define paramvalids \
23(DummyValidator< Vector >()) \
24(DummyValidator< double >()) \
25(DummyValidator< bool >())
26
27#define statetypes (std::vector<atom*>)
28#define statereferences (selectedAtoms)
29
30// some defines for all the names, you may use ACTION, STATE and PARAMS
31#define CATEGORY Atom
32#define MENUNAME "atom"
33#define MENUPOSITION 4
34#define ACTIONNAME Mirror
35#define TOKEN "mirror-atoms"
36
37
38// finally the information stored in the ActionTrait specialization
39#define DESCRIPTION "mirror all selected atoms by a plane determined by a given normal and an offset"
40#undef SHORTFORM
Note: See TracBrowser for help on using the repository browser.