bes Updated for version 3.20.13
HDF5CF::File Class Referenceabstract

This class retrieves all information from an HDF5 file. More...

#include <HDF5CF.h>

Collaboration diagram for HDF5CF::File:
Collaboration graph

Public Member Functions

virtual void Add_Supplement_Attrs (bool)
 Add supplemental attributes such as fullpath and original name.
 
virtual void Adjust_Dim_Name ()=0
 Adjust dimension names based on different products.
 
virtual void Adjust_Obj_Name ()=0
 Adjust object names based on different products.
 
virtual void Flatten_Obj_Name (bool)
 Flatten the object name.
 
virtual const std::string & Get_Ignored_Msg ()=0
 Obtain the message that contains the ignored object info.
 
virtual bool Get_IgnoredInfo_Flag ()=0
 Obtain the flag to see if ignored objects should be generated.
 
const std::vector< Attribute * > & getAttributes () const
 Public interface to obtain information of all attributes under the root group.
 
bool getDap4 () const
 
hid_t getFileID () const
 Obtain the HDF5 file ID.
 
const std::vector< Group * > & getGroups () const
 Public interface to obtain all the group info.
 
bool getIsCOARD () const
 
const std::string & getPath () const
 Obtain the path of the file.
 
const std::vector< Var * > & getVars () const
 Public interface to obtain information of all variables.
 
virtual void Handle_Coor_Attr ()=0
 Handle "coordinates" attributes.
 
virtual void Handle_CVar ()=0
 Handle coordinate variables.
 
virtual void Handle_DimNameClashing ()=0
 
template<class T >
void Handle_General_NameClashing (set< string > &objnameset, vector< T * > &objvec)
 
virtual void Handle_Grid_Mapping_Vars ()
 Handle Grid Mapping Vars.
 
virtual void Handle_SpVar ()=0
 Handle special variables.
 
virtual void Handle_SpVar_Attr ()=0
 Handle special variable attributes.
 
virtual void Handle_SpVar_DMR ()=0
 Handle Special variable and attributes for DMR.
 
virtual void Handle_Unsupported_Dspace (bool)
 Handle unsupported HDF5 dataspaces for datasets.
 
virtual void Handle_Unsupported_Dtype (bool)
 Handle unsupported HDF5 datatypes.
 
virtual void Handle_Unsupported_Others (bool)
 Handle other unmapped objects/attributes.
 
virtual bool Have_Grid_Mapping_Attrs ()
 Check if having Grid Mapping Attrs.
 
bool HaveUnlimitedDim () const
 Has unlimited dimensions.
 
virtual void Retrieve_H5_CVar_Supported_Attr_Values ()=0
 Retrieve coordinate variable attributes.
 
virtual void Retrieve_H5_Info (const char *path, hid_t file_id, bool)
 
virtual void Retrieve_H5_Supported_Attr_Values ()
 Retrieve attribute values for the supported HDF5 datatypes.
 
virtual void Retrieve_H5_Var_Attr_Values (Var *var)
 Retrieve attribute values for a variable.
 
void setDap4 (bool is_dap4)
 

Protected Member Functions

void add_ignored_droplongstr_hdr ()
 
void add_ignored_grp_longstr_info (const std::string &grp_path, const std::string &attr_name)
 
void add_ignored_info_attrs (bool is_grp, const std::string &obj_path, const std::string &attr_name)
 
void add_ignored_info_links (const std::string &link_name)
 
void add_ignored_info_links_header ()
 
void add_ignored_info_namedtypes (const std::string &, const std::string &)
 
void add_ignored_info_obj_header ()
 
void add_ignored_info_objs (bool is_dim_related, const std::string &obj_path)
 
void add_ignored_info_page_header ()
 
void add_ignored_var_longstr_info (const Var *var, const Attribute *attr)
 
void add_no_ignored_info ()
 
void Add_One_FakeDim_Name (Dimension *dim)
 
void Add_One_Float_Attr (Attribute *attr, const std::string &attrname, float float_value)
 
void Add_Str_Attr (Attribute *attr, const std::string &attrname, const std::string &strvalue)
 
void Adjust_Duplicate_FakeDim_Name (Dimension *dim)
 
void Adjust_Duplicate_FakeDim_Name2 (Dimension *dim, int dup_dim_size_index)
 
void Change_Attr_One_Str_to_Others (Attribute *attr, const Var *var)
 
