bes Updated for version 3.20.13
hdfdesc.cc File Reference

DAP attributes and structure description generation code. More...

#include "config.h"
#include "config_hdf.h"
#include <cstdio>
#include <cassert>
#include <libgen.h>
#include <string>
#include <fstream>
#include <iostream>
#include <sstream>
#include <algorithm>
#include <numeric>
#include <functional>
#include <unistd.h>
#include <sys/types.h>
#include <dirent.h>
#include <iomanip>
#include <cerrno>
#include <mfhdf.h>
#include <libdap/DDS.h>
#include <libdap/DAS.h>
#include <libdap/escaping.h>
#include <libdap/parser.h>
#include <libdap/InternalErr.h>
#include <libdap/debug.h>
#include <BESDebug.h>
#include <BESLog.h>
#include "HDF4RequestHandler.h"
#include "hcstream.h"
#include "hdfclass.h"
#include "hcerr.h"
#include "dhdferr.h"
#include "HDFArray.h"
#include "HDFSequence.h"
#include "HDFTypeFactory.h"
#include "HDFGrid.h"
#include "dodsutil.h"
#include "hdf-dods.h"
#include "hdf-maps.h"
#include "HDFByte.h"
#include "HDFInt16.h"
#include "HDFUInt16.h"
#include "HDFInt32.h"
#include "HDFUInt32.h"
#include "HDFFloat32.h"
#include "HDFFloat64.h"
#include "HDFStr.h"
#include "HE2CF.h"
#include "HDFSP.h"
#include "HDFSPArray_RealField.h"
#include "HDFSPArrayGeoField.h"
#include "HDFSPArrayMissField.h"
#include "HDFSPArrayAddCVField.h"
#include "HDFSPArray_VDField.h"
#include "HDFCFStrField.h"
#include "HDFCFStr.h"
#include "HDFCFUtil.h"

Go to the source code of this file.

Macros

#define ATTR_STRING_QUOTE_FIX
 
#define HANDLE_CASE(tid, type)
 
#define HANDLE_CASE(tid, type)
 
#define HANDLE_CASE(tid, type)
 
#define SIGNED_BYTE_TO_INT32   1
 

Functions

void AddHDFAttr (DAS &das, const string &varname, const vector< hdf_attr > &hav)
 
void AddHDFAttr (DAS &das, const string &varname, const vector< string > &anv)
 
void change_das_mod08_scale_offset (DAS &das, const HDFSP::File *spf)
 
int check_special_eosfile (const string &filename, string &grid_name, int32 sdfd)
 
void hdfeos_delete_buffer (void *buffer)
 
yy_buffer_state * hdfeos_scan_string (const char *str)
 
void * hdfeos_string (const char *yy_str)
 
void hdfeos_switch_to_buffer (void *new_buffer)
 
int hdfeosparse (libdap::parser_arg *arg)
 
template<class T >
string num2string (T n)
 
void read_das (DAS &das, const string &filename)
 
bool read_das_hdfhybrid (DAS &das, const string &filename, int32 sdfd, int32 fileid, HDFSP::File **h4filepptr)
 
bool read_das_hdfsp (DAS &das, const string &filename, int32 sdfd, int32 fileid, HDFSP::File **h4filepptr)
 
void read_das_sds (DAS &das, const string &filename, int32 sdfd, bool ecs_metadata, HDFSP::File **h4fileptr)
 
bool read_das_special_eos2 (DAS &das, const string &filename, int32 sdid, int32 fileid, bool ecs_metadata, HDFSP::File **h4filepptr)
 
bool read_das_special_eos2_core (DAS &das, const HDFSP::File *spf, const string &filename, bool ecs_metadata)
 
void read_dds (DDS &dds, const string &filename)
 
bool read_dds_hdfhybrid (DDS &dds, const string &filename, int32 sdfd, int32 fileid, const HDFSP::File *h4file)
 
bool read_dds_hdfsp (DDS &dds, const string &filename, int32 sdfd, int32 fileid, const HDFSP::File *h4file)
 
void read_dds_sds (DDS &dds, const string &filename, int32 sdfd, HDFSP::File *h4file, bool dds_set_cache)
 
bool read_dds_special_1d_grid (DDS &dds, const HDFSP::File *spf, const string &filename, int32 sdfd, bool can_cache)
 
void read_dds_spfields (DDS &dds, const string &filename, const int sdfd, const HDFSP::SDField *spsds, SPType sptype)
 
void read_dds_spvdfields (DDS &dds, const string &filename, const int fileid, int32 vdref, int32 numrec, HDFSP::VDField *spvd)
 

