gambit is hosted by Hepforge, IPPP Durham
GAMBIT  v1.5.0-2191-ga4742ac
a Global And Modular Bsm Inference Tool
printable_types.hpp
Go to the documentation of this file.
1 // GAMBIT: Global and Modular BSM Inference Tool
2 // *********************************************
23 
24 #pragma once
25 
26 #include <string>
27 #include <map>
28 
31 
32 
33 namespace Gambit
34 {
35  // Types that scanner plugins are allowed to print.
36  // Covers just basic types, vectors of those types, and
37  // a couple of extras needed by scanners.
38 
39  // Bool has weird behaviour in vectors, so need a version without bool.
40  #define SCANNER_SIMPLE_TYPES_NOBOOL \
41  (int) \
42  (unsigned int) \
43  (short int) \
44  (unsigned short int) \
45  (long) \
46  (unsigned long) \
47  (long long) \
48  (unsigned long long) \
49  (float) \
50  (double) \
51 
52  #define SCANNER_SIMPLE_TYPES \
53  SCANNER_SIMPLE_TYPES_NOBOOL \
54  (bool) \
55 
56  #define SCANNER_VECTOR_TYPES \
57  (std::vector<bool>) \
58  (std::vector<int>) \
59  (std::vector<unsigned int>) \
60  (std::vector<short int>) \
61  (std::vector<unsigned short int>) \
62  (std::vector<long>) \
63  (std::vector<unsigned long>) \
64  (std::vector<long long>) \
65  (std::vector<unsigned long long>) \
66  (std::vector<float>) \
67  (std::vector<double>)
68 
69  #define SCANNER_PRINTABLE_TYPES \
70  SCANNER_SIMPLE_TYPES \
71  SCANNER_VECTOR_TYPES \
72  (map_str_dbl) \
73  (Gambit::ModelParameters)
74 
75  #define SCANNER_RETRIEVABLE_TYPES \
76  SCANNER_SIMPLE_TYPES \
77  (std::string) \
78  (std::vector<double>) \
79  (map_str_dbl) \
80  (Gambit::ModelParameters)
81 
82 }
General small utility classes, typedefs, etc.
Class for holding model parameters.
TODO: see if we can use this one:
Definition: Analysis.hpp:33