bes
Updated for version 3.20.10
|
DMR(Data Metadata Response) request processing source. More...
#include <sstream>
#include "config_hdf5.h"
#include <libdap/InternalErr.h>
#include <BESDebug.h>
#include <libdap/mime_util.h>
#include "hdf5_handler.h"
#include "HDF5Int32.h"
#include "HDF5UInt32.h"
#include "HDF5UInt16.h"
#include "HDF5Int16.h"
#include "HDF5Byte.h"
#include "HDF5Array.h"
#include "HDF5Str.h"
#include "HDF5Float32.h"
#include "HDF5Float64.h"
#include "HDF5Url.h"
#include "HDF5Structure.h"
#include "HDF5CFUtil.h"
#include "h5dmr.h"
Go to the source code of this file.
Functions | |
bool | breadth_first (const hid_t file_id, hid_t pid, char *gname, D4Group *par_grp, const char *fname, bool use_dimscale, vector< link_info_t > &hdf5_hls) |
string | get_hardlink_dmr (hid_t h5obj_id, const string &oname) |
void | get_softlink (D4Group *par_grp, hid_t h5obj_id, const string &oname, int index, size_t val_size) |
void | map_h5_attrs_to_dap4 (hid_t oid, D4Group *d4g, BaseType *d4b, Structure *d4s, int flag) |
A function that map HDF5 attributes to DAP4. More... | |
void | map_h5_dset_hardlink_to_d4 (hid_t h5_dsetid, const string &full_path, BaseType *d4b, Structure *d4s, int flag) |
void | read_objects (D4Group *d4_grp, const string &varname, const string &filename, const hid_t dset_id) |
void | read_objects_base_type (D4Group *d4_grp, const string &varname, const string &filename, hid_t dset_id) |
void | read_objects_structure (D4Group *d4_grp, const string &varname, const string &filename, hid_t dset_id) |
Variables | |
HDF5PathFinder | obj_paths |
A variable for remembering visited paths to break cyclic HDF5 groups. More... | |
DMR(Data Metadata Response) request processing source.
This file is part of h5_dap_handler, a C++ implementation of the DAP handler for HDF5 data.
This file contains functions which use depth-first and breadth-first search to walk through an HDF5 file and build the in-memory DMR. The depth-first is for the case when HDF5 dimension scales are not used. The breadth-first is for the case when HDF5 dimension scales are used to generate an HDF5 file that follows the netCDF-4 data model. Using breadth-first ensures the
Definition in file h5dmr.cc.
bool breadth_first | ( | const hid_t | file_id, |
hid_t | pid, | ||
char * | gname, | ||
D4Group * | par_grp, | ||
const char * | fname, | ||
bool | use_dimscale, | ||
vector< link_info_t > & | hdf5_hls | ||
) |
bool breadth_first(const hid_t file_id,hid_t pid, char gname, DMR & dmr, D4Group par_grp, const char *fname,bool use_dimscale, vector <link_info_t> & hdf5_hls)
file_id | file_id(this is necessary for searching the hardlinks of a dataset) |
pid | group id |
gname | group name (the absolute path from the root group) |
dmr | reference of DMR object |
fname | the HDF5 file name |
use_dimscale | whether dimension scales are used. |
hdf5_hls | the vector to save all the hardlink info. |
To keep track of soft links.
get_softlink | ( | D4Group * | par_grp, |
hid_t | h5obj_id, | ||
const string & | oname, | ||
int | index, | ||
size_t | val_size | ||
) |
void map_h5_attrs_to_dap4 | ( | hid_t | oid, |
D4Group * | d4g, | ||
BaseType * | d4b, | ||
Structure * | d4s, | ||
int | flag | ||
) |
HDF5PathFinder obj_paths |