OPeNDAP Hyrax Back End Server (BES)  Updated for version 3.8.3
HDF5CF::EOS5File Class Reference

This class is a derived class of File. It includes methods applied to HDF-EOS5 files only. More...

#include <HDF5CF.h>

Inheritance diagram for HDF5CF::EOS5File:
Inheritance graph
Collaboration diagram for HDF5CF::EOS5File:
Collaboration graph

Public Member Functions

void Add_Dim_Name (HE5Parser *) throw (Exception)
 Add the dimension name for HDF-EOS5 files. More...
 
void Add_EOS5File_Info (HE5Parser *, bool) throw (Exception)
 Add HDF-EOS5 dimension and coordinate variable related info. to EOS5Grid,EOS5Swath etc. More...
 
void Add_Supplement_Attrs (bool) throw (Exception)
 Add the supplemental attributes for HDF-EOS5 products. More...
 
void Adjust_Attr_Info () throw (Exception)
 Adjust the attribute info for HDF-EOS5 products. More...
 
void Adjust_Dim_Name () throw (Exception)
 Adjust the dimension name for HDF-EOS5 products. More...
 
void Adjust_EOS5Dim_Info (HE5Parser *strmeta_info) throw (Exception)
 Adjust HDF-EOS5 dimension information. More...
 
void Adjust_Obj_Name () throw (Exception)
 This method is a no-op operation. Leave here since the method in the base class is pure virtual. More...
 
void Adjust_Var_Dim_NewName_Before_Flattening () throw (Exception)
 Adjust variable dimension names before the flattening for HDF-EOS5 files. More...
 
void Adjust_Var_NewName_After_Parsing () throw (Exception)
 Adjust variable names for HDF-EOS5 files. More...
 
void Check_Aura_Product_Status () throw (Exception)
 Check if the HDF-EOS5 file is an Aura file. Special CF operations need to be used. More...
 
 EOS5File (const char *path, hid_t file_id)
 
void Flatten_Obj_Name (bool include_attr) throw (Exception)
 Flatten the object name for HDF-EOS5 files. More...
 
const vector< Attribute * > & getAttributes () const
 Public interface to obtain information of all attributes under the root group. More...
 
const vector< EOS5CVar * > & getCVars () const
 Obtain coordinate variables for HDF-EOS5 products. More...
 
const hid_t getFileID () const
 Obtain the HDF5 file ID. More...
 
const vector< Group * > & getGroups () const
 Public interface to obtain all the group info. More...
 
const string & getPath () const
 Obtain the path of the file. More...
 
const vector< Var * > & getVars () const
 Public interface to obtain information of all variables. More...
 
void Handle_Coor_Attr ()
 Handle the coordinates attribute for HDF-EOS5 products. More...
 
void Handle_CVar () throw (Exception)
 Handle coordinate variable for HDF-EOS5 files. More...
 
void Handle_DimNameClashing () throw (Exception)
 Handle dimension name clashing. Since COARDS requires the change of cv names, So we need to handle dimension name clashing specially. More...
 
void Handle_Obj_NameClashing (bool) throw (Exception)
 Handle the object name clashing for HDF-EOS5 products. More...
 
void Handle_SpVar () throw (Exception)
 Handle special variables for HDF-EOS5 files. More...
 
void Handle_SpVar_Attr () throw (Exception)
 Handle special variables for HDF-EOS5 files. More...
 
void Handle_Unsupported_Dspace () throw (Exception)
 Handle unsupported HDF5 dataspaces for HDF-EOS5 products. More...
 
void Handle_Unsupported_Dtype (bool) throw (Exception)
 Handle unsupported HDF5 datatypes for HDF-EOS5 products. More...
 
void Retrieve_H5_Info (const char *path, hid_t file_id, bool include_attr) throw (Exception)
 Retrieve DDS information from the HDF5 file; a real implementation for HDF-EOS5 products. More...
 
void Retrieve_H5_Supported_Attr_Values () throw (Exception)
 Retrieve attribute values for the supported HDF5 datatypes for HDF-EOS5 products. More...
 
void Set_COARDS_Status () throw (Exception)
 Set COARDS flag. More...
 
virtual ~EOS5File ()
 

Protected Member Functions

void Add_One_FakeDim_Name (Dimension *dim) throw (Exception)
 
void Add_One_Float_Attr (Attribute *attr, const string &attrname, float float_value) throw (Exception)
 
void Add_Str_Attr (Attribute *attr, const string &attrname, const string &strvalue) throw (Exception)
 
void Adjust_Attr_Name () throw (Exception)
 
void Adjust_Attr_Value () throw (Exception)
 
void Adjust_CF_attr () throw (Exception)
 
void Adjust_Duplicate_FakeDim_Name (Dimension *dim) throw (Exception)
 
void Adjust_EOS5Dim_List (vector< HE5Dim > &) throw (Exception)
 
void Adjust_EOS5GridDimNames (EOS5CFGrid *) throw (Exception)
 
void Adjust_EOS5VarDim_Info (vector< HE5Dim > &, vector< HE5Dim > &, const string &, EOS5Type) throw (Exception)
 
void Adjust_H5_Attr_Value (Attribute *attr) throw (Exception)
 
template<class T >
void Adjust_Per_Var_Dim_NewName_Before_Flattening (T *, bool, int, int, int) throw (Exception)
 
void Adjust_SharedLatLon_Grid_Var_Dim_Name () throw (Exception)
 
void Change_Attr_One_Str_to_Others (Attribute *attr, Var *var) throw (Exception)
 
template<class T >
bool Check_All_DimNames (T *, string &, hsize_t)
 
bool Check_Augmentation_Status () throw (Exception)
 
bool Check_Augmented_Var_Attrs (Var *var) throw (Exception)
 