bool Check_DropLongStr (const Var *var, const Attribute *attr)
 
std::string Check_Grid_Mapping_FullPath (const std::string &attr_value)
 
std::string Check_Grid_Mapping_VarName (const std::string &attr_value, const std::string &var_full_path)
 
bool Check_VarDropLongStr (const std::string &varpath, const std::vector< Dimension * > &, H5DataType) const
 
 File (const char *h5_path, hid_t file_id)
 
void Gen_DimScale_VarAttr_Unsupported_Dtype_Info ()
 
void Gen_Group_Unsupported_Dtype_Info ()
 
virtual void Gen_Unsupported_Dspace_Info ()
 
virtual void Gen_Unsupported_Dtype_Info (bool)=0
 
void Gen_Var_Unsupported_Dtype_Info ()
 
virtual void Gen_VarAttr_Unsupported_Dtype_Info ()
 
virtual std::string get_CF_string (std::string)
 
template<typename T >
void Handle_General_NameClashing (std::set< std::string > &objnameset, std::vector< T * > &objvec)
 
void Handle_GeneralObj_NameClashing (bool, std::set< std::string > &objnameset)
 
void Handle_Group_NameClashing (std::set< std::string > &objnameset)
 
void Handle_Group_Unsupported_Dtype ()
 
void Handle_GroupAttr_Unsupported_Dspace ()
 
void Handle_Obj_AttrNameClashing ()
 
void Handle_Var_NameClashing (std::set< std::string > &objnameset)
 
void Handle_Var_Unsupported_Dtype ()
 
void Handle_VarAttr_Unsupported_Dspace ()
 
void Handle_VarAttr_Unsupported_Dtype ()
 
bool has_latlon_cf_units (Attribute *attr, const std::string &varfullpath, bool is_lat)
 
bool ignored_dimscale_ref_list (Var *var)
 
void Insert_One_NameSizeMap_Element (std::string name, hsize_t size, bool unlimited)
 
void Insert_One_NameSizeMap_Element2 (std::map< std::string, hsize_t > &, std::map< std::string, bool > &, std::string name, hsize_t size, bool unlimited)
 
bool Is_geolatlon (const std::string &var_name, bool is_lat)
 
bool Is_Str_Attr (Attribute *attr, const std::string &varfullpath, const std::string &attrname, const std::string &strvalue)
 
bool is_var_under_group (const std::string &varname, const std::string &grpname, const int var_rank, std::vector< size_t > &var_size)
 
void release_standalone_var_vector (std::vector< Var * > &vars)
 
void remove_netCDF_internal_attributes (bool include_attr)
 
void Replace_Var_Attrs (Var *src, Var *target)
 
void Replace_Var_Info (Var *src, Var *target)
 
void Replace_Var_Str_Attr (Var *var, const std::string &attr_name, const std::string &strvalue)
 
void Retrieve_H5_Attr_Info (Attribute *, hid_t obj_id, const int j, bool &unsup_attr_dtype, bool &unsup_attr_dspace)
 
void Retrieve_H5_Attr_Value (Attribute *attr, const std::string &)
 
void Retrieve_H5_Obj (hid_t grp_id, const char *gname, bool include_attr)
 
float Retrieve_H5_VarCompRatio (const Var *, const hid_t) const
 
void Retrieve_H5_VarDim (Var *, hid_t dset_id, const std::string &varname, bool &unsup_var_dspace)
 
void Retrieve_H5_VarType (Var *, hid_t dset_id, const std::string &varname, bool &unsup_var_dtype)
 
std::string Retrieve_Str_Attr_Value (Attribute *attr, const std::string &var_path)
 

Protected Attributes

bool _is_dap4 = false
 
int addeddimindex = 0
 
bool check_ignored = false
 
std::map< std::string, hsize_t > dimname_to_dimsize
 
std::map< std::string, booldimname_to_unlimited
 
std::set< std::string > dimnamelist
 
std::map< hsize_t, std::string > dimsize_to_fakedimname
 Handle added dimension names.
 
std::vector< std::pair< hsize_t, std::string > > dup_dimsize_dimname
 
hid_t fileid
 
std::vector< Group * > groups
 Non-root group vectors.
 
bool have_ignored = false
 
bool have_udim = false
 
std::string ignored_msg
 
bool iscoard = false
 
std::string path
 
std::vector< Attribute * > root_attrs
 Root attribute vectors.
 
hid_t rootid = -1
 
