ARTS 2.5.11 (git: 725533f0)
m_general.h
Go to the documentation of this file.
1
10#ifndef m_general_h
11#define m_general_h
12
13#include <iostream>
14#include <stdexcept>
15
16#include "agenda_class.h"
17#include "arts.h"
18#include "cia.h"
19#include "messages.h"
20#include "mystring.h"
21#include "ppath.h"
22#include "special_interp.h"
23#include "tessem.h"
24#include "timer_struct.h"
25
26class Workspace;
27
28#define SWITCH_OUTPUT(x, y) \
29 { \
30 ostringstream so_os; \
31 so_os << y << '\n'; \
32 switch (x) { \
33 case 0: \
34 out0 << so_os.str(); \
35 break; \
36 case 1: \
37 out1 << so_os.str(); \
38 break; \
39 case 2: \
40 out2 << so_os.str(); \
41 break; \
42 case 3: \
43 out3 << so_os.str(); \
44 break; \
45 default: \
46 throw runtime_error("Output level must have value from 0-3"); \
47 } \
48 }
49
50/* Workspace method: Doxygen documentation will be auto-generated */
51template <typename T>
52void Print(
53 // WS Generic Input:
54 const T& x,
55 // Keywords:
56 const Index& level,
57 const Verbosity& verbosity) {
59 SWITCH_OUTPUT(level, x)
60}
61
62/* Workspace method: Doxygen documentation will be auto-generated */
63void Print(Workspace& ws,
64 // WS Generic Input:
65 const Agenda& x,
66 // Keywords:
67 const Index& level,
68 const Verbosity& verbosity);
69
70/* Workspace method: Doxygen documentation will be auto-generated */
71void Print(Workspace& ws,
72 // WS Generic Input:
73 const ArrayOfAgenda& x,
74 // Keywords:
75 const Index& level,
76 const Verbosity& verbosity);
77
78/* Workspace method: Doxygen documentation will be auto-generated */
79void Print( // WS Generic Input:
80 const ArrayOfGridPos& x,
81 // Keywords:
82 const Index& level,
83 const Verbosity& verbosity);
84
85/* Workspace method: Doxygen documentation will be auto-generated */
86void Print( // WS Generic Input:
87 const ArrayOfCIARecord& x,
88 // Keywords:
89 const Index& level,
90 const Verbosity& verbosity);
91
92/* Workspace method: Doxygen documentation will be auto-generated */
93void Print( // WS Generic Input:
94 const ArrayOfString& x,
95 // Keywords:
96 const Index& level,
97 const Verbosity& verbosity);
98
99/* Workspace method: Doxygen documentation will be auto-generated */
100void Print( // WS Generic Input:
101 const ArrayOfPpath& x,
102 // Keywords:
103 const Index& level,
104 const Verbosity& verbosity);
105
106/* Workspace method: Doxygen documentation will be auto-generated */
107void Print( // WS Generic Input:
108 const Timer& x,
109 // Keywords:
110 const Index& level,
111 const Verbosity& verbosity);
112
113/* Workspace method: Doxygen documentation will be auto-generated */
114void Print( // WS Generic Input:
115 const TessemNN& x,
116 // Keywords:
117 const Index& level,
118 const Verbosity& verbosity);
119
120/* Workspace method: Doxygen documentation will be auto-generated */
121void PrintWorkspace( // Workspace reference
122 Workspace& ws,
123 // Keywords:
124 const Index& only_allocated,
125 const Index& level,
126 const Verbosity& verbosity);
127
128#endif /* m_general_h */
Declarations for agendas.
The global header file for ARTS.
Header file for work with HITRAN collision induced absorption (CIA).
The Agenda class.
This can be used to make arrays out of anything.
Definition array.h:31
Workspace class.
Array< WorkspaceVariable > ws
Workspace variable container.
#define SWITCH_OUTPUT(x, y)
Definition m_general.h:28
void Print(const T &x, const Index &level, const Verbosity &verbosity)
WORKSPACE METHOD: Print.
Definition m_general.h:52
void PrintWorkspace(Workspace &ws, const Index &only_allocated, const Index &level, const Verbosity &verbosity)
Definition m_general.cc:206
Declarations having to do with the four output streams.
#define CREATE_OUTS
Definition messages.h:191
This file contains the definition of String, the ARTS string class.
Propagation path structure and functions.
Header file for special_interp.cc.
This file contains functions that are adapted from TESSEM code which is used to calculate surface emi...