RAVE
cartesian_odim_io.h
Go to the documentation of this file.
1/* --------------------------------------------------------------------
2Copyright (C) 2010 Swedish Meteorological and Hydrological Institute, SMHI,
3
4This file is part of RAVE.
5
6RAVE is free software: you can redistribute it and/or modify
7it under the terms of the GNU Lesser General Public License as published by
8the Free Software Foundation, either version 3 of the License, or
9(at your option) any later version.
10
11RAVE is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU Lesser General Public License for more details.
15
16You should have received a copy of the GNU Lesser General Public License
17along with RAVE. If not, see <http://www.gnu.org/licenses/>.
18------------------------------------------------------------------------*/
26#ifndef CARTESIAN_ODIM_IO_H
27#define CARTESIAN_ODIM_IO_H
28#include "rave_object.h"
29#include "hlhdf.h"
30#include "cartesian.h"
31#include "cartesianvolume.h"
32#include "lazy_nodelist_reader.h"
33
38
43
50
57
65
73
81
90
99
107int CartesianOdimIO_fillImage(CartesianOdimIO_t* self, HL_NodeList* nodelist, Cartesian_t* cartesian);
108
116int CartesianOdimIO_fillVolume(CartesianOdimIO_t* self, HL_NodeList* nodelist, CartesianVolume_t* volume);
117
118
128int CartesianOdimIO_isValidImageAddMsg(Cartesian_t* cartesian, char* msg, int maxlen);
129
138
148int CartesianOdimIO_isValidVolumeImageAddMsg(Cartesian_t* cartesian, char* msg, int maxlen);
149
158
166int CartesianOdimIO_isValidVolumeAddMsg(CartesianVolume_t* volume, char* msg, int maxlen);
167
178
186
194
195#endif /* CARTESIAN_ODIM_IO_H */
Defines the functions available when working with cartesian products.
int CartesianOdimIO_isValidVolumeImage(Cartesian_t *cartesian)
Validates an image belonging to a volume in order to verify if it contains necessary information for ...
Definition cartesian_odim_io.c:1533
RaveIO_ODIM_Version CartesianOdimIO_getVersion(CartesianOdimIO_t *self)
Returns the version that this io class handles.
Definition cartesian_odim_io.c:1036
int CartesianOdimIO_readCartesian(CartesianOdimIO_t *self, LazyNodeListReader_t *lazyReader, Cartesian_t *cartesian)
Reads a cartesian from the nodelist and sets the data in the cartesian.
Definition cartesian_odim_io.c:1060
int CartesianOdimIO_isValidImage(Cartesian_t *cartesian)
Validates an image in order to verify if it contains necessary information for writing.
Definition cartesian_odim_io.c:1478
int CartesianOdimIO_readVolume(CartesianOdimIO_t *self, LazyNodeListReader_t *lazyReader, CartesianVolume_t *volume)
Reads a volume from the nodelist and sets the data in the volume.
Definition cartesian_odim_io.c:1112
int CartesianOdimIO_isStrict(CartesianOdimIO_t *self)
If writing should be done strictly.
Definition cartesian_odim_io.c:1048
void CartesianOdimIO_setStrict(CartesianOdimIO_t *self, int strict)
If writing should be done strictly.
Definition cartesian_odim_io.c:1042
int CartesianOdimIO_validateVolumeHowAttributes(CartesianOdimIO_t *self, CartesianVolume_t *volume)
Validates a volume according to strictness and version in order to verify if it contains necessary in...
Definition cartesian_odim_io.c:1580
int CartesianOdimIO_isValidImageAddMsg(Cartesian_t *cartesian, char *msg, int maxlen)
Validates an image in order to verify if it contains necessary information for writing.
Definition cartesian_odim_io.c:1419
const char * CartesianOdimIO_getErrorMessage(CartesianOdimIO_t *self)
If an error occurs during writing, you might get an indication for why by checking the error message.
Definition cartesian_odim_io.c:1054
int CartesianOdimIO_validateCartesianHowAttributes(CartesianOdimIO_t *self, Cartesian_t *image)
Validates an image according to strictness and version in order to verify if it contains necessary in...
Definition cartesian_odim_io.c:1609
int CartesianOdimIO_fillVolume(CartesianOdimIO_t *self, HL_NodeList *nodelist, CartesianVolume_t *volume)
Fills a HL nodelist with information from a cartesian volume.
Definition cartesian_odim_io.c:1321
int CartesianOdimIO_isValidVolumeImageAddMsg(Cartesian_t *cartesian, char *msg, int maxlen)
Validates an image belonging to a volume in order to verify if it contains necessary information for ...
Definition cartesian_odim_io.c:1483
void CartesianOdimIO_setVersion(CartesianOdimIO_t *self, RaveIO_ODIM_Version version)
Sets the version that this io class should handle.
Definition cartesian_odim_io.c:1030
RaveCoreObjectType CartesianOdimIO_TYPE
Type definition to use when creating a rave object.
Definition cartesian_odim_io.c:1629
int CartesianOdimIO_fillImage(CartesianOdimIO_t *self, HL_NodeList *nodelist, Cartesian_t *cartesian)
Fills a HL nodelist with information from a cartesian product.
Definition cartesian_odim_io.c:1171
int CartesianOdimIO_isValidVolumeAddMsg(CartesianVolume_t *volume, char *msg, int maxlen)
Validates an volume in order to verify if it contains necessary information for writing.
Definition cartesian_odim_io.c:1538
int CartesianOdimIO_isValidVolume(CartesianVolume_t *volume)
Validates an volume in order to verify if it contains necessary information for writing.
Definition cartesian_odim_io.c:1575
Defines the functions available when working with cartesian volumes.
Generic implementation of an object that is used within rave.
RaveIO_ODIM_Version
The /Conventions version in a ODIM HDF5 file.
Definition rave_types.h:43
Represents the adaptor.
Definition cartesian_odim_io.c:48
int strict
if writing should be validated strictly or not
Definition cartesian_odim_io.c:51
RAVE_OBJECT_HEAD RaveIO_ODIM_Version version
Always on top.
Definition cartesian_odim_io.c:50
Represents the cartesian volume.
Definition cartesianvolume.c:39
Represents the cartesian product.
Definition cartesian.c:41
Represents the lazy nodelist loader.
Definition lazy_nodelist_reader.c:21
The rave object type definition.
Definition rave_object.h:52