bool unsupported_attr_dspace = false
 
bool unsupported_attr_dtype = false
 
bool unsupported_var_attr_dspace = false
 
bool unsupported_var_dspace = false
 
bool unsupported_var_dtype = false
 
std::vector< Var * > vars
 Var vectors.
 

Detailed Description

This class retrieves all information from an HDF5 file.

Definition at line 563 of file HDF5CF.h.

Constructor & Destructor Documentation

◆ ~File()

File::~File ( )
virtual

Definition at line 143 of file HDF5CF.cc.

◆ File()

HDF5CF::File::File ( const char *  h5_path,
hid_t  file_id 
)
inlineprotected

Definition at line 778 of file HDF5CF.h.

Member Function Documentation

◆ add_ignored_droplongstr_hdr()

void File::add_ignored_droplongstr_hdr ( )
protected

Definition at line 2806 of file HDF5CF.cc.

◆ add_ignored_grp_longstr_info()

void File::add_ignored_grp_longstr_info ( const std::string &  grp_path,
const std::string &  attr_name 
)
protected

Definition at line 2784 of file HDF5CF.cc.

◆ add_ignored_info_attrs()

void File::add_ignored_info_attrs ( bool  is_grp,
const std::string &  obj_path,
const std::string &  attr_name 
)
protected

Definition at line 2451 of file HDF5CF.cc.

◆ add_ignored_info_links()

void File::add_ignored_info_links ( const std::string &  link_name)
protected

Definition at line 2421 of file HDF5CF.cc.

◆ add_ignored_info_links_header()

void File::add_ignored_info_links_header ( )
protected

Definition at line 2381 of file HDF5CF.cc.

◆ add_ignored_info_namedtypes()

void File::add_ignored_info_namedtypes ( const std::string &  ,
const std::string &   
)
protected

Definition at line 2430 of file HDF5CF.cc.

◆ add_ignored_info_obj_header()

void File::add_ignored_info_obj_header ( )
protected

Definition at line 2356 of file HDF5CF.cc.

◆ add_ignored_info_objs()

void File::add_ignored_info_objs ( bool  is_dim_related,
const std::string &  obj_path 
)
protected

Definition at line 2484 of file HDF5CF.cc.

◆ add_ignored_info_page_header()

void File::add_ignored_info_page_header ( )
protected

Definition at line 2349 of file HDF5CF.cc.

◆ add_ignored_var_longstr_info()

void File::add_ignored_var_longstr_info ( const Var var,
const Attribute attr 
)
protected

Definition at line 2793 of file HDF5CF.cc.

◆ add_no_ignored_info()

void File::add_no_ignored_info ( )
protected

Definition at line 2514 of file HDF5CF.cc.

◆ Add_One_FakeDim_Name()

void File::Add_One_FakeDim_Name ( Dimension dim)
protected

Definition at line 1586 of file HDF5CF.cc.

◆ Add_One_Float_Attr()

void File::Add_One_Float_Attr ( Attribute attr,
const std::string &  attrname,
float  float_value 
)
protected

Definition at line 1837 of file HDF5CF.cc.

◆ Add_Str_Attr()

void File::Add_Str_Attr ( Attribute attr,
const std::string &  attrname,
const std::string &  strvalue 
)
protected

Definition at line 1767 of file HDF5CF.cc.

◆ Add_Supplement_Attrs()

void File::Add_Supplement_Attrs ( bool  add_path)
virtual

Add supplemental attributes such as fullpath and original name.

Reimplemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

Definition at line 2027 of file HDF5CF.cc.

◆ Adjust_Dim_Name()

virtual void HDF5CF::File::Adjust_Dim_Name ( )
pure virtual

Adjust dimension names based on different products.

Implemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

◆ Adjust_Duplicate_FakeDim_Name()

void File::Adjust_Duplicate_FakeDim_Name ( Dimension dim)
protected

Definition at line 1639 of file HDF5CF.cc.

◆ Adjust_Duplicate_FakeDim_Name2()

void File::Adjust_Duplicate_FakeDim_Name2 ( Dimension dim,
int  dup_dim_size_index 
)
protected

Definition at line 1679 of file HDF5CF.cc.

◆ Adjust_Obj_Name()

virtual void HDF5CF::File::Adjust_Obj_Name ( )
pure virtual

Adjust object names based on different products.

Implemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

◆ Change_Attr_One_Str_to_Others()