Detailed Description

DAP attributes and structure description generation code.

Definition in file hdfdesc.cc.

Macro Definition Documentation

◆ ATTR_STRING_QUOTE_FIX

#define ATTR_STRING_QUOTE_FIX

Definition at line 154 of file hdfdesc.cc.

◆ HANDLE_CASE [1/3]

#define HANDLE_CASE (   tid,
  type 
)
Value:
case tid: \
bt = new (type)(spsdsf->getNewName(),filename); \
break;

◆ HANDLE_CASE [2/3]

#define HANDLE_CASE (   tid,
  type 
)
Value:
case tid: \
bt = new (type)(spsds->getNewName(),filename); \
break;

◆ HANDLE_CASE [3/3]

#define HANDLE_CASE (   tid,
  type 
)
Value:
case tid: \
bt = new (type)(spvd->getNewName(),filename); \
break;

◆ SIGNED_BYTE_TO_INT32

#define SIGNED_BYTE_TO_INT32   1

Definition at line 108 of file hdfdesc.cc.

Function Documentation

◆ AddHDFAttr() [1/2]

void AddHDFAttr ( DAS &  das,
const string &  varname,
const vector< hdf_attr > &  hav 
)

Definition at line 4075 of file hdfdesc.cc.

◆ AddHDFAttr() [2/2]

void AddHDFAttr ( DAS &  das,
const string &  varname,
const vector< string > &  anv 
)

Definition at line 4169 of file hdfdesc.cc.

◆ change_das_mod08_scale_offset()

void change_das_mod08_scale_offset ( DAS &  das,
const HDFSP::File spf 
)

Definition at line 2673 of file hdfdesc.cc.

◆ check_special_eosfile()

int check_special_eosfile ( const string &  filename,
string &  grid_name,
int32  sdfd 
)

Definition at line 3400 of file hdfdesc.cc.

◆ num2string()

template<class T >
string num2string ( n)

Definition at line 156 of file hdfdesc.cc.

◆ read_das()

void read_das ( DAS &  das,
const string &  filename 
)

Definition at line 3709 of file hdfdesc.cc.

◆ read_das_hdfsp()

bool read_das_hdfsp ( DAS &  das,
const string &  filename,
int32  sdfd,
int32  fileid,
HDFSP::File **  h4filepptr 
)

Definition at line 1957 of file hdfdesc.cc.

◆ read_das_sds()

void read_das_sds ( DAS &  das,
const string &  filename,
int32  sdfd,
bool  ecs_metadata,
HDFSP::File **  h4fileptr 
)

Definition at line 3666 of file hdfdesc.cc.

◆ read_das_special_eos2()

bool read_das_special_eos2 ( DAS &  das,
const string &  filename,
int32  sdid,
int32  fileid,
bool  ecs_metadata,
HDFSP::File **  h4filepptr 
)

Definition at line 2433 of file hdfdesc.cc.

◆ read_das_special_eos2_core()

bool read_das_special_eos2_core ( DAS &  das,
const HDFSP::File spf,
const string &  filename,
bool  ecs_metadata 
)

Definition at line 2476 of file hdfdesc.cc.

◆ read_dds()

void read_dds ( DDS &  dds,
const string &  filename 
)

Definition at line 3696 of file hdfdesc.cc.

◆ read_dds_hdfsp()

bool read_dds_hdfsp ( DDS &  dds,
const string &  filename,
int32  sdfd,
int32  fileid,
const HDFSP::File h4file 
)

Definition at line 1895 of file hdfdesc.cc.

◆ read_dds_sds()

void read_dds_sds ( DDS &  dds,
const string &  filename,
int32  sdfd,
HDFSP::File h4file,
bool  dds_set_cache 
)

Definition at line 3687 of file hdfdesc.cc.

◆ read_dds_special_1d_grid()

bool read_dds_special_1d_grid ( DDS &  dds,
const HDFSP::File spf,
const string &  filename,
int32  sdfd,
bool  can_cache 
)

Definition at line 2752 of file hdfdesc.cc.

◆ read_dds_spfields()

void read_dds_spfields ( DDS &  dds,
const string &  filename,
const int  sdfd,
const HDFSP::SDField spsds,
SPType  sptype 
)

Definition at line 2991 of file hdfdesc.cc.

◆ read_dds_spvdfields()

void read_dds_spvdfields ( DDS &  dds,
const string &  filename,
const int  fileid,
int32  vdref,
int32  numrec,
HDFSP::VDField spvd 
)

Definition at line 3269 of file hdfdesc.cc.