template<class T >
bool Check_Augmented_Var_Candidate (T *, Var *, EOS5Type) throw (Exception)
 
int Check_EOS5Swath_FieldType (Var *) throw (Exception)
 
void Condense_EOS5Dim_List (vector< HE5Dim > &) throw (Exception)
 
void Create_Added_Var_NewName_FullPath (EOS5Type, const string &, const string &, string &, string &) throw (Exception)
 
template<typename T >
void Create_Missing_CV (T *, EOS5CVar *, const string &, EOS5Type, int) throw (Exception)
 
template<class T >
void Create_Unique_DimName (T *, set< string > &, Dimension *, int, EOS5Type) throw (Exception)
 
template<class T >
string Create_Unique_FakeDimName (T *, EOS5Type) throw (Exception)
 
template<typename T >
void EOS5Handle_General_NameClashing (set< string > &objnameset, vector< T * > &objvec) throw (Exception)
 
void EOS5Handle_nonlatlon_dimcvars (vector< HE5Var > &eos5varlist, EOS5Type, string groupname, map< string, string > &dnamesgeo1dvnames) throw (Exception)
 
template<class T >
void EOS5SwathGrid_Set_LatLon_Flags (T *eos5gridswath, vector< HE5Var > &eos5varlist) throw (Exception)
 
string get_CF_string (string s)
 
void Get_Unique_Name (set< string > &, string &) throw (Exception)
 
EOS5Type Get_Var_EOS5_Type (Var *) throw (Exception)
 
void Handle_Augmented_Grid_CVar () throw (Exception)
 
void Handle_EOS5CVar_AttrNameClashing () throw (Exception)
 
void Handle_EOS5CVar_NameClashing (set< string > &) throw (Exception)
 
void Handle_EOS5CVar_Special_Attr () throw (Exception)
 
void Handle_EOS5CVar_Unit_Attr () throw (Exception)
 
template<typename T >
void Handle_General_NameClashing (set< string > &objnameset, vector< T * > &objvec) throw (Exception)
 
void Handle_GeneralObj_NameClashing (bool, set< string > &objnameset) throw (Exception)
 
void Handle_Grid_CVar (bool) throw (Exception)
 
void Handle_Multi_Nonaugment_Grid_CVar () throw (Exception)
 
void Handle_NonLatLon_Grid_CVar (EOS5CFGrid *, set< string > &) throw (Exception)
 
void Handle_NonLatLon_Swath_CVar (EOS5CFSwath *cfswath, set< string > &tempvardimnamelist) throw (Exception)
 
void Handle_Obj_AttrNameClashing () throw (Exception)
 
void Handle_RootGroup_NameClashing (set< string > &objnameset) throw (Exception)
 
void Handle_Single_1DLatLon_Swath_CVar (EOS5CFSwath *cfswath, bool is_augmented) throw (Exception)
 
void Handle_Single_2DLatLon_Swath_CVar (EOS5CFSwath *cfswath, bool is_augmented) throw (Exception)
 
template<class T >
void Handle_Single_Augment_CVar (T *, EOS5Type) throw (Exception)
 
void Handle_Single_Nonaugment_Grid_CVar (EOS5CFGrid *) throw (Exception)
 
bool Handle_Single_Nonaugment_Grid_CVar_EOS5LatLon (EOS5CFGrid *, set< string > &) throw (Exception)
 
bool Handle_Single_Nonaugment_Grid_CVar_OwnLatLon (EOS5CFGrid *, set< string > &) throw (Exception)
 
void Handle_Special_NonLatLon_Swath_CVar (EOS5CFSwath *cfswath, set< string > &tempvardimnamelist) throw (Exception)
 
void Handle_Swath_CVar (bool) throw (Exception)
 
void Handle_Var_NameClashing (set< string > &objnameset) throw (Exception)
 
void Handle_Za_CVar (bool) throw (Exception)
 
void Insert_One_NameSizeMap_Element (string name, hsize_t size) throw (Exception)
 
void Insert_One_NameSizeMap_Element2 (map< string, hsize_t > &, string name, hsize_t size) throw (Exception)
 
bool Obtain_Var_Dims (Var *, HE5Parser *) throw (Exception)
 
string Obtain_Var_EOS5Type_GroupName (Var *, EOS5Type) throw (Exception)
 
void Obtain_Var_NewName (Var *) throw (Exception)
 
void Remove_MultiDim_LatLon_EOS5CFGrid () throw (Exception)
 
void Remove_NegativeSizeDims (vector< HE5Dim > &) throw (Exception)
 
virtual void Replace_Var_Attrs (Var *src, Var *target)
 
void Replace_Var_Attrs (EOS5CVar *src, EOS5CVar *target)
 
virtual void Replace_Var_Info (Var *src, Var *target)
 
void Replace_Var_Info (EOS5CVar *src, EOS5CVar *target)
 
void Retrieve_H5_Attr_Info (Attribute *, hid_t obj_id, const int j, bool &unsup_attr_dtype) throw (Exception)
 
void Retrieve_H5_Attr_Value (Attribute *attr, string) throw (Exception)
 
void Retrieve_H5_Obj (hid_t grp_id, const char *gname, bool include_attr) throw (Exception)
 
void Retrieve_H5_VarDim (Var *, hid_t dset_id, const string &varname, bool &unsup_var_dspace) throw (Exception)
 
void Retrieve_H5_VarType (Var *, hid_t dset_id, const string &varname, bool &unsup_var_dtype) throw (Exception)
 
template<class T >
void Set_NonParse_Var_Dims (T *, Var *, map< hsize_t, string > &, int, EOS5Type) throw (Exception)
 
template<class T >
bool Set_Var_Dims (T *, Var *, vector< HE5Var > &, const string &, int, EOS5Type) throw (Exception)
 