void File::Change_Attr_One_Str_to_Others ( Attribute attr,
const Var var 
)
protected

Definition at line 1849 of file HDF5CF.cc.

◆ Check_DropLongStr()

bool File::Check_DropLongStr ( const Var var,
const Attribute attr 
)
protected

Definition at line 2558 of file HDF5CF.cc.

◆ Check_Grid_Mapping_FullPath()

string File::Check_Grid_Mapping_FullPath ( const std::string &  attr_value)
protected

Definition at line 2253 of file HDF5CF.cc.

◆ Check_Grid_Mapping_VarName()

string File::Check_Grid_Mapping_VarName ( const std::string &  attr_value,
const std::string &  var_full_path 
)
protected

Definition at line 2237 of file HDF5CF.cc.

◆ Check_VarDropLongStr()

bool File::Check_VarDropLongStr ( const std::string &  varpath,
const std::vector< Dimension * > &  ,
H5DataType   
) const
protected

Definition at line 2589 of file HDF5CF.cc.

◆ Flatten_Obj_Name()

void File::Flatten_Obj_Name ( bool  include_attr)
virtual

Flatten the object name.

Reimplemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

Definition at line 1370 of file HDF5CF.cc.

◆ Gen_DimScale_VarAttr_Unsupported_Dtype_Info()

void File::Gen_DimScale_VarAttr_Unsupported_Dtype_Info ( )
protected

Definition at line 1179 of file HDF5CF.cc.

◆ Gen_Group_Unsupported_Dtype_Info()

void File::Gen_Group_Unsupported_Dtype_Info ( )
protected

Definition at line 1051 of file HDF5CF.cc.

◆ Gen_Unsupported_Dspace_Info()

void File::Gen_Unsupported_Dspace_Info ( )
protectedvirtual

Definition at line 1299 of file HDF5CF.cc.

◆ Gen_Var_Unsupported_Dtype_Info()

void File::Gen_Var_Unsupported_Dtype_Info ( )
protected

Definition at line 1110 of file HDF5CF.cc.

◆ Gen_VarAttr_Unsupported_Dtype_Info()

void File::Gen_VarAttr_Unsupported_Dtype_Info ( )
protectedvirtual

Definition at line 1153 of file HDF5CF.cc.

◆ get_CF_string()

string File::get_CF_string ( std::string  )
protectedvirtual

Definition at line 1526 of file HDF5CF.cc.

◆ Get_Ignored_Msg()

virtual const std::string & HDF5CF::File::Get_Ignored_Msg ( )
pure virtual

Obtain the message that contains the ignored object info.

Implemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

◆ Get_IgnoredInfo_Flag()

virtual bool HDF5CF::File::Get_IgnoredInfo_Flag ( )
pure virtual

Obtain the flag to see if ignored objects should be generated.

Implemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

◆ getAttributes()

const std::vector< Attribute * > & HDF5CF::File::getAttributes ( ) const
inline

Public interface to obtain information of all attributes under the root group.

Definition at line 649 of file HDF5CF.h.

◆ getDap4()

bool HDF5CF::File::getDap4 ( ) const
inline

Definition at line 670 of file HDF5CF.h.

◆ getFileID()

hid_t HDF5CF::File::getFileID ( ) const
inline

Obtain the HDF5 file ID.

Definition at line 631 of file HDF5CF.h.

◆ getGroups()

const std::vector< Group * > & HDF5CF::File::getGroups ( ) const
inline

Public interface to obtain all the group info.

Definition at line 655 of file HDF5CF.h.

◆ getIsCOARD()

bool HDF5CF::File::getIsCOARD ( ) const
inline

Definition at line 675 of file HDF5CF.h.

◆ getPath()

const std::string & HDF5CF::File::getPath ( ) const
inline

Obtain the path of the file.

Definition at line 637 of file HDF5CF.h.

◆ getVars()

const std::vector< Var * > & HDF5CF::File::getVars ( ) const
inline

Public interface to obtain information of all variables.

Definition at line 643 of file HDF5CF.h.

◆ Handle_Coor_Attr()

virtual void HDF5CF::File::Handle_Coor_Attr ( )
pure virtual

Handle "coordinates" attributes.

Implemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

◆ Handle_CVar()

virtual void HDF5CF::File::Handle_CVar ( )
pure virtual

Handle coordinate variables.

Implemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

◆ Handle_DimNameClashing()

