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

This class retrieves all SDS objects and SD file attributes. More...

#include <HDFSP.h>

Collaboration diagram for HDFSP::SD:
Collaboration graph

Public Member Functions

const std::vector< Attribute * > & getAttributes () const
 Public interface to obtain the SD(file) attributes. More...
 
const std::vector< SDField * > & getFields () const
 Public interface to obtain information of all SDS vectors(objects). More...
 
const std::string & getPath () const
 Retrieve the absolute path of the file(full file name). More...
 
void obtain_noneos2_sds_path (int32, char *, int32) throw (Exception)
 Obtain SDS path, this is like a clone of obtain_path in File class, except the Vdata and some minor parts. More...
 
 ~SD ()
 Destructor. More...
 

Static Public Member Functions

static SDRead (int32 sdfileid, int32 hfileid) throw (Exception)
 Read the information of all SDS objects from the HDF4 file. More...
 
static SDRead_Hybrid (int32 sdfileid, int32 hfileid) throw (Exception)
 Read the information of all hybrid SDS objects from the HDF4 file. More...
 

Protected Member Functions

 SD (int32 sdfileid, int32 hfileid)
 

Protected Attributes

std::vector< Attribute * > attrs
 SD attributes stored in vectors. More...
 
std::map< std::string, std::string > dimcvarlist
 dimension name to coordinate variable name list: the key list to generate CF "coordinates" attributes. More...
 
std::set< std::string > fulldimnamelist
 Full dimension name list set. More...
 
std::map< std::string, int32 > n1dimnamelist
 Unique dimension name to its size map, may be replaced in the current implementation. Still leave it here for potential fakeDim handling in the future. More...
 
std::map< std::string, std::string > n2dimnamelist
 Original dimension name to corrected dimension name map. More...
 
std::set< std::string > nonmisscvdimnamelist
 This set stores non-missing coordinate variable dimension names. Many third dimensions of HDF4 files have to be treated as missing coordinate variables. But latitude and longitude's corresponding dimensions are normally provided in the file. So this set is used to exclude these dimensions when creating the corresponding missing fields. More...
 
std::string path
 The full path of the file(file name). More...
 
std::map< int32, int > refindexlist
 SDS reference number to index map, use to quickly obtain the SDS id. More...
 
std::vector< SDField * > sdfields
 SDS objects stored in vectors. More...
 
std::list< int32 > sds_ref_list
 SDS reference number list. More...
 

Friends

class File
 

Detailed Description

This class retrieves all SDS objects and SD file attributes.

Definition at line 556 of file HDFSP.h.

Constructor & Destructor Documentation

SD::~SD ( )

Destructor.

Definition at line 146 of file HDFSP.cc.

HDFSP::SD::SD ( int32  sdfileid,
int32  hfileid 
)
inlineprotected

Definition at line 592 of file HDFSP.h.

Member Function Documentation

const std::vector< Attribute * >& HDFSP::SD::getAttributes ( ) const
inline
const std::vector< SDField * >& HDFSP::SD::getFields ( ) const
inline
const std::string& HDFSP::SD::getPath ( ) const
inline

Retrieve the absolute path of the file(full file name).

Definition at line 567 of file HDFSP.h.

References path.

void SD::obtain_noneos2_sds_path ( int32  file_id,
char *  full_path,
int32  pobj_ref 
)
throw (Exception
)

Obtain SDS path, this is like a clone of obtain_path in File class, except the Vdata and some minor parts.

Definition at line 3179 of file HDFSP.cc.

References _BACK_SLASH, free(), malloc(), MAX_FULL_PATH_LEN, NULL, throw1, throw3, and TRUE.

Referenced by Read_Hybrid().

Here is the call graph for this function:

Friends And Related Function Documentation

friend class File
friend

Definition at line 638 of file HDFSP.h.

Member Data Documentation

std::vector< Attribute * > HDFSP::SD::attrs
protected

SD attributes stored in vectors.

Definition at line 606 of file HDFSP.h.

Referenced by getAttributes(), and Read().

std::map< std::string, std::string > HDFSP::SD::dimcvarlist
protected

dimension name to coordinate variable name list: the key list to generate CF "coordinates" attributes.

Definition at line 630 of file HDFSP.h.

Referenced by HDFSP::File::handle_sds_coords(), and HDFSP::File::handle_sds_names().

std::set< std::string > HDFSP::SD::fulldimnamelist
protected

Full dimension name list set.

Definition at line 622 of file HDFSP.h.

Referenced by HDFSP::File::create_sds_dim_name_list(), and HDFSP::File::handle_sds_final_dim_names().

std::map< std::string, int32 > HDFSP::SD::n1dimnamelist
protected

Unique dimension name to its size map, may be replaced in the current implementation. Still leave it here for potential fakeDim handling in the future.

Definition at line 616 of file HDFSP.h.

Referenced by HDFSP::File::create_sds_dim_name_list(), and HDFSP::File::handle_sds_missing_fields().

std::map< std::string, std::string > HDFSP::SD::n2dimnamelist
protected

Original dimension name to corrected dimension name map.

Definition at line 619 of file HDFSP.h.

Referenced by HDFSP::File::handle_sds_final_dim_names().

std::set< std::string > HDFSP::SD::nonmisscvdimnamelist
protected

This set stores non-missing coordinate variable dimension names. Many third dimensions of HDF4 files have to be treated as missing coordinate variables. But latitude and longitude's corresponding dimensions are normally provided in the file. So this set is used to exclude these dimensions when creating the corresponding missing fields.

Definition at line 627 of file HDFSP.h.

Referenced by HDFSP::File::handle_sds_missing_fields(), HDFSP::File::PrepareCERAVGSYN(), HDFSP::File::PrepareCERES4IG(), HDFSP::File::PrepareCERSAVGID(), HDFSP::File::PrepareCERZAVG(), HDFSP::File::PrepareMODISARNSS(), HDFSP::File::PrepareOBPGL2(), HDFSP::File::PrepareOBPGL3(), HDFSP::File::PrepareOTHERHDF(), HDFSP::File::PrepareTRMML2_V6(), HDFSP::File::PrepareTRMML2_V7(), HDFSP::File::PrepareTRMML3A_V6(), HDFSP::File::PrepareTRMML3B_V6(), HDFSP::File::PrepareTRMML3C_V6(), HDFSP::File::PrepareTRMML3M_V7(), and HDFSP::File::PrepareTRMML3S_V7().

std::string HDFSP::SD::path
protected

The full path of the file(file name).

Definition at line 600 of file HDFSP.h.

Referenced by getPath().

std::map< int32, int > HDFSP::SD::refindexlist
protected

SDS reference number to index map, use to quickly obtain the SDS id.

Definition at line 612 of file HDFSP.h.

Referenced by Read(), and Read_Hybrid().

std::list<int32> HDFSP::SD::sds_ref_list
protected

SDS reference number list.

Definition at line 609 of file HDFSP.h.

Referenced by Read_Hybrid().


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