ARTS  2.0.49
arts.h
Go to the documentation of this file.
1 /* Copyright (C) 2000-2008
2  Stefan Buehler <sbuehler@ltu.se>
3  Patrick Eriksson <Patrick.Eriksson@rss.chalmers.se>
4  Oliver Lemke <olemke@core-dump.info>
5 
6  This program is free software; you can redistribute it and/or modify it
7  under the terms of the GNU General Public License as published by the
8  Free Software Foundation; either version 2, or (at your option) any
9  later version.
10 
11  This program is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU General Public License for more details.
15 
16  You should have received a copy of the GNU General Public License
17  along with this program; if not, write to the Free Software
18  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
19  USA. */
20 
96 #ifndef arts_h
97 #define arts_h
98 
99 #include <cstddef>
100 #include <cstdlib>
101 #include "matpack.h"
102 #include "mystring.h"
103 
104 //----------< First of all, include the configuration header >----------
105 #include "config_global.h"
106 
107 // C Assert macro:
108 #include <cassert>
109 
110 #ifdef HAVE_NAMESPACES
111  // We need those to support ansi-compliant compilers (gcc-3x)
112  namespace std {}
113  using namespace std;
114 #endif
115 
116 //---------------< Global variable declarations >---------------
117 // (Definitions of these are in FIXME: where?)
118 
119 
120 //---------------< Global function declarations: >---------------
121 // Documentations are with function definitions.
122 // FIXME OLE: These should be moved to a separate header file.
123 class ArtsOut;
124 
125 void define_wsv_group_names();
126 Index get_wsv_id(const String& name);
127 Index get_wsv_id(const char *name);
128 bool is_valid_keyword_group(const Index name);
129 void define_species_data();
130 void define_lineshape_data();
132 
133 void arts_exit (int status = EXIT_FAILURE);
134 void arts_exit_with_error_message(const String& m, ArtsOut &os);
135 void exit_or_rethrow(const String& m, ArtsOut &out);
136 
137 //
138 // Physical constants are now in constants.cc
139 //
140 
141 //---------------< Global macro definitions: >---------------
142 
143 // Use this macro around function parameter names and variable definitions
144 // which are only used in assertions
145 #ifndef NDEBUG
146 #define DEBUG_ONLY(...) __VA_ARGS__
147 #else
148 #define DEBUG_ONLY(...)
149 #endif
150 
151 #endif // arts_h
152 
matpack.h
get_wsv_id
Index get_wsv_id(const String &name)
Get index of WSV.
Definition: workspace.cc:4555
arts_exit_with_error_message
void arts_exit_with_error_message(const String &m, ArtsOut &os)
Print error message and exit.
Definition: arts.cc:64
ArtsOut
Definition: messages.h:86
config_global.h
is_valid_keyword_group
bool is_valid_keyword_group(const Index name)
Definition: groups.cc:144
my_basic_string< char >
define_lineshape_data
void define_lineshape_data()
Definition: lineshapes.cc:2092
define_wsv_group_names
void define_wsv_group_names()
Define the array of workspace variable group names.
Definition: groups.cc:80
define_lineshape_norm_data
void define_lineshape_norm_data()
Definition: lineshapes.cc:2189
exit_or_rethrow
void exit_or_rethrow(const String &m, ArtsOut &out)
Exit ARTS or re-throw error.
Definition: arts.cc:98
Index
INDEX Index
The type to use for all integer numbers and indices.
Definition: matpack.h:39
define_species_data
void define_species_data()
Definition: species_data.cc:136
arts_exit
void arts_exit(int status=EXIT_FAILURE)
This is the exit function of ARTS.
Definition: arts.cc:42
mystring.h
This file contains the definition of String, the ARTS string class.