STORMM Source Documentation
Loading...
Searching...
No Matches
reporting_enumerators.h
1// -*-c++-*-
2#ifndef STORMM_REPORTING_ENUMERATORS_H
3#define STORMM_REPORTING_ENUMERATORS_H
4
5#include <string>
6#include <vector>
7#include "copyright.h"
8#include "Constants/behavior.h"
9
10namespace stormm {
11namespace display {
12
14enum class HelpSignalKind {
15 NO_ARGS,
16 NO_ARGS_ONLY,
17 KEYWORD,
19 KEYWORD_ONLY
20};
21
25std::string getEnumerationName(HelpSignalKind input);
26
27} // namespace display
28
29namespace review {
30
31using constants::ExceptionResponse;
32
34enum class OutputScope {
35 AVERAGES,
37 OUTLIERS,
39 CLUSTER_AVERAGES,
41 CLUSTER_OUTLIERS,
44 FULL
45};
46
48enum class OutputSyntax {
49 JSON,
53 MATPLOTLIB,
56 MATRIX_PKG,
59 STANDALONE
61};
62
64enum class DynamicsStepStage {
65 BEGIN,
69 NONBONDED_FORCE,
70 ADDED_FORCE,
73 BONDED_FORCE,
74 VELOCITY_UPDATE,
76 RATTLE,
77 COORDINATE_UPDATE,
78 SHAKE
80};
81
84enum class GridFileSyntax {
85 MATPLOTLIB,
86 MATRIX_PKG,
87 OPEN_DX,
88 CUBEGEN
89};
90
92enum class SectionComponent {
93 NARRATIVE,
94 LIST,
95 TABLE,
96 SCRIPT
97};
98
100enum class ListEnumeration {
101 BULLET,
102 NUMBERED,
103 ALPHABETIC,
108 ROMAN,
109 NONE
110};
111
115enum class TextEnds {
116 AS_IS,
117 NEWLINE
119};
120
122enum class TableContentKind {
123 INTEGER,
125 REAL,
126 STRING,
129 OPEN_STRING
134};
135
137enum class SurfaceRender {
138 WIRE,
139 SOLID,
140 SCAFFOLD
141};
142
144enum class PsivantColor {
145 BLACK,
146 RED,
147 YELLOW,
148 BLUE,
149 PURPLE,
150 GREY,
151 LIGHT_RED,
152 LIGHT_YELLOW,
153 LIGHT_BLUE,
154 LIGHT_PURPLE,
155 WHITE
156};
157
159enum class LinePlotStyle {
160 SOLID,
161 DASHED
162};
163
165const std::vector<std::string> roman_numerals = { "i", "ii", "iii", "iv", "v", "vi", "vii", "viii",
166 "ix", "x", "xi", "xii", "xiii", "xiv", "xv",
167 "xvi", "xvii", "xviii", "xix", "xx", "xxi",
168 "xxii", "xxiii", "xxiv", "xv", " " };
169
172constexpr int maximum_roman_numeral = 25;
173
178std::string getEnumerationName(OutputScope input);
179std::string getEnumerationName(OutputSyntax input);
180std::string getEnumerationName(DynamicsStepStage input);
181std::string getEnumerationName(GridFileSyntax input);
182std::string getEnumerationName(SectionComponent input);
183std::string getEnumerationName(ListEnumeration input);
184std::string getEnumerationName(TextEnds input);
185std::string getEnumerationName(TableContentKind input);
186std::string getEnumerationName(SurfaceRender input);
187std::string getEnumerationName(LinePlotStyle input);
188std::string getEnumerationName(PsivantColor input);
190
195OutputScope translateOutputScope(const std::string &input);
196
201SurfaceRender translateSurfaceRender(const std::string &input);
202
207LinePlotStyle translateLinePlotStyle(const std::string &input);
208
217const std::string& toRoman(int x, ExceptionResponse policy = ExceptionResponse::DIE);
218
223std::string encodePsivantColor(PsivantColor color, OutputSyntax syntax);
224
225} // namespace review
226} // namespace stormm
227
228#endif