Protected Attributes

int addeddimindex
 
map< string, hsize_t > dimname_to_dimsize
 
set< string > dimnamelist
 
map< hsize_t, string > dimsize_to_fakedimname
 Handle added dimension names. More...
 
hid_t fileid
 
vector< Group * > groups
 Non-root group vectors. More...
 
string path
 
vector< Attribute * > root_attrs
 Root attribute vectors. More...
 
hid_t rootid
 
bool unsupported_attr_dtype
 
bool unsupported_var_dspace
 
bool unsupported_var_dtype
 
vector< Var * > vars
 Var vectors. More...
 

Detailed Description

This class is a derived class of File. It includes methods applied to HDF-EOS5 files only.

Definition at line 880 of file HDF5CF.h.

Constructor & Destructor Documentation

HDF5CF::EOS5File::EOS5File ( const char *  path,
hid_t  file_id 
)
inline

Definition at line 882 of file HDF5CF.h.

EOS5File::~EOS5File ( )
virtual

Definition at line 105 of file HDFEOS5CF.cc.

Member Function Documentation

void EOS5File::Add_Dim_Name ( HE5Parser strmeta_info)
throw (Exception
)

Add the dimension name for HDF-EOS5 files.

Definition at line 838 of file HDFEOS5CF.cc.

Referenced by map_eos5_cfdas(), and map_eos5_cfdds().

void EOS5File::Add_EOS5File_Info ( HE5Parser strmeta_info,
bool  grids_mllcv 
)
throw (Exception
)
void File::Add_One_FakeDim_Name ( Dimension dim)
throw (Exception
)
protectedinherited
void File::Add_One_Float_Attr ( Attribute attr,
const string &  attrname,
float  float_value 
)
throw (Exception
)
protectedinherited
void File::Add_Str_Attr ( Attribute attr,
const string &  attrname,
const string &  strvalue 
)
throw (Exception
)
protectedinherited
void EOS5File::Add_Supplement_Attrs ( bool  add_path)
throw (Exception
)
virtual

Add the supplemental attributes for HDF-EOS5 products.

Reimplemented from HDF5CF::File.

Definition at line 3037 of file HDFEOS5CF.cc.

References HDF5CF::File::Add_Supplement_Attrs(), CV_EXIST, CV_MODIFY, HDF5CFUtil::obtain_string_after_lastslash(), and throw2.

Referenced by map_eos5_cfdas().

Here is the call graph for this function:

void EOS5File::Adjust_Attr_Info ( )
throw (Exception
)

Adjust the attribute info for HDF-EOS5 products.

Definition at line 2809 of file HDFEOS5CF.cc.

References Adjust_Attr_Name(), Adjust_Attr_Value(), and Handle_EOS5CVar_Unit_Attr().

Referenced by map_eos5_cfdas().

Here is the call graph for this function:

void EOS5File::Adjust_Attr_Name ( )
throw (Exception
)
protected

Definition at line 2820 of file HDFEOS5CF.cc.

References HDF5CF::File::vars.

Referenced by Adjust_Attr_Info().

void EOS5File::Adjust_Attr_Value ( )
throw (Exception
)
protected

Definition at line 2843 of file HDFEOS5CF.cc.

References H5FSTRING, Handle_EOS5CVar_Special_Attr(), Handle_EOS5CVar_Unit_Attr(), HDF5CF::File::Retrieve_H5_Attr_Value(), and HDF5CF::File::vars.

Referenced by Adjust_Attr_Info().

Here is the call graph for this function:

void HDF5CF::EOS5File::Adjust_CF_attr ( )
throw (Exception
)
protected
void EOS5File::Adjust_Dim_Name ( )
throw (Exception
)
virtual

Adjust the dimension name for HDF-EOS5 products.

Implements HDF5CF::File.

Definition at line 3005 of file HDFEOS5CF.cc.

References throw3, and HDF5CF::File::vars.

Referenced by map_eos5_cfdds().

void File::Adjust_Duplicate_FakeDim_Name ( Dimension dim)
throw (Exception
)
protectedinherited

Definition at line 1130 of file HDF5CF.cc.

References HDF5CFUtil::gen_unique_name(), and throw2.

Referenced by HDF5CF::GMFile::Add_Dim_Name_ACOS_L2S(), HDF5CF::GMFile::Add_Dim_Name_Mea_Ozonel3z(), and HDF5CF::GMFile::Add_Dim_Name_SMAP().

Here is the call graph for this function:

void EOS5File::Adjust_EOS5Dim_Info ( HE5Parser strmeta_info)
throw (Exception
)
void EOS5File::Adjust_EOS5Dim_List ( vector< HE5Dim > &  groupdimlist)
throw (Exception
)
protected

Definition at line 235 of file HDFEOS5CF.cc.

void EOS5File::Adjust_EOS5GridDimNames ( EOS5CFGrid cfgrid)
throw (Exception
)
protected

Definition at line 1937 of file HDFEOS5CF.cc.

References GRID, HDF5CFUtil::obtain_string_after_lastslash(), and throw2.

Referenced by Handle_Multi_Nonaugment_Grid_CVar().

Here is the call graph for this function:

void EOS5File::Adjust_EOS5VarDim_Info ( vector< HE5Dim > &  vardimlist,
vector< HE5Dim > &  groupdimlist,
const string &  eos5_obj_name,
EOS5Type  eos5type 
)
throw (Exception
)
protected

Definition at line 293 of file HDFEOS5CF.cc.

References HDF5CFUtil::gen_unique_name(), GRID, HE5Dim::name, HE5Dim::size, SWATH, throw2, and ZA.

Here is the call graph for this function:

void EOS5File::Adjust_H5_Attr_Value ( Attribute attr)
throw (Exception
)
protected

Definition at line 152 of file HDFEOS5CF.cc.

void EOS5File::Adjust_Obj_Name ( )
throw (Exception
)
virtual

This method is a no-op operation. Leave here since the method in the base class is pure virtual.

Implements HDF5CF::File.

Definition at line 3501 of file HDFEOS5CF.cc.

Referenced by map_eos5_cfdas(), and map_eos5_cfdds().

template<class T >
void EOS5File::Adjust_Per_Var_Dim_NewName_Before_Flattening ( T *  var,
bool  mixed_eos5type,
int  num_grids,
int  num_swaths,
int  num_zas 
)
throw (Exception
)
protected

Definition at line 2469 of file HDFEOS5CF.cc.

References GRID, OTHERVARS, SWATH, throw1, throw5, and ZA.

Referenced by Adjust_Var_Dim_NewName_Before_Flattening().

void EOS5File::Adjust_SharedLatLon_Grid_Var_Dim_Name ( )
throw (Exception
)
protected

Definition at line 2572 of file HDFEOS5CF.cc.

References HDF5CFUtil::obtain_string_after_lastslash(), throw2, and HDF5CF::File::vars.

Referenced by Adjust_Var_Dim_NewName_Before_Flattening().

Here is the call graph for this function:

void EOS5File::Adjust_Var_Dim_NewName_Before_Flattening ( )
throw (Exception
)

Adjust variable dimension names before the flattening for HDF-EOS5 files.

Definition at line 2431 of file HDFEOS5CF.cc.

References Adjust_Per_Var_Dim_NewName_Before_Flattening(), Adjust_SharedLatLon_Grid_Var_Dim_Name(), and HDF5CF::File::vars.

Referenced by map_eos5_cfdas(), and map_eos5_cfdds().

Here is the call graph for this function:

void EOS5File::Adjust_Var_NewName_After_Parsing ( )
throw (Exception
)

Adjust variable names for HDF-EOS5 files.

Definition at line 749 of file HDFEOS5CF.cc.

References Obtain_Var_NewName(), and HDF5CF::File::vars.

Referenced by map_eos5_cfdas(), and map_eos5_cfdds().

Here is the call graph for this function:

void File::Change_Attr_One_Str_to_Others ( Attribute attr,
Var var 
)
throw (Exception
)
protectedinherited
template<class T >
bool EOS5File::Check_All_DimNames ( T *  eos5data,
string &  dimname,
hsize_t  dimsize 
)
protected

Definition at line 1093 of file HDFEOS5CF.cc.

bool EOS5File::Check_Augmentation_Status ( )
throw (Exception
)
protected

Definition at line 1317 of file HDFEOS5CF.cc.

References Check_Augmented_Var_Candidate(), GRID, SWATH, HDF5CF::File::vars, and ZA.

Referenced by Handle_CVar().

Here is the call graph for this function:

bool EOS5File::Check_Augmented_Var_Attrs ( Var var)
throw (Exception
)
protected

Definition at line 1370 of file HDFEOS5CF.cc.

template<class T >
bool EOS5File::Check_Augmented_Var_Candidate ( T *  eos5data,
Var var,
EOS5Type  eos5type 
)
throw (Exception
)
protected

Definition at line 1399 of file HDFEOS5CF.cc.

References GRID, SWATH, throw1, and ZA.

Referenced by Check_Augmentation_Status().

void EOS5File::Check_Aura_Product_Status ( )
throw (Exception
)

Check if the HDF-EOS5 file is an Aura file. Special CF operations need to be used.

Definition at line 1218 of file HDFEOS5CF.cc.

References HDF5CF::File::groups, HIRDLS, MLS, OMI, HDF5CF::File::Retrieve_H5_Attr_Value(), and TES.

Referenced by map_eos5_cfdas(), and map_eos5_cfdds().

Here is the call graph for this function:

int EOS5File::Check_EOS5Swath_FieldType ( Var var)
throw (Exception
)
protected

Definition at line 1174 of file HDFEOS5CF.cc.

void EOS5File::Condense_EOS5Dim_List ( vector< HE5Dim > &  groupdimlist)
throw (Exception
)
protected

Definition at line 260 of file HDFEOS5CF.cc.

void EOS5File::Create_Added_Var_NewName_FullPath ( EOS5Type  eos5type,
const string &  eos5_groupname,
const string &  varname,
string &  var_newname,
string &  var_fullpath 
)
throw (Exception
)
protected

Definition at line 3295 of file HDFEOS5CF.cc.

References GRID, OTHERVARS, SWATH, throw1, and ZA.

template<class T >
void EOS5File::Create_Missing_CV ( T *  eos5data,
EOS5CVar EOS5cvar,
const string &  dimname,
EOS5Type  eos5type,
int  num_eos5data 
)
throw (Exception
)
protected

Definition at line 3273 of file HDFEOS5CF.cc.

References CV_NONLATLON_MISS, H5INT32, HDF5CF::Dimension::name, HDF5CF::Dimension::newname, HDF5CFUtil::obtain_string_after_lastslash(), and throw2.

Here is the call graph for this function:

template<class T >
void EOS5File::Create_Unique_DimName ( T *  eos5data,
set< string > &  thisvar_dimname_set,
Dimension dim,
int  num_groups,
EOS5Type  eos5type 
)
throw (Exception
)
protected

Definition at line 1016 of file HDFEOS5CF.cc.

References HDF5CFUtil::obtain_string_after_lastslash(), and throw3.

Here is the call graph for this function:

template<class T >
string EOS5File::Create_Unique_FakeDimName ( T *  eos5data,
EOS5Type  eos5type 
)
throw (Exception
)
protected

Definition at line 1119 of file HDFEOS5CF.cc.

References GRID, SWATH, throw1, and ZA.

template<class T >
void EOS5File::EOS5Handle_General_NameClashing ( set< string > &  objnameset,
vector< T * > &  objvec 
)
throw (Exception
)
protected

Definition at line 2679 of file HDFEOS5CF.cc.

References HDF5CFUtil::gen_unique_name().

Referenced by Handle_DimNameClashing().

Here is the call graph for this function:

void EOS5File::EOS5Handle_nonlatlon_dimcvars ( vector< HE5Var > &  eos5varlist,
EOS5Type  eos5type,
string  groupname,
map< string, string > &  dnamesgeo1dvnames 
)
throw (Exception
)
protected

Definition at line 697 of file HDFEOS5CF.cc.

References HE5Var::dim_list, GRID, HE5Dim::name, HE5Var::name, SWATH, throw1, and ZA.

template<class T >
void EOS5File::EOS5SwathGrid_Set_LatLon_Flags ( T *  eos5gridswath,
vector< HE5Var > &  eos5varlist 
)
throw (Exception
)
protected

Definition at line 628 of file HDFEOS5CF.cc.

References HE5Var::dim_list, HE5Var::name, and throw1.

void EOS5File::Flatten_Obj_Name ( bool  include_attr)
throw (Exception
)
virtual

Flatten the object name for HDF-EOS5 files.

Reimplemented from HDF5CF::File.

Definition at line 2623 of file HDFEOS5CF.cc.

References HDF5CF::File::Flatten_Obj_Name().

Referenced by map_eos5_cfdas(), and map_eos5_cfdds().

Here is the call graph for this function:

string EOS5File::get_CF_string ( string  s)
protectedvirtual

Reimplemented from HDF5CF::File.

Definition at line 121 of file HDFEOS5CF.cc.

References HDF5CF::File::get_CF_string().

Here is the call graph for this function:

void EOS5File::Get_Unique_Name ( set< string > &  nameset,
string &  dimname_candidate 
)
throw (Exception
)
protected

Definition at line 1110 of file HDFEOS5CF.cc.

References HDF5CFUtil::gen_unique_name().

Here is the call graph for this function:

EOS5Type EOS5File::Get_Var_EOS5_Type ( Var var)
throw (Exception
)
protected

Definition at line 812 of file HDFEOS5CF.cc.

References GRID, OTHERVARS, SWATH, and ZA.

Referenced by Remove_MultiDim_LatLon_EOS5CFGrid().

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

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

Definition at line 578 of file HDF5CF.h.

References HDF5CF::File::root_attrs.

Referenced by gen_eos5_cfdas(), and gen_gmh5_cfdas().

const vector<EOS5CVar *>& HDF5CF::EOS5File::getCVars ( ) const
inline

Obtain coordinate variables for HDF-EOS5 products.

Definition at line 893 of file HDF5CF.h.

Referenced by gen_eos5_cfdas(), and gen_eos5_cfdds().

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

Obtain the HDF5 file ID.

Definition at line 559 of file HDF5CF.h.

References HDF5CF::File::fileid.

Referenced by gen_eos5_cfdds(), and gen_gmh5_cfdds().

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

Public interface to obtain all the group info.

Definition at line 584 of file HDF5CF.h.

References HDF5CF::File::groups.

Referenced by gen_eos5_cfdas(), and gen_gmh5_cfdas().

const string& HDF5CF::File::getPath ( ) const
inlineinherited

Obtain the path of the file.

Definition at line 566 of file HDF5CF.h.

References HDF5CF::File::path.

Referenced by gen_eos5_cfdds(), and gen_gmh5_cfdds().

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

Public interface to obtain information of all variables.

Definition at line 572 of file HDF5CF.h.

References HDF5CF::File::vars.

Referenced by gen_eos5_cfdas(), gen_eos5_cfdds(), gen_gmh5_cfdas(), and gen_gmh5_cfdds().

void EOS5File::Handle_Augmented_Grid_CVar ( )
throw (Exception
)
protected

Definition at line 1435 of file HDFEOS5CF.cc.

References GRID, and Handle_Single_Augment_CVar().

Here is the call graph for this function:

void EOS5File::Handle_Coor_Attr ( )
virtual

Handle the coordinates attribute for HDF-EOS5 products.

Implements HDF5CF::File.

Definition at line 3121 of file HDFEOS5CF.cc.

References HDF5CF::File::Add_Str_Attr(), and HDF5CF::File::vars.

Referenced by map_eos5_cfdas().

Here is the call graph for this function:

void EOS5File::Handle_CVar ( )
throw (Exception
)
virtual

Handle coordinate variable for HDF-EOS5 files.

Implements HDF5CF::File.

Definition at line 1269 of file HDFEOS5CF.cc.

References Check_Augmentation_Status(), Handle_Grid_CVar(), Handle_Swath_CVar(), and Handle_Za_CVar().

Referenced by map_eos5_cfdas(), and map_eos5_cfdds().

Here is the call graph for this function:

void EOS5File::Handle_DimNameClashing ( )
throw (Exception
)
virtual

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

Implements HDF5CF::File.

Definition at line 2720 of file HDFEOS5CF.cc.

References EOS5Handle_General_NameClashing(), throw4, and HDF5CF::File::vars.

Referenced by map_eos5_cfdds().

Here is the call graph for this function:

void EOS5File::Handle_EOS5CVar_AttrNameClashing ( )
throw (Exception
)
protected

Definition at line 2666 of file HDFEOS5CF.cc.

References HDF5CF::File::Handle_General_NameClashing().

Here is the call graph for this function:

void EOS5File::Handle_EOS5CVar_NameClashing ( set< string > &  objnameset)
throw (Exception
)
protected

Definition at line 2661 of file HDFEOS5CF.cc.

void EOS5File::Handle_EOS5CVar_Special_Attr ( )
throw (Exception
)
protected

Definition at line 2878 of file HDFEOS5CF.cc.

References HDF5CF::File::groups, H5FSTRING, MLS, HDF5CFDAPUtil::replace_double_quote(), and HDF5CF::File::Retrieve_H5_Attr_Value().

Referenced by Adjust_Attr_Value().

Here is the call graph for this function:

void EOS5File::Handle_EOS5CVar_Unit_Attr ( )
throw (Exception
)
protected
template<class T >
void File::Handle_General_NameClashing ( set< string > &  objnameset,
vector< T * > &  objvec 
)
throw (Exception
)
protectedinherited
void File::Handle_GeneralObj_NameClashing ( bool  include_attr,
set< string > &  objnameset 
)
throw (Exception
)
protectedinherited

Definition at line 1016 of file HDF5CF.cc.

Referenced by HDF5CF::GMFile::Handle_Obj_NameClashing(), and Handle_Obj_NameClashing().

void EOS5File::Handle_Grid_CVar ( bool  is_augmented)
throw (Exception
)
protected

Definition at line 1295 of file HDFEOS5CF.cc.

Referenced by Handle_CVar().

void EOS5File::Handle_Multi_Nonaugment_Grid_CVar ( )
throw (Exception
)
protected
void EOS5File::Handle_NonLatLon_Grid_CVar ( EOS5CFGrid cfgrid,
set< string > &  tempvardimnamelist 
)
throw (Exception
)
protected

Definition at line 1795 of file HDFEOS5CF.cc.

References CV_EXIST, and GRID.

Referenced by Handle_Multi_Nonaugment_Grid_CVar().

void EOS5File::Handle_NonLatLon_Swath_CVar ( EOS5CFSwath cfswath,
set< string > &  tempvardimnamelist 
)
throw (Exception
)
protected

Definition at line 2239 of file HDFEOS5CF.cc.

References CV_EXIST, and SWATH.

void File::Handle_Obj_AttrNameClashing ( )
throw (Exception
)
protectedinherited

Definition at line 939 of file HDF5CF.cc.

References HDF5CF::File::groups, HDF5CF::File::Handle_General_NameClashing(), HDF5CF::File::root_attrs, and HDF5CF::File::vars.

Here is the call graph for this function:

void EOS5File::Handle_Obj_NameClashing ( bool  include_attr)
throw (Exception
)

Handle the object name clashing for HDF-EOS5 products.

Definition at line 2645 of file HDFEOS5CF.cc.

References HDF5CF::File::Handle_GeneralObj_NameClashing().

Referenced by map_eos5_cfdas(), and map_eos5_cfdds().

Here is the call graph for this function:

void File::Handle_RootGroup_NameClashing ( set< string > &  objnameset)
throw (Exception
)
protectedinherited

Definition at line 911 of file HDF5CF.cc.

References HDF5CFUtil::gen_unique_name().

Here is the call graph for this function:

void EOS5File::Handle_Single_1DLatLon_Swath_CVar ( EOS5CFSwath cfswath,
bool  is_augmented 
)
throw (Exception
)
protected

Definition at line 2002 of file HDFEOS5CF.cc.

References CV_EXIST, and SWATH.

void EOS5File::Handle_Single_2DLatLon_Swath_CVar ( EOS5CFSwath cfswath,
bool  is_augmented 
)
throw (Exception
)
protected

Definition at line 2100 of file HDFEOS5CF.cc.

References CV_EXIST, and SWATH.

template<class T >
void EOS5File::Handle_Single_Augment_CVar ( T *  cfeos5data,
EOS5Type  eos5type 
)
throw (Exception
)
protected

Definition at line 1443 of file HDFEOS5CF.cc.

References CV_EXIST, HDF5CFUtil::obtain_string_after_lastslash(), and throw1.

Referenced by Handle_Augmented_Grid_CVar().

Here is the call graph for this function:

void EOS5File::Handle_Single_Nonaugment_Grid_CVar ( EOS5CFGrid cfgrid)
throw (Exception
)
protected

Definition at line 1561 of file HDFEOS5CF.cc.

Referenced by Handle_Multi_Nonaugment_Grid_CVar().

bool EOS5File::Handle_Single_Nonaugment_Grid_CVar_EOS5LatLon ( EOS5CFGrid cfgrid,
set< string > &  tempvardimnamelist 
)
throw (Exception
)
protected
bool EOS5File::Handle_Single_Nonaugment_Grid_CVar_OwnLatLon ( EOS5CFGrid cfgrid,
set< string > &  tempvardimnamelist 
)
throw (Exception
)
protected

Definition at line 1591 of file HDFEOS5CF.cc.

References CV_EXIST, GRID, and HDF5CFUtil::obtain_string_after_lastslash().

Referenced by Handle_Multi_Nonaugment_Grid_CVar().

Here is the call graph for this function:

void EOS5File::Handle_Special_NonLatLon_Swath_CVar ( EOS5CFSwath cfswath,
set< string > &  tempvardimnamelist 
)
throw (Exception
)
protected
void EOS5File::Handle_SpVar ( )
throw (Exception
)
virtual

Handle special variables for HDF-EOS5 files.

Implements HDF5CF::File.

Definition at line 3335 of file HDFEOS5CF.cc.

References CV_EXIST, CV_NONLATLON_MISS, Replace_Var_Info(), TES, and HDF5CF::File::vars.

Referenced by map_eos5_cfdds().

Here is the call graph for this function:

void EOS5File::Handle_SpVar_Attr ( )
throw (Exception
)
virtual

Handle special variables for HDF-EOS5 files.

Implements HDF5CF::File.

Definition at line 3466 of file HDFEOS5CF.cc.

References CV_EXIST, CV_NONLATLON_MISS, and Replace_Var_Attrs().

Referenced by map_eos5_cfdas().

Here is the call graph for this function:

void EOS5File::Handle_Swath_CVar ( bool  isaugmented)
throw (Exception
)
protected

Definition at line 1975 of file HDFEOS5CF.cc.

Referenced by Handle_CVar().

void EOS5File::Handle_Unsupported_Dspace ( )
throw (Exception
)
virtual

Handle unsupported HDF5 dataspaces for HDF-EOS5 products.

Reimplemented from HDF5CF::File.

Definition at line 183 of file HDFEOS5CF.cc.

References HDF5CF::File::Handle_Unsupported_Dspace(), and HDF5CF::File::unsupported_var_dspace.

Referenced by map_eos5_cfdas(), and map_eos5_cfdds().

Here is the call graph for this function:

void EOS5File::Handle_Unsupported_Dtype ( bool  include_attr)
throw (Exception
)
virtual

Handle unsupported HDF5 datatypes for HDF-EOS5 products.

Reimplemented from HDF5CF::File.

Definition at line 156 of file HDFEOS5CF.cc.

References HDF5CFUtil::cf_strict_support_type(), and HDF5CF::File::Handle_Unsupported_Dtype().

Referenced by map_eos5_cfdas(), and map_eos5_cfdds().

Here is the call graph for this function:

void File::Handle_Var_NameClashing ( set< string > &  objnameset)
throw (Exception
)
protectedinherited

Definition at line 906 of file HDF5CF.cc.

void EOS5File::Handle_Za_CVar ( bool  isaugmented)
throw (Exception
)
protected

Definition at line 2419 of file HDFEOS5CF.cc.

References ZA.

Referenced by Handle_CVar().

void File::Insert_One_NameSizeMap_Element2 ( map< string, hsize_t > &  name_to_size,
string  name,
hsize_t  size 
)
throw (Exception
)
protectedinherited

Definition at line 1054 of file HDF5CF.cc.

References throw4.

bool EOS5File::Obtain_Var_Dims ( Var var,
HE5Parser strmeta_info 
)
throw (Exception
)
protected
string EOS5File::Obtain_Var_EOS5Type_GroupName ( Var var,
EOS5Type  eos5type 
)
throw (Exception
)
protected

Definition at line 1146 of file HDFEOS5CF.cc.

References GRID, SWATH, throw2, and ZA.

Referenced by Remove_MultiDim_LatLon_EOS5CFGrid().

void EOS5File::Obtain_Var_NewName ( Var var)
throw (Exception
)
protected

Definition at line 757 of file HDFEOS5CF.cc.

References GRID, OTHERVARS, SWATH, throw1, and ZA.

Referenced by Adjust_Var_NewName_After_Parsing().

void EOS5File::Remove_MultiDim_LatLon_EOS5CFGrid ( )
throw (Exception
)
protected

Definition at line 1497 of file HDFEOS5CF.cc.

References Get_Var_EOS5_Type(), GRID, HE5_GCTP_GEO, Obtain_Var_EOS5Type_GroupName(), OMI, and HDF5CF::File::vars.

Here is the call graph for this function:

void EOS5File::Remove_NegativeSizeDims ( vector< HE5Dim > &  groupdimlist)
throw (Exception
)
protected

Definition at line 244 of file HDFEOS5CF.cc.

void EOS5File::Replace_Var_Attrs ( EOS5CVar src,
EOS5CVar target 
)
protected

Definition at line 3513 of file HDFEOS5CF.cc.

References HDF5CF::File::Replace_Var_Attrs().

Referenced by Handle_SpVar_Attr().

Here is the call graph for this function:

void EOS5File::Replace_Var_Info ( EOS5CVar src,
EOS5CVar target 
)
protected

Definition at line 3505 of file HDFEOS5CF.cc.

References HDF5CF::File::Replace_Var_Info().

Referenced by Handle_SpVar().

Here is the call graph for this function:

void File::Retrieve_H5_Attr_Info ( Attribute attr,
hid_t  obj_id,
const int  j,
bool &  unsup_attr_dtype 
)
throw (Exception
)
protectedinherited

Definition at line 461 of file HDF5CF.cc.

References HDF5CFUtil::cf_strict_support_type(), HDF5CFUtil::H5type_to_H5DAPtype(), NULL, throw1, and throw2.

Here is the call graph for this function:

void EOS5File::Retrieve_H5_Info ( const char *  path,
hid_t  file_id,
bool  include_attr 
)
throw (Exception
)
virtual

Retrieve DDS information from the HDF5 file; a real implementation for HDF-EOS5 products.

Reimplemented from HDF5CF::File.

Definition at line 131 of file HDFEOS5CF.cc.

References HDF5CF::File::Retrieve_H5_Info().

Referenced by map_eos5_cfdas(), and map_eos5_cfdds().

Here is the call graph for this function:

void File::Retrieve_H5_Obj ( hid_t  grp_id,
const char *  gname,
bool  include_attr 
)
throw (Exception
)
protectedinherited
void EOS5File::Retrieve_H5_Supported_Attr_Values ( )
throw (Exception
)
virtual

Retrieve attribute values for the supported HDF5 datatypes for HDF-EOS5 products.

Reimplemented from HDF5CF::File.

Definition at line 138 of file HDFEOS5CF.cc.

References CV_EXIST, CV_MODIFY, HDF5CF::File::Retrieve_H5_Attr_Value(), and HDF5CF::File::Retrieve_H5_Supported_Attr_Values().

Referenced by map_eos5_cfdas().

Here is the call graph for this function:

void File::Retrieve_H5_VarDim ( Var var,
hid_t  dset_id,
const string &  varname,
bool &  unsup_var_dspace 
)
throw (Exception
)
protectedinherited

Definition at line 367 of file HDF5CF.cc.

References throw2.

void File::Retrieve_H5_VarType ( Var var,
hid_t  dset_id,
const string &  varname,
bool &  unsup_var_dtype 
)
throw (Exception
)
protectedinherited

Definition at line 334 of file HDF5CF.cc.

References HDF5CFUtil::cf_strict_support_type(), HDF5CFUtil::H5type_to_H5DAPtype(), and throw2.

Here is the call graph for this function:

void EOS5File::Set_COARDS_Status ( )
throw (Exception
)

Set COARDS flag.

Definition at line 2786 of file HDFEOS5CF.cc.

References HE5_GCTP_GEO.

Referenced by map_eos5_cfdas(), and map_eos5_cfdds().

template<class T >
void EOS5File::Set_NonParse_Var_Dims ( T *  eos5data,
Var var,
map< hsize_t, string > &  dimsizes_to_dimnames,
int  num_groups,
EOS5Type  eos5type 
)
throw (Exception
)
protected

Definition at line 1201 of file HDFEOS5CF.cc.

References throw5.

template<class T >
bool EOS5File::Set_Var_Dims ( T *  eos5data,
Var var,
vector< HE5Var > &  he5var,
const string &  groupname,
int  num_groups,
EOS5Type  eos5type 
)
throw (Exception
)
protected

Definition at line 923 of file HDFEOS5CF.cc.

References HE5Var::dim_list, GRID, HE5Dim::name, HE5Var::name, HE5Dim::size, SWATH, throw1, throw2, and ZA.

Member Data Documentation

int HDF5CF::File::addeddimindex
protectedinherited

Definition at line 657 of file HDF5CF.h.

map<string,hsize_t> HDF5CF::File::dimname_to_dimsize
protectedinherited
map<hsize_t,string> HDF5CF::File::dimsize_to_fakedimname
protectedinherited

Handle added dimension names.

Definition at line 656 of file HDF5CF.h.

hid_t HDF5CF::File::fileid
protectedinherited

Definition at line 635 of file HDF5CF.h.

Referenced by HDF5CF::File::getFileID(), and HDF5CF::File::~File().

string HDF5CF::File::path
protectedinherited

Definition at line 634 of file HDF5CF.h.

Referenced by HDF5CF::File::getPath().

vector< Attribute * > HDF5CF::File::root_attrs
protectedinherited
hid_t HDF5CF::File::rootid
protectedinherited

Definition at line 636 of file HDF5CF.h.

Referenced by HDF5CF::File::~File().

bool HDF5CF::File::unsupported_attr_dtype
protectedinherited

Definition at line 648 of file HDF5CF.h.

bool HDF5CF::File::unsupported_var_dspace
protectedinherited
bool HDF5CF::File::unsupported_var_dtype
protectedinherited

Definition at line 647 of file HDF5CF.h.

vector< Var * > HDF5CF::File::vars
protectedinherited

Var vectors.

Definition at line 639 of file HDF5CF.h.

Referenced by HDF5CF::GMFile::Add_Aqu_Attrs(), HDF5CF::GMFile::Add_Dim_Name(), HDF5CF::GMFile::Add_Dim_Name_ACOS_L2S(), HDF5CF::GMFile::Add_Dim_Name_Aqu_L3(), HDF5CF::GMFile::Add_Dim_Name_Dimscale_General_Product(), HDF5CF::GMFile::Add_Dim_Name_GPM(), HDF5CF::GMFile::Add_Dim_Name_Mea_Ozonel3z(), HDF5CF::GMFile::Add_Dim_Name_Mea_SeaWiFS(), HDF5CF::GMFile::Add_Dim_Name_SMAP(), HDF5CF::GMFile::Add_GPM_Attrs(), HDF5CF::GMFile::Add_SeaWiFS_Attrs(), Adjust_Attr_Name(), Adjust_Attr_Value(), HDF5CF::GMFile::Adjust_Dim_Name(), Adjust_Dim_Name(), HDF5CF::GMFile::Adjust_GPM_L3_Obj_Name(), HDF5CF::GMFile::Adjust_Mea_Ozone_Obj_Name(), HDF5CF::GMFile::Adjust_Obj_Name(), Adjust_SharedLatLon_Grid_Var_Dim_Name(), Adjust_Var_Dim_NewName_Before_Flattening(), Adjust_Var_NewName_After_Parsing(), Check_Augmentation_Status(), HDF5CF::GMFile::Check_General_Product_Pattern(), HDF5CF::File::getVars(), HDF5CF::GMFile::Handle_Coor_Attr(), Handle_Coor_Attr(), HDF5CF::GMFile::Handle_CVar_Aqu_L3(), HDF5CF::GMFile::Handle_CVar_Dimscale_General_Product(), HDF5CF::GMFile::Handle_CVar_GPM_L1(), HDF5CF::GMFile::Handle_CVar_Mea_Ozone(), HDF5CF::GMFile::Handle_CVar_Mea_SeaWiFS(), HDF5CF::GMFile::Handle_CVar_OBPG_L3(), HDF5CF::GMFile::Handle_CVar_SMAP(), HDF5CF::GMFile::Handle_DimNameClashing(), Handle_DimNameClashing(), HDF5CF::GMFile::Handle_GPM_l1_Coor_Attr(), HDF5CF::File::Handle_Obj_AttrNameClashing(), HDF5CF::GMFile::Handle_SpVar(), Handle_SpVar(), HDF5CF::GMFile::Handle_SpVar_ACOS(), HDF5CF::File::Handle_Unsupported_Dspace(), Remove_MultiDim_LatLon_EOS5CFGrid(), HDF5CF::File::Retrieve_H5_Supported_Attr_Values(), and HDF5CF::File::~File().


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