ARTS  2.0.49
xml_io_types.h
Go to the documentation of this file.
1 /* Copyright (C) 2003-2008 Oliver Lemke <olemke@core-dump.info>
2 
3  This program is free software; you can redistribute it and/or modify it
4  under the terms of the GNU General Public License as published by the
5  Free Software Foundation; either version 2, or (at your option) any
6  later version.
7 
8  This program is distributed in the hope that it will be useful,
9  but WITHOUT ANY WARRANTY; without even the implied warranty of
10  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  GNU General Public License for more details.
12 
13  You should have received a copy of the GNU General Public License
14  along with this program; if not, write to the Free Software
15  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
16  USA. */
17 
18 
20 // File description
22 
32 #ifndef xml_io_types_h
33 #define xml_io_types_h
34 
35 #include <stdexcept>
36 #include <cfloat>
37 #include "absorption.h"
38 #include "agenda_class.h"
39 #include "array.h"
40 #include "bifstream.h"
41 #include "bofstream.h"
42 #include "gas_abs_lookup.h"
43 #include "gridded_fields.h"
44 #include "jacobian.h"
45 #include "m_general.h"
46 #include "mc_antenna.h"
47 #include "mc_interp.h"
48 #include "matpackII.h"
49 #include "matpackVII.h"
50 #include "messages.h"
51 #include "optproperties.h"
52 #include "ppath.h"
53 #include "xml_io_private.h"
54 
55 #define TMPL_XML_READ_WRITE_STREAM(what) \
56  void xml_read_from_stream (istream&, what&, bifstream *, const Verbosity&); \
57  void xml_write_to_stream (ostream&, const what&, bofstream *, \
58  const String&, const Verbosity&);
59 
60 
62 // Overloaded reading/writing routines for XML streams
64 
65 //=== Basic Types ==========================================================
66 
79 
80 //=== Compound Types =======================================================
81 
99 
100 //=== Array Types ==========================================================
101 
136 
137 //==========================================================================
138 
139 // Undefine the macro to avoid it being used anywhere else
140 #undef TMPL_XML_READ_WRITE_STREAM
141 
142 void
143 xml_parse_from_stream (istream&, Vector&, bifstream *, ArtsXMLTag&, const Verbosity& verbosity);
144 
145 void
147  const Numeric, const Numeric, bifstream *,
148  const Verbosity&);
149 
150 void
152 
153 #endif /* xml_io_types_h */
GriddedField2
Definition: gridded_fields.h:230
Matrix
The Matrix class.
Definition: matpackI.h:767
Timer
Definition: m_general.h:54
gridded_fields.h
Implementation of gridded fields.
TMPL_XML_READ_WRITE_STREAM
#define TMPL_XML_READ_WRITE_STREAM(what)
Definition: xml_io_types.h:55
absorption.h
Declarations required for the calculation of absorption coefficients.
Tensor3
The Tensor3 class.
Definition: matpackIII.h:340
mc_interp.h
Interpolation classes and functions created for use within Monte Carlo scattering simulations.
Sparse
The Sparse class.
Definition: matpackII.h:55
MCAntenna
An Antenna object used by MCGeneral.
Definition: mc_antenna.h:56
Tensor4
The Tensor4 class.
Definition: matpackIV.h:375
array.h
This file contains the definition of Array.
Ppath
The structure to describe a propagation path and releated quantities.
Definition: ppath.h:59
Agenda
The Agenda class.
Definition: agenda_class.h:44
GriddedField3
Definition: gridded_fields.h:274
SingleScatteringData
Structure which describes the single scattering properties of a.
Definition: optproperties.h:74
GasAbsLookup
An absorption lookup table.
Definition: gas_abs_lookup.h:44
xml_parse_from_stream
void xml_parse_from_stream(istream &, Vector &, bifstream *, ArtsXMLTag &, const Verbosity &verbosity)
Parses Vector from XML input stream.
Definition: xml_io_basic_types.cc:1310
Array< IsotopeRecord >
xml_io_private.h
This file contains private function declarations and template instantiation to handle XML data files.
SpeciesTag
A tag group can consist of the sum of several of these.
Definition: abs_species_tags.h:45
agenda_class.h
Declarations for agendas.
messages.h
Declarations having to do with the four output streams.
my_basic_string
The implementation for String, the ARTS string class.
Definition: mystring.h:62
ScatteringMetaData
Definition: optproperties.h:99
IsotopeRecord
Contains the lookup data for one isotope.
Definition: absorption.h:181
optproperties.h
Scattering database structure and functions.
jacobian.h
Declarations required for the calculation of jacobians.
Numeric
NUMERIC Numeric
The type to use for all floating point numbers.
Definition: matpack.h:33
Verbosity
Definition: messages.h:50
bifstream
Binary output file stream class.
Definition: bifstream.h:45
GriddedField4
Definition: gridded_fields.h:328
mc_antenna.h
Workspace functions for the solution of cloud-box radiative transfer by Monte Carlo methods....
bifstream.h
This file contains the class declaration of bifstream.
bofstream.h
This file contains the class declaration of bofstream.
SpeciesRecord
Contains the lookup data for one species.
Definition: absorption.h:307
Tensor5
The Tensor5 class.
Definition: matpackV.h:443
GridPos
Structure to store a grid position.
Definition: interpolation.h:74
ppath.h
Propagation path structure and functions.
SLIData2
A 2D sequential linear interpolation (SLI) lookup table.
Definition: mc_interp.h:58
GriddedField1
Definition: gridded_fields.h:189
matpackII.h
Header file for sparse matrices.
xml_read_from_stream
void xml_read_from_stream(istream &, ArrayOfLineRecord &, const Numeric, const Numeric, bifstream *, const Verbosity &)
Reads ArrayOfLineRecord from XML input stream within specified frequency range.
Definition: xml_io_array_types.cc:2110
ArtsXMLTag
The ARTS XML tag class.
Definition: xml_io_private.h:83
Index
INDEX Index
The type to use for all integer numbers and indices.
Definition: matpack.h:39
RetrievalQuantity
Contains the data for one retrieval quantity.
Definition: jacobian.h:45
Tensor6
The Tensor6 class.
Definition: matpackVI.h:937
Vector
The Vector class.
Definition: matpackI.h:555
gas_abs_lookup.h
Declarations for the gas absorption lookup table.
Tensor7
The Tensor7 class.
Definition: matpackVII.h:1912
matpackVII.h
m_general.h
Template functions for general supergeneric ws methods.