virtual void HDF5CF::File::Handle_DimNameClashing ( )
pure virtual

Handle dimension name clashing. Since COARDS requires the change of cv names, So we need to handle dimension name clashing specially.

Implemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

◆ Handle_General_NameClashing()

template<class T >
void HDF5CF::File::Handle_General_NameClashing ( set< string > &  objnameset,
vector< T * > &  objvec 
)

Definition at line 1469 of file HDF5CF.cc.

◆ Handle_GeneralObj_NameClashing()

void File::Handle_GeneralObj_NameClashing ( bool  ,
std::set< std::string > &  objnameset 
)
protected

Definition at line 1515 of file HDF5CF.cc.

◆ Handle_Grid_Mapping_Vars()

void File::Handle_Grid_Mapping_Vars ( )
virtual

Handle Grid Mapping Vars.

Reimplemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

Definition at line 2208 of file HDF5CF.cc.

◆ Handle_Group_NameClashing()

void File::Handle_Group_NameClashing ( std::set< std::string > &  objnameset)
protected

Definition at line 1410 of file HDF5CF.cc.

◆ Handle_Group_Unsupported_Dtype()

void File::Handle_Group_Unsupported_Dtype ( )
protected

Definition at line 1010 of file HDF5CF.cc.

◆ Handle_GroupAttr_Unsupported_Dspace()

void File::Handle_GroupAttr_Unsupported_Dspace ( )
protected

Definition at line 1208 of file HDF5CF.cc.

◆ Handle_Obj_AttrNameClashing()

void File::Handle_Obj_AttrNameClashing ( )
protected

Definition at line 1438 of file HDF5CF.cc.

◆ Handle_SpVar()

virtual void HDF5CF::File::Handle_SpVar ( )
pure virtual

Handle special variables.

Implemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

◆ Handle_SpVar_Attr()

virtual void HDF5CF::File::Handle_SpVar_Attr ( )
pure virtual

Handle special variable attributes.

Implemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

◆ Handle_SpVar_DMR()

virtual void HDF5CF::File::Handle_SpVar_DMR ( )
pure virtual

Handle Special variable and attributes for DMR.

Implemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

◆ Handle_Unsupported_Dspace()

void File::Handle_Unsupported_Dspace ( bool  include_attr)
virtual

Handle unsupported HDF5 dataspaces for datasets.

Reimplemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

Definition at line 1273 of file HDF5CF.cc.

◆ Handle_Unsupported_Dtype()

void File::Handle_Unsupported_Dtype ( bool  include_attr)
virtual

Handle unsupported HDF5 datatypes.

Reimplemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

Definition at line 916 of file HDF5CF.cc.

◆ Handle_Unsupported_Others()

void File::Handle_Unsupported_Others ( bool  include_attr)
virtual

Handle other unmapped objects/attributes.

Reimplemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

Definition at line 1320 of file HDF5CF.cc.

◆ Handle_Var_NameClashing()

void File::Handle_Var_NameClashing ( std::set< std::string > &  objnameset)
protected

Definition at line 1403 of file HDF5CF.cc.

◆ Handle_Var_Unsupported_Dtype()

void File::Handle_Var_Unsupported_Dtype ( )
protected

Definition at line 1090 of file HDF5CF.cc.

◆ Handle_VarAttr_Unsupported_Dspace()

void File::Handle_VarAttr_Unsupported_Dspace ( )
protected

Definition at line 1248 of file HDF5CF.cc.

◆ Handle_VarAttr_Unsupported_Dtype()

void File::Handle_VarAttr_Unsupported_Dtype ( )
protected

Definition at line 1130 of file HDF5CF.cc.

◆ has_latlon_cf_units()

bool File::has_latlon_cf_units ( Attribute attr,
const std::string &  varfullpath,
bool  is_lat 
)
protected

Definition at line 1823 of file HDF5CF.cc.

◆ Have_Grid_Mapping_Attrs()

bool File::Have_Grid_Mapping_Attrs ( )
virtual

Check if having Grid Mapping Attrs.

Reimplemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

Definition at line 2188 of file HDF5CF.cc.

◆ HaveUnlimitedDim()

bool HDF5CF::File::HaveUnlimitedDim ( ) const
inline

Has unlimited dimensions.

Definition at line 661 of file HDF5CF.h.

◆ ignored_dimscale_ref_list()

bool File::ignored_dimscale_ref_list ( Var var)
protected

Definition at line 2523 of file HDF5CF.cc.

