bes  Updated for version 3.20.6
h5get.cc File Reference
#include "h5get.h"
#include "HDF5Int32.h"
#include "HDF5UInt32.h"
#include "HDF5UInt16.h"
#include "HDF5Int16.h"
#include "HDF5Byte.h"
#include "HDF5Int8.h"
#include "HDF5Int64.h"
#include "HDF5UInt64.h"
#include "HDF5Array.h"
#include "HDF5Str.h"
#include "HDF5Float32.h"
#include "HDF5Float64.h"
#include "HDF5Url.h"
#include "HDF5Structure.h"
#include <BESDebug.h>
#include <math.h>
#include <sstream>
Include dependency graph for h5get.cc:

Go to the source code of this file.

Functions

bool check_dimscale (hid_t fileid)
 
bool check_h5str (hid_t h5type)
 
void close_fileid (hid_t fid)
 
D4AttributeType daptype_strrep_to_dap4_attrtype (std::string s)
 
hid_t get_attr_info (hid_t dset, int index, bool is_dap4, DSattr_t *attr_inst_ptr, bool *ignore_attr_ptr)
 
BaseType * Get_bt (const string &vname, const string &vpath, const string &dataset, hid_t datatype, bool is_dap4)
 
string get_dap_type (hid_t type, bool is_dap4)
 
void get_dataset (hid_t pid, const string &dname, DS_t *dt_inst_ptr, bool use_dimscale)
 
hid_t get_fileid (const char *filename)
 
Structure * Get_structure (const string &varname, const string &vpath, const string &dataset, hid_t datatype, bool is_dap4)
 
void obtain_dimnames (hid_t dset, int ndims, DS_t *dt_inst_ptr)
 
string print_attr (hid_t type, int loc, void *sm_buf)
 
void write_vlen_str_attrs (hid_t attr_id, hid_t ty_id, DSattr_t *attr_inst_ptr, D4Attribute *d4_attr, AttrTable *d2_attr, bool is_dap4)
 

Detailed Description

iterates all HDF5 internals.

This file includes all the routines to search HDF5 group, dataset, links, and attributes. since we are using HDF5 C APIs, we include all c functions in this file.

Author
Hyo-Kyung Lee hyokl.nosp@m.ee@h.nosp@m.dfgro.nosp@m.up.o.nosp@m.rg
Muqun Yang myang.nosp@m.6@hd.nosp@m.fgrou.nosp@m.p.or.nosp@m.g

Definition in file h5get.cc.

Function Documentation

◆ check_h5str()

check_h5str ( hid_t  h5type)

checks if type is HDF5 string type

Parameters
h5typedata type id
Returns
true if type is string
false otherwise

Definition at line 621 of file h5get.cc.

◆ close_fileid()

close_fileid ( hid_t  fid)

closes HDF5 file reffered by fid.

This function closes the HDF5 file.

Parameters
fidHDF5 file id
Returns
throws an error if it can't close the file.

Definition at line 414 of file h5get.cc.

◆ get_attr_info()

get_attr_info ( hid_t  dset,
int  index,
bool  is_dap4,
DSattr_t attr_inst_ptr,
bool *  ignoreptr 
)

will get attribute information.

This function will get attribute information: datatype, dataspace(dimension sizes) and number of dimensions and put it into a data struct.

Parameters
[in]dsetdataset id
[in]indexindex of attribute
[in]is_dap4is this for DAP4
[out]attr_inst_ptran attribute instance pointer
[out]ignoreptra flag to record whether it can be ignored.
Returns
pointer to attribute structure
Exceptions
InternalError

Definition at line 83 of file h5get.cc.

◆ get_dap_type()

get_dap_type ( hid_t  type,
bool  is_dap4 
)

returns the string representation of HDF5 type.

This function will get the text representation(string) of the corresponding DODS datatype. DODS-HDF5 subclass method will use this function. Return type is different for DAP2 and DAP4.

Returns
string
Parameters
typedatatype id
is_dap4is this for DAP4(for the calls from DMR-related routines)

Definition at line 272 of file h5get.cc.

◆ get_fileid()

get_fileid ( const char *  filename)

gets HDF5 file id.

This function is used because H5Fopen cannot be directly used in a C++ code.

Parameters
filenameHDF5 filename
Returns
a file handler id

Definition at line 392 of file h5get.cc.

◆ obtain_dimnames()

obtain_dimnames ( hid_t  dset,
int  ndims,
DS_t dt_inst_ptr 
)

Obtain the dimension names of an HDF5 dataset and save the dimension names.

Parameters
[in]dsetHDF5 dataset ID
[in]ndimsnumber of dimensions
[out]dt_inst_ptrpointer to the dataset struct that saves the dim. names

Definition at line 1494 of file h5get.cc.

◆ print_attr()

print_attr ( hid_t  type,
int  loc,
void *  sm_buf 
)

will get the printed representation of an attribute.

Parameters
typeHDF5 data type id
locthe number of array number
sm_bufpointer to an attribute
Returns
a string
Todo:

Due to the priority of the handler work, this function will not be

re-written in this re-engineering process. KY 2011-Nov. 14th

Definition at line 642 of file h5get.cc.