ARTS  2.0.49
nc_io_compound_types.cc
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 
31 #include "config_global.h"
32 
33 #ifdef ENABLE_NETCDF
34 
35 #include "arts.h"
36 #include "nc_io.h"
37 #include "nc_io_types.h"
38 
40 // Dummy funtion for groups for which
41 // IO function have not yet been implemented
43 
44 #define TMPL_NC_READ_WRITE_FILE_DUMMY(what) \
45  void nc_write_to_file (const int, const what&) \
46  { \
47  throw runtime_error ("NetCDF support not yet implemented for this type!"); \
48  } \
49  void nc_read_from_file (const int, what&) \
50  { \
51  throw runtime_error ("NetCDF support not yet implemented for this type!"); \
52  }
53 
54 //=== Compound Types =======================================================
55 
56 TMPL_NC_READ_WRITE_FILE_DUMMY( Agenda )
57 TMPL_NC_READ_WRITE_FILE_DUMMY( GriddedField1 )
58 TMPL_NC_READ_WRITE_FILE_DUMMY( GriddedField2 )
59 TMPL_NC_READ_WRITE_FILE_DUMMY( GriddedField3 )
60 TMPL_NC_READ_WRITE_FILE_DUMMY( GriddedField4 )
61 TMPL_NC_READ_WRITE_FILE_DUMMY( GasAbsLookup )
62 TMPL_NC_READ_WRITE_FILE_DUMMY( GridPos )
63 TMPL_NC_READ_WRITE_FILE_DUMMY( IsotopeRecord )
64 TMPL_NC_READ_WRITE_FILE_DUMMY( MCAntenna )
65 TMPL_NC_READ_WRITE_FILE_DUMMY( Ppath )
66 TMPL_NC_READ_WRITE_FILE_DUMMY( RetrievalQuantity )
67 TMPL_NC_READ_WRITE_FILE_DUMMY( SLIData2 )
68 TMPL_NC_READ_WRITE_FILE_DUMMY( SingleScatteringData )
69 TMPL_NC_READ_WRITE_FILE_DUMMY( SpeciesRecord )
70 TMPL_NC_READ_WRITE_FILE_DUMMY( SpeciesTag )
71 
72 //==========================================================================
73 
74 // Undefine the macro to avoid it being used anywhere else
75 #undef TMPL_NC_READ_WRITE_FILE_DUMMY
76 
77 #endif /* ENABLE_NETCDF */
78 
GriddedField2
Definition: gridded_fields.h:230
nc_io.h
This file contains basic functions to handle NetCDF data files.
MCAntenna
An Antenna object used by MCGeneral.
Definition: mc_antenna.h:56
nc_io_types.h
This file contains private function declarations and template instantiation to handle NetCDF data fil...
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
SpeciesTag
A tag group can consist of the sum of several of these.
Definition: abs_species_tags.h:45
config_global.h
IsotopeRecord
Contains the lookup data for one isotope.
Definition: absorption.h:181
GriddedField4
Definition: gridded_fields.h:328
SpeciesRecord
Contains the lookup data for one species.
Definition: absorption.h:307
GridPos
Structure to store a grid position.
Definition: interpolation.h:74
SLIData2
A 2D sequential linear interpolation (SLI) lookup table.
Definition: mc_interp.h:58
GriddedField1
Definition: gridded_fields.h:189
RetrievalQuantity
Contains the data for one retrieval quantity.
Definition: jacobian.h:45
arts.h
The global header file for ARTS.