◆ Insert_One_NameSizeMap_Element()

void File::Insert_One_NameSizeMap_Element ( std::string  name,
hsize_t  size,
bool  unlimited 
)
protected

Definition at line 1543 of file HDF5CF.cc.

◆ Insert_One_NameSizeMap_Element2()

void File::Insert_One_NameSizeMap_Element2 ( std::map< std::string, hsize_t > &  ,
std::map< std::string, bool > &  ,
std::string  name,
hsize_t  size,
bool  unlimited 
)
protected

Definition at line 1558 of file HDF5CF.cc.

◆ Is_geolatlon()

bool File::Is_geolatlon ( const std::string &  var_name,
bool  is_lat 
)
protected

Definition at line 2004 of file HDF5CF.cc.

◆ Is_Str_Attr()

bool File::Is_Str_Attr ( Attribute attr,
const std::string &  varfullpath,
const std::string &  attrname,
const std::string &  strvalue 
)
protected

Definition at line 1811 of file HDF5CF.cc.

◆ is_var_under_group()

bool File::is_var_under_group ( const std::string &  varname,
const std::string &  grpname,
const int  var_rank,
std::vector< size_t > &  var_size 
)
protected

Definition at line 2160 of file HDF5CF.cc.

◆ release_standalone_var_vector()

void File::release_standalone_var_vector ( std::vector< Var * > &  vars)
protected

Definition at line 2820 of file HDF5CF.cc.

◆ remove_netCDF_internal_attributes()

void File::remove_netCDF_internal_attributes ( bool  include_attr)
protected

Definition at line 2266 of file HDF5CF.cc.

◆ Replace_Var_Attrs()

void File::Replace_Var_Attrs ( Var src,
Var target 
)
protected

Definition at line 2129 of file HDF5CF.cc.

◆ Replace_Var_Info()

void File::Replace_Var_Info ( Var src,
Var target 
)
protected

Definition at line 2073 of file HDF5CF.cc.

◆ Replace_Var_Str_Attr()

void File::Replace_Var_Str_Attr ( Var var,
const std::string &  attr_name,
const std::string &  strvalue 
)
protected

Definition at line 1969 of file HDF5CF.cc.

◆ Retrieve_H5_Attr_Info()

void File::Retrieve_H5_Attr_Info ( Attribute attr,
hid_t  obj_id,
const int  j,
bool unsup_attr_dtype,
bool unsup_attr_dspace 
)
protected

Definition at line 586 of file HDF5CF.cc.

◆ Retrieve_H5_Attr_Value()

void File::Retrieve_H5_Attr_Value ( Attribute attr,
const std::string &   
)
protected

Definition at line 754 of file HDF5CF.cc.

◆ Retrieve_H5_CVar_Supported_Attr_Values()

virtual void HDF5CF::File::Retrieve_H5_CVar_Supported_Attr_Values ( )
pure virtual

Retrieve coordinate variable attributes.

Implemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

◆ Retrieve_H5_Info()

void File::Retrieve_H5_Info ( const char *  path,
hid_t  file_id,
bool  include_attr 
)
virtual

Retrieve DDS information from the HDF5 file. The reason to separate reading DDS from DAS is: DAP needs to hold all values of attributes in the memory, building DDS doesn't need the attributes. So to reduce huge memory allocation for some HDF5 files, we separate the access of DAS from DDS although internally they still share common routines.

Reimplemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

Definition at line 168 of file HDF5CF.cc.

◆ Retrieve_H5_Obj()

void File::Retrieve_H5_Obj ( hid_t  grp_id,
const char *  gname,
bool  include_attr 
)
protected

Definition at line 228 of file HDF5CF.cc.

◆ Retrieve_H5_Supported_Attr_Values()

void File::Retrieve_H5_Supported_Attr_Values ( )
virtual

Retrieve attribute values for the supported HDF5 datatypes.

Reimplemented in HDF5CF::GMFile, and HDF5CF::EOS5File.

Definition at line 727 of file HDF5CF.cc.

◆ Retrieve_H5_Var_Attr_Values()

void File::Retrieve_H5_Var_Attr_Values ( Var var)
virtual

Retrieve attribute values for a variable.

Definition at line 746 of file HDF5CF.cc.

◆ Retrieve_H5_VarCompRatio()

float File::Retrieve_H5_VarCompRatio ( const Var var,
const hid_t  dset_id 
) const
protected

Definition at line 446 of file HDF5CF.cc.

◆ Retrieve_H5_VarDim()

void File::Retrieve_H5_VarDim ( Var ,
hid_t  dset_id,
const std::string &  varname,
bool unsup_var_dspace 
)
protected

Definition at line 514 of file HDF5CF.cc.

◆ Retrieve_H5_VarType()

void File::Retrieve_H5_VarType ( Var ,
hid_t  dset_id,
const std::string &  varname,
bool unsup_var_dtype 
)
protected

Definition at line 480 of file HDF5CF.cc.

◆ Retrieve_Str_Attr_Value()

string File::Retrieve_Str_Attr_Value ( Attribute attr,
const std::string &  var_path 
)
protected

Definition at line 1798 of file HDF5CF.cc.

◆ setDap4()

void HDF5CF::File::setDap4 ( bool  is_dap4)
inline

Definition at line 666 of file HDF5CF.h.

Member Data Documentation

◆ _is_dap4

bool HDF5CF::File::_is_dap4 = false
protected

Definition at line 819 of file HDF5CF.h.

◆ addeddimindex

int HDF5CF::File::addeddimindex = 0
protected

Definition at line 813 of file HDF5CF.h.

◆ check_ignored

bool HDF5CF::File::check_ignored = false
protected

Definition at line 816 of file HDF5CF.h.

◆ dimname_to_dimsize

std::map<std::string, hsize_t> HDF5CF::File::dimname_to_dimsize
protected

Definition at line 806 of file HDF5CF.h.

◆ dimname_to_unlimited

std::map<std::string, bool> HDF5CF::File::dimname_to_unlimited
protected

Definition at line 809 of file HDF5CF.h.

◆ dimnamelist

std::set<std::string> HDF5CF::File::dimnamelist
protected

Definition at line 804 of file HDF5CF.h.

◆ dimsize_to_fakedimname

std::map<hsize_t, std::string> HDF5CF::File::dimsize_to_fakedimname
protected

Handle added dimension names.

Definition at line 812 of file HDF5CF.h.

◆ dup_dimsize_dimname

std::vector<std::pair<hsize_t, std::string> > HDF5CF::File::dup_dimsize_dimname
protected

Definition at line 814 of file HDF5CF.h.

◆ fileid

hid_t HDF5CF::File::fileid
protected

Definition at line 785 of file HDF5CF.h.

◆ groups

std::vector<Group*> HDF5CF::File::groups
protected

Non-root group vectors.

Definition at line 795 of file HDF5CF.h.

◆ have_ignored

bool HDF5CF::File::have_ignored = false
protected

Definition at line 817 of file HDF5CF.h.

◆ have_udim

bool HDF5CF::File::have_udim = false
protected

Definition at line 818 of file HDF5CF.h.

◆ ignored_msg

std::string HDF5CF::File::ignored_msg
protected

Definition at line 821 of file HDF5CF.h.

◆ iscoard

bool HDF5CF::File::iscoard = false
protected

Definition at line 820 of file HDF5CF.h.

◆ path

std::string HDF5CF::File::path
protected

Definition at line 784 of file HDF5CF.h.

◆ root_attrs

std::vector<Attribute *> HDF5CF::File::root_attrs
protected

Root attribute vectors.

Definition at line 792 of file HDF5CF.h.

◆ rootid

hid_t HDF5CF::File::rootid = -1
protected

Definition at line 786 of file HDF5CF.h.

◆ unsupported_attr_dspace

bool HDF5CF::File::unsupported_attr_dspace = false
protected

Definition at line 801 of file HDF5CF.h.

◆ unsupported_attr_dtype

bool HDF5CF::File::unsupported_attr_dtype = false
protected

Definition at line 798 of file HDF5CF.h.

◆ unsupported_var_attr_dspace

bool HDF5CF::File::unsupported_var_attr_dspace = false
protected

Definition at line 802 of file HDF5CF.h.

◆ unsupported_var_dspace

bool HDF5CF::File::unsupported_var_dspace = false
protected

Definition at line 800 of file HDF5CF.h.

◆ unsupported_var_dtype

bool HDF5CF::File::unsupported_var_dtype = false
protected

Definition at line 797 of file HDF5CF.h.

◆ vars

std::vector<Var *> HDF5CF::File::vars
protected

Var vectors.

Definition at line 789 of file HDF5CF.h.


The documentation for this class was generated from the following files: