OPeNDAP Hyrax Back End Server (BES)  Updated for version 3.8.3
HDFSP::File Class Reference

This class retrieves all information from an HDF4 file. It is a container for SDS and Vdata. More...

#include <HDFSP.h>

Collaboration diagram for HDFSP::File:
Collaboration graph

Public Member Functions

bool Check_update_special (const std::string &gridname) throw (Exception)
 
const std::string & getPath () const
 Obtain the path of the file. More...
 
SDgetSD () const
 Public interface to Obtain SD. More...
 
SPType getSPType () const
 Obtain special HDF4 product type. More...
 
const std::vector< VDATA * > & getVDATAs () const
 Public interface to Obtain Vdata. More...
 
const std::vector< AttrContainer * > & getVgattrs () const
 Get attributes for all vgroups. More...
 
void Handle_AIRS_L23 () throw (Exception)
 
bool Has_Dim_NoScale_Field () const
 This file has a field that is a SDS dimension but no dimension scale. More...
 
void Prepare () throw (Exception)
 The main step to make HDF4 SDS objects CF-complaint. All dimension(coordinate variables) information need to be ready. All special arrangements need to be done in this step. More...
 
 ~File ()
 

Static Public Member Functions

static FileRead (const char *path, int32 sdid, int32 fileid) throw (Exception)
 Retrieve SDS and Vdata information from the HDF4 file. More...
 
static FileRead_Hybrid (const char *path, int32 sdid, int32 fileid) throw (Exception)
 Retrieve SDS and Vdata information from the hybrid HDF-EOS file. Currently we only support the access of additional SDS objects. More...
 

Protected Member Functions

void CheckSDType () throw (Exception)
 This method will check if the HDF4 file is one of TRMM or OBPG products we supported. More...
 
void create_sds_dim_name_list ()
 Create the new dimension name set and the dimension name to size map. More...
 
 File (const char *path)
 
void handle_sds_coords (bool &COARDFLAG, std::string &lldimname1, std::string &lldimname2) throw (Exception)
 Create "coordinates", "units" CF attributes. More...
 
void handle_sds_fakedim_names () throw (Exception)
 Check name clashing for fields. Borrowed from HDFEOS.cc, unused. bool check_field_name_clashing (bool bUseDimNameMatching) const;. More...
 
void handle_sds_final_dim_names () throw (Exception)
 Create the final CF-compliant dimension name list for each field. More...
 
void handle_sds_missing_fields ()
 Add the missing coordinate variables based on the corrected dimension name list. More...
 
void handle_sds_names (bool &COARDFLAG, std::string &lldimname1, std::string &lldimname2) throw (Exception)
 Create the final CF-compliant field name list. More...
 
void handle_vdata () throw (Exception)
 Handle Vdata. More...
 
void InsertOrigFieldPath_ReadVgVdata () throw (Exception)
 The full path of SDS and Vdata will be obtained. More...
 
void obtain_path (int32 file_id, int32 sd_id, char *full_path, int32 pobj_ref) throw (Exception)
 The internal function used by InsertOrigFieldPath_ReadVgVdata. More...
 
bool Obtain_TRMM_V7_latlon_name (const SDField *sdfield, const int latsize, const int lonsize, std::string &latname, std::string &lonname) throw (Exception)
 
void Obtain_TRMML3S_V7_latlon_size (int &latsize, int &lonsize) throw (Exception)
 
void obtain_vdata_path (int32 file_id, char *full_path, int32 pobj_ref) throw (Exception)
 The internal function used to obtain the path for hybrid non-lone vdata. More...
 
void PrepareCERAVGSYN () throw (Exception)
 Special method to prepare CERES AVG (CER_AVG_???) and CERES SYN(CER_SYN_???) latitude and longitude information. Latitude and longitude are provided; some redundant CO-Latitude and longitude are removed from the final DDS. More...
 
void PrepareCERES4IG () throw (Exception)
 Special method to prepare CERES ES4 (CER_ES4_???) and CERES ISCCP GEO(CER_ISCCP__???GEO) latitude and longitude information. Essentially the lat/lon need to be condensed to 1-D for the geographic projection. More...
 
void PrepareCERSAVGID () throw (Exception)
 Special method to prepare CERES SAVG (CER_SAVG_???) and CERES ISCCP DAYLIKE(CER_ISCCP__???DAYLIKE) latitude and longitude information. Essentially nested CERES 2-d lat/lon need to be provided. https://eosweb.larc.nasa.gov/sites/default/files/project/ceres/quality_summaries/srbavg_ed2d/nestedgrid.pdf. More...
 
void PrepareCERZAVG () throw (Exception)
 Special method to prepare CERES Zonal Average latitude and longitude information. More...
 
void PrepareMODISARNSS () throw (Exception)
 MODISARNSS is a special MODIS product saved as pure HDF4 files. Dimension names of different fields need to be changed to be consistent with lat/lon. More...
 
void PrepareOBPGL2 () throw (Exception)
 Special method to prepare OBPG Level 2 latitude and longitude information. The latitude and longitude need to be interpolated. More...
 
void PrepareOBPGL3 () throw (Exception)
 Special method to prepare OBPG Level 3 latitude and longitude information. The latitude and longitude are calculated by using the attributes. More...
 
void PrepareOTHERHDF () throw (Exception)
 We still provide a hook for other HDF data product although no CF compliant is followed. More...
 
void PrepareTRMML2_V6 () throw (Exception)
 Latitude and longitude are stored in one array(geolocation). Need to separate. More...
 
void PrepareTRMML2_V7 () throw (Exception)
 Latitude and longitude are stored in different fields. Need to separate. More...
 
void PrepareTRMML3A_V6 () throw (Exception)
 Special method to prepare TRMM Level 3A46 latitude and longitude information. More...
 
void PrepareTRMML3B_V6 () throw (Exception)
 Special method to prepare TRMM Level 3B latitude and longitude information. More...
 
void PrepareTRMML3C_V6 () throw (Exception)
 Special method to prepare TRMM Level 3 CSH latitude,longitude and Height information. More...
 
void PrepareTRMML3M_V7 () throw (Exception)
 Special method to prepare TRMM multiple grid Level 3 geolocation fields(latitude,longitude,etc) information. More...
 
void PrepareTRMML3S_V7 () throw (Exception)
 Special method to prepare TRMM single grid Level 3 geolocation fields(latitude,longitude,etc) information. More...
 
void ReadHybridNonLoneVdatas (File *) throw (Exception)
 Handle non-attribute non-lone vdatas. Note: this function is only used for handling hybrid Vdata functions. More...
 
void ReadLoneVdatas (File *) throw (Exception)
 Handle non-attribute lone vdatas. More...
 
void ReadVgattrs (int32 vgroup_id, char *fullpath) throw (Exception)
 Obtain vgroup attributes. More...
 

Protected Attributes

std::string path
 The absolute path of the file. More...
 
SDsd
 Pointer to the SD instance. There is only one SD instance in an HDF4 file. More...
 
std::vector< VDATA * > vds
 Vdata objects in this file. More...
 
std::vector< AttrContainer * > vg_attrs
 Vgroup attribute information. See the description of the class AttrContainer. More...
 

Detailed Description

This class retrieves all information from an HDF4 file. It is a container for SDS and Vdata.

Definition at line 727 of file HDFSP.h.

Constructor & Destructor Documentation

File::~File ( )

Definition at line 101 of file HDFSP.cc.

References NULL.

HDFSP::File::File ( const char *  path)
inlineprotected

Definition at line 792 of file HDFSP.h.

Member Function Documentation

bool File::Check_update_special ( const std::string &  gridname)
throw (Exception
)

Definition at line 825 of file HDFSP.cc.

void File::CheckSDType ( )
throw (Exception
)
protected

This method will check if the HDF4 file is one of TRMM or OBPG products we supported.

Definition at line 1249 of file HDFSP.cc.

References MODISARNSS, OBPGL2, OBPGL3, OTHERHDF, TRMML2_V6, TRMML2_V7, TRMML3A_V6, TRMML3B_V6, TRMML3C_V6, TRMML3M_V7, and TRMML3S_V7.

Referenced by Prepare().

void File::create_sds_dim_name_list ( )
protected

Create the new dimension name set and the dimension name to size map.

Definition at line 3558 of file HDFSP.cc.

References HDFSP::SD::fulldimnamelist, HDFSP::SD::n1dimnamelist, sd, and HDFSP::SD::sdfields.

Referenced by Prepare().

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

Obtain the path of the file.

Definition at line 766 of file HDFSP.h.

References path.

Referenced by HDFCFUtil::add_missing_cf_attrs(), and PrepareTRMML2_V7().

const std::vector< VDATA * >& HDFSP::File::getVDATAs ( ) const
inline

Public interface to Obtain Vdata.

Definition at line 778 of file HDFSP.h.

References vds.

Referenced by HDFCFUtil::handle_vdata_attrs_with_desc_key(), and read_dds_hdfsp().

const std::vector<AttrContainer *>& HDFSP::File::getVgattrs ( ) const
inline

Get attributes for all vgroups.

Definition at line 784 of file HDFSP.h.

References vg_attrs.

Referenced by read_das_hdfsp().

void File::Handle_AIRS_L23 ( )
throw (Exception
)
void File::handle_sds_coords ( bool &  COARDFLAG,
std::string &  lldimname1,
std::string &  lldimname2 
)
throw (Exception
)
protected

Create "coordinates", "units" CF attributes.

Definition at line 3843 of file HDFSP.cc.

References HDFSP::SD::dimcvarlist, sd, HDFSP::SD::sdfields, and throw3.

Referenced by Prepare().

void File::handle_sds_fakedim_names ( )
throw (Exception
)
protected

Check name clashing for fields. Borrowed from HDFEOS.cc, unused. bool check_field_name_clashing (bool bUseDimNameMatching) const;.

Handle SDS fakedim names: make the dimensions with the same dimension size share the same dimension name. In this way, we can reduce many fakedims.

Definition at line 3483 of file HDFSP.cc.

References OTHERHDF, sd, HDFSP::SD::sdfields, and throw5.

Referenced by Prepare().

void File::handle_sds_final_dim_names ( )
throw (Exception
)
protected

Create the final CF-compliant dimension name list for each field.

Handle dimension name clashings

Definition at line 3617 of file HDFSP.cc.

References HDFSP::SD::fulldimnamelist, HDFCFUtil::get_CF_string(), HDFCFUtil::Handle_NameClashing(), HDFCFUtil::insert_map(), HDFSP::SD::n2dimnamelist, sd, HDFSP::SD::sdfields, and throw5.

Referenced by Prepare().

Here is the call graph for this function:

void File::handle_sds_missing_fields ( )
protected

Add the missing coordinate variables based on the corrected dimension name list.

Definition at line 3581 of file HDFSP.cc.

References HDFSP::SDField::correcteddims, HDFSP::SDField::dims, HDFSP::SDField::fieldtype, HDFSP::SD::n1dimnamelist, HDFSP::Field::name, HDFSP::Field::newname, HDFSP::SD::nonmisscvdimnamelist, HDFSP::Field::rank, sd, HDFSP::SD::sdfields, and HDFSP::Field::type.

Referenced by Prepare().

void File::handle_sds_names ( bool &  COARDFLAG,
std::string &  lldimname1,
std::string &  lldimname2 
)
throw (Exception
)
protected

Create the final CF-compliant field name list.

Definition at line 3665 of file HDFSP.cc.

References CER_AVG, CER_CDAY, CER_CGEO, CER_ES4, CER_SRB, CER_SYN, CER_ZAVG, HDFCFUtil::check_beskeys(), HDFSP::SD::dimcvarlist, HDFCFUtil::get_CF_string(), HDFCFUtil::Handle_NameClashing(), HDFCFUtil::insert_map(), OTHERHDF, sd, HDFSP::SD::sdfields, and throw3.

Referenced by Prepare().

Here is the call graph for this function:

void File::handle_vdata ( )
throw (Exception
)
protected

Handle Vdata.

Definition at line 3926 of file HDFSP.cc.

References HDFCFUtil::check_beskeys(), HDFCFUtil::Handle_NameClashing(), and vds.

Referenced by Prepare().

Here is the call graph for this function:

bool HDFSP::File::Has_Dim_NoScale_Field ( ) const
inline

This file has a field that is a SDS dimension but no dimension scale.

Definition at line 757 of file HDFSP.h.

Referenced by HDFCFUtil::handle_otherhdf_special_attrs(), read_das_hdfsp(), and read_dds_hdfsp().

void File::InsertOrigFieldPath_ReadVgVdata ( )
throw (Exception
)
protected

The full path of SDS and Vdata will be obtained.

Definition at line 2649 of file HDFSP.cc.

References _BACK_SLASH, _HDF_CHK_TBL_CLASS, free(), HDFCFUtil::get_CF_string(), HDFSP::VDATA::getFields(), HDFSP::VDATA::getTreatAsAttrFlag(), malloc(), MAX_FULL_PATH_LEN, HDFSP::VDATA::name, HDFSP::VDATA::newname, NULL, HDFSP::VDATA::Read(), throw1, throw3, throw5, and TRUE.

Referenced by Prepare().

Here is the call graph for this function:

void File::obtain_path ( int32  file_id,
int32  sd_id,
char *  full_path,
int32  pobj_ref 
)
throw (Exception
)
protected

The internal function used by InsertOrigFieldPath_ReadVgVdata.

Definition at line 2974 of file HDFSP.cc.

References _BACK_SLASH, _HDF_CHK_TBL_CLASS, free(), HDFCFUtil::get_CF_string(), HDFSP::VDATA::getFields(), HDFSP::VDATA::getTreatAsAttrFlag(), malloc(), MAX_FULL_PATH_LEN, HDFSP::VDATA::name, HDFSP::VDATA::newname, NULL, HDFSP::VDATA::Read(), throw1, throw3, and TRUE.

Here is the call graph for this function:

bool File::Obtain_TRMM_V7_latlon_name ( const SDField sdfield,
const int  latsize,
const int  lonsize,
std::string &  latname,
std::string &  lonname 
)
throw (Exception
)
protected

Definition at line 4155 of file HDFSP.cc.

Referenced by PrepareTRMML3M_V7(), and PrepareTRMML3S_V7().

void File::Obtain_TRMML3S_V7_latlon_size ( int &  latsize,
int &  lonsize 
)
throw (Exception
)
protected

Definition at line 4134 of file HDFSP.cc.

References HDFCFUtil::parser_trmm_v7_gridheader().

Referenced by PrepareTRMML3S_V7().

Here is the call graph for this function:

void File::obtain_vdata_path ( int32  file_id,
char *  full_path,
int32  pobj_ref 
)
throw (Exception
)
protected

The internal function used to obtain the path for hybrid non-lone vdata.

Definition at line 3277 of file HDFSP.cc.

References _BACK_SLASH, _HDF_CHK_TBL_CLASS, free(), HDFCFUtil::get_CF_string(), HDFSP::VDATA::getFields(), HDFSP::VDATA::getTreatAsAttrFlag(), malloc(), MAX_FULL_PATH_LEN, HDFSP::VDATA::name, HDFSP::VDATA::newname, NULL, throw1, throw3, and TRUE.

Here is the call graph for this function:

void File::PrepareCERAVGSYN ( )
throw (Exception
)
protected

Special method to prepare CERES AVG (CER_AVG_???) and CERES SYN(CER_SYN_???) latitude and longitude information. Latitude and longitude are provided; some redundant CO-Latitude and longitude are removed from the final DDS.

Definition at line 5573 of file HDFSP.cc.

References HDFSP::SD::nonmisscvdimnamelist, sd, HDFSP::SD::sdfields, and throw3.

Referenced by Prepare().

void File::PrepareCERES4IG ( )
throw (Exception
)
protected

Special method to prepare CERES ES4 (CER_ES4_???) and CERES ISCCP GEO(CER_ISCCP__???GEO) latitude and longitude information. Essentially the lat/lon need to be condensed to 1-D for the geographic projection.

Definition at line 5652 of file HDFSP.cc.

References HDFSP::SD::nonmisscvdimnamelist, sd, and HDFSP::SD::sdfields.

Referenced by Prepare().

void File::PrepareCERSAVGID ( )
throw (Exception
)
protected

Special method to prepare CERES SAVG (CER_SAVG_???) and CERES ISCCP DAYLIKE(CER_ISCCP__???DAYLIKE) latitude and longitude information. Essentially nested CERES 2-d lat/lon need to be provided. https://eosweb.larc.nasa.gov/sites/default/files/project/ceres/quality_summaries/srbavg_ed2d/nestedgrid.pdf.

Definition at line 5785 of file HDFSP.cc.

References CER_CDAY, CER_SRB, HDFSP::SDField::correcteddims, HDFSP::SDField::dims, HDFSP::SDField::fieldtype, HDFSP::Field::name, HDFSP::Field::newname, HDFSP::SD::nonmisscvdimnamelist, HDFSP::Field::rank, sd, HDFSP::SD::sdfields, and HDFSP::Field::type.

Referenced by Prepare().

void File::PrepareCERZAVG ( )
throw (Exception
)
protected

Special method to prepare CERES Zonal Average latitude and longitude information.

Definition at line 5928 of file HDFSP.cc.

References HDFSP::SDField::correcteddims, HDFSP::SDField::dims, HDFSP::SDField::fieldtype, HDFSP::Field::name, HDFSP::Field::newname, HDFSP::SD::nonmisscvdimnamelist, HDFSP::Field::rank, sd, HDFSP::SD::sdfields, and HDFSP::Field::type.

Referenced by Prepare().

void File::PrepareMODISARNSS ( )
throw (Exception
)
protected

MODISARNSS is a special MODIS product saved as pure HDF4 files. Dimension names of different fields need to be changed to be consistent with lat/lon.

Definition at line 5979 of file HDFSP.cc.

References if(), HDFSP::SD::nonmisscvdimnamelist, sd, and HDFSP::SD::sdfields.

Referenced by Prepare().

Here is the call graph for this function:

void File::PrepareOBPGL2 ( )
throw (Exception
)
protected

Special method to prepare OBPG Level 2 latitude and longitude information. The latitude and longitude need to be interpolated.

Definition at line 5364 of file HDFSP.cc.

References HDFSP::SD::getAttributes(), if(), HDFSP::SD::nonmisscvdimnamelist, sd, HDFSP::SD::sdfields, throw1, and throw3.

Referenced by Prepare().

Here is the call graph for this function:

void File::PrepareOBPGL3 ( )
throw (Exception
)
protected

Special method to prepare OBPG Level 3 latitude and longitude information. The latitude and longitude are calculated by using the attributes.

Definition at line 5449 of file HDFSP.cc.

References HDFSP::SDField::correcteddims, HDFSP::SDField::dims, HDFSP::SDField::fieldtype, HDFSP::SD::getAttributes(), if(), HDFSP::Field::name, HDFSP::Field::newname, HDFSP::SD::nonmisscvdimnamelist, HDFSP::Field::rank, sd, HDFSP::SD::sdfields, throw3, and HDFSP::Field::type.

Referenced by Prepare().

Here is the call graph for this function:

void File::PrepareOTHERHDF ( )
throw (Exception
)
protected

We still provide a hook for other HDF data product although no CF compliant is followed.

Definition at line 6031 of file HDFSP.cc.

References HDFSP::SD::getAttributes(), HDFCFUtil::insert_map(), HDFSP::SD::nonmisscvdimnamelist, path, sd, HDFSP::SD::sdfields, and throw2.

Referenced by Prepare().

Here is the call graph for this function:

void File::PrepareTRMML2_V6 ( )
throw (Exception
)
protected

Latitude and longitude are stored in one array(geolocation). Need to separate.

Special method to prepare TRMM Level 2 latitude and longitude information. Latitude and longitude are stored in one array(geolocation). Need to separate.

Definition at line 4803 of file HDFSP.cc.

References HDFSP::SDField::correcteddims, HDFSP::SDField::dims, HDFSP::SDField::fieldref, HDFSP::SDField::fieldtype, HDFSP::Field::name, HDFSP::Field::newname, HDFSP::SD::nonmisscvdimnamelist, NULL, HDFSP::Field::rank, HDFSP::SDField::rootfieldname, sd, HDFSP::SD::sdfields, and HDFSP::Field::type.

Referenced by Prepare().

void File::PrepareTRMML2_V7 ( )
throw (Exception
)
protected

Latitude and longitude are stored in different fields. Need to separate.

Definition at line 4179 of file HDFSP.cc.

References HDFSP::SDField::correcteddims, HDFSP::SDField::dims, HDFSP::SDField::fieldtype, getPath(), HDFSP::Field::name, HDFSP::Field::newname, HDFSP::SD::nonmisscvdimnamelist, NULL, HDFSP::Field::rank, sd, HDFSP::SD::sdfields, and HDFSP::Field::type.

Referenced by Prepare().

Here is the call graph for this function:

void File::PrepareTRMML3A_V6 ( )
throw (Exception
)
protected

Special method to prepare TRMM Level 3A46 latitude and longitude information.

Definition at line 5051 of file HDFSP.cc.

References HDFSP::SDField::correcteddims, HDFSP::SDField::dims, HDFSP::SDField::fieldtype, HDFSP::Field::getName(), if(), HDFSP::Field::name, HDFSP::Field::newname, HDFSP::SD::nonmisscvdimnamelist, NULL, HDFSP::Field::rank, sd, HDFSP::SD::sdfields, throw5, and HDFSP::Field::type.

Referenced by Prepare().

Here is the call graph for this function:

void File::PrepareTRMML3B_V6 ( )
throw (Exception
)
protected

Special method to prepare TRMM Level 3B latitude and longitude information.

Definition at line 4947 of file HDFSP.cc.

References HDFSP::SDField::correcteddims, HDFSP::SDField::dims, HDFSP::SDField::fieldtype, HDFSP::Field::name, HDFSP::Field::newname, HDFSP::SD::nonmisscvdimnamelist, NULL, HDFSP::Field::rank, sd, HDFSP::SD::sdfields, throw5, and HDFSP::Field::type.

Referenced by Prepare().

void File::PrepareTRMML3C_V6 ( )
throw (Exception
)
protected

Special method to prepare TRMM Level 3 CSH latitude,longitude and Height information.

Definition at line 5214 of file HDFSP.cc.

References HDFSP::SDField::correcteddims, HDFSP::SDField::dims, HDFSP::SDField::fieldtype, HDFSP::Field::getName(), HDFSP::Field::name, HDFSP::Field::newname, HDFSP::SD::nonmisscvdimnamelist, NULL, HDFSP::Field::rank, sd, HDFSP::SD::sdfields, throw1, throw5, and HDFSP::Field::type.

Referenced by Prepare().

Here is the call graph for this function:

void File::PrepareTRMML3M_V7 ( )
throw (Exception
)
protected

Special method to prepare TRMM multiple grid Level 3 geolocation fields(latitude,longitude,etc) information.

Definition at line 4660 of file HDFSP.cc.

References HDFSP::SDField::correcteddims, HDFSP::SDField::dims, HDFSP::SDField::fieldref, HDFSP::SDField::fieldtype, following, HDFSP::SD::getAttributes(), HDFSP::Field::name, HDFSP::Field::newname, HDFSP::SD::nonmisscvdimnamelist, Obtain_TRMM_V7_latlon_name(), HDFCFUtil::parser_trmm_v7_gridheader(), path, HDFSP::Field::rank, sd, HDFSP::SD::sdfields, and HDFSP::Field::type.

Referenced by Prepare().

Here is the call graph for this function:

void File::PrepareTRMML3S_V7 ( )
throw (Exception
)
protected

Special method to prepare TRMM single grid Level 3 geolocation fields(latitude,longitude,etc) information.

Definition at line 4328 of file HDFSP.cc.

References HDFSP::SDField::correcteddims, HDFSP::SDField::dims, HDFSP::SDField::fieldtype, HDFSP::Field::name, HDFSP::Field::newname, HDFSP::SD::nonmisscvdimnamelist, NULL, Obtain_TRMM_V7_latlon_name(), Obtain_TRMML3S_V7_latlon_size(), path, HDFSP::Field::rank, sd, HDFSP::SD::sdfields, and HDFSP::Field::type.

Referenced by Prepare().

Here is the call graph for this function:

File * File::Read ( const char *  path,
int32  sdid,
int32  fileid 
)
throw (Exception
)
static

Retrieve SDS and Vdata information from the HDF4 file.

Definition at line 196 of file HDFSP.cc.

References path, HDFSP::SD::Read(), ReadLoneVdatas(), sd, and throw2.

Referenced by read_das_hdfsp(), read_das_special_eos2(), and read_dds_hdfsp().

Here is the call graph for this function:

File * File::Read_Hybrid ( const char *  path,
int32  sdid,
int32  fileid 
)
throw (Exception
)
static

Retrieve SDS and Vdata information from the hybrid HDF-EOS file. Currently we only support the access of additional SDS objects.

Definition at line 249 of file HDFSP.cc.

References path, HDFSP::SD::Read_Hybrid(), ReadHybridNonLoneVdatas(), ReadLoneVdatas(), sd, and throw2.

Here is the call graph for this function:

void File::ReadHybridNonLoneVdatas ( File file)
throw (Exception
)
protected

Handle non-attribute non-lone vdatas. Note: this function is only used for handling hybrid Vdata functions.

Definition at line 527 of file HDFSP.cc.

References _BACK_SLASH, _HDF_CHK_TBL_CLASS, free(), HDFCFUtil::get_CF_string(), HDFSP::VDATA::getFields(), HDFSP::VDATA::getTreatAsAttrFlag(), malloc(), MAX_FULL_PATH_LEN, HDFSP::VDATA::name, HDFSP::VDATA::newname, NULL, HDFSP::VDATA::Read(), throw1, throw2, throw3, throw5, and TRUE.

Referenced by Read_Hybrid().

Here is the call graph for this function:

void File::ReadVgattrs ( int32  vgroup_id,
char *  fullpath 
)
throw (Exception
)
protected

Member Data Documentation

std::string HDFSP::File::path
protected

The absolute path of the file.

Definition at line 800 of file HDFSP.h.

Referenced by getPath(), Handle_AIRS_L23(), PrepareOTHERHDF(), PrepareTRMML3M_V7(), PrepareTRMML3S_V7(), Read(), and Read_Hybrid().

std::vector< VDATA * > HDFSP::File::vds
protected

Vdata objects in this file.

Definition at line 806 of file HDFSP.h.

Referenced by getVDATAs(), and handle_vdata().

std::vector<AttrContainer *> HDFSP::File::vg_attrs
protected

Vgroup attribute information. See the description of the class AttrContainer.

Definition at line 809 of file HDFSP.h.

Referenced by getVgattrs().


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