source: src/UIElements/CommandLineUI/TypeEnumContainer.hpp@ 8c5e2a

Candidate_v1.6.1 ChemicalSpaceEvaluator Gui_displays_atomic_force_velocity PythonUI_with_named_parameters TremoloParser_IncreasedPrecision
Last change on this file since 8c5e2a was 33e801, checked in by Frederik Heber <heber@…>, 10 years ago

Added ParameterPair (i.e. "key = value;") to allow other string output.

  • this will solve the problem of vectors of key-value-pairs not properly converted into a single string because of missing semicolon.
  • FIX: toCLIString used functions toPythonString if possible.
  • Property mode set to 100644
File size: 1.4 KB
Line 
1/*
2 * TypeEnumContainer.hpp
3 *
4 * Created on: Oct 27, 2010
5 * Author: heber
6 */
7
8#ifndef TYPEENUMCONTAINER_HPP_
9#define TYPEENUMCONTAINER_HPP_
10
11// include config.h
12#ifdef HAVE_CONFIG_H
13#include <config.h>
14#endif
15
16
17#include <map>
18#include <typeinfo>
19
20class TypeEnumContainer {
21public:
22 TypeEnumContainer();
23 ~TypeEnumContainer();
24
25 /** Enumeration of all possible input types.
26 *
27 */
28 enum EnumOfTypes { NoneType,
29 BooleanType,
30 FileType,
31 ListOfFilesType,
32 IntegerType,
33 ListOfIntegersType,
34 UnsignedIntegerType,
35 ListOfUnsignedIntegersType,
36 DoubleType,
37 ListOfDoublesType,
38 StringType,
39 ListOfStringsType,
40 VectorType,
41 ListOfVectorsType,
42 AtomType,
43 ListOfAtomsType,
44 MoleculeType,
45 ListOfMoleculesType,
46 ElementType,
47 ListOfElementsType,
48 RealSpaceMatrixType,
49 KeyValueType,
50 ListOfKeyValuesType
51 };
52
53 /** Typedef for map of type_info.
54 *
55 * Note that typeid always returns lvalue of a static const object, hence we
56 * may store its address, see C++ standard 5.2.8.
57 *
58 */
59 typedef std::map< const std::type_info *, enum EnumOfTypes > type_map;
60
61 enum EnumOfTypes getEnumforType(const std::type_info *_type);
62
63 void ListAllKnownTypes() const;
64
65private:
66 // type to enum map for AddOptionToParser()
67 type_map TypeEnumMap;
68};
69
70
71#endif /* TYPEENUMCONTAINER_HPP_ */
Note: See TracBrowser for help on using the repository browser.