bes Updated for version 3.20.10
h5commoncfdap.cc File Reference

Functions to generate DDS and DAS for one object(variable). More...

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <iostream>
#include <sstream>
#include <libdap/InternalErr.h>
#include <BESDebug.h>
#include "HDF5RequestHandler.h"
#include "h5cfdaputil.h"
#include "h5gmcfdap.h"
#include "HDF5CFByte.h"
#include "HDF5CFInt8.h"
#include "HDF5CFUInt16.h"
#include "HDF5CFInt16.h"
#include "HDF5CFUInt32.h"
#include "HDF5CFInt32.h"
#include "HDF5CFFloat32.h"
#include "HDF5CFFloat64.h"
#include "HDF5CFInt64.h"
#include "HDF5CFUInt64.h"
#include "HDF5CFStr.h"
#include "HDF5CFArray.h"
#include "HDF5CFGeoCF1D.h"
#include "HDF5CFGeoCFProj.h"
#include "HDF5CFUtil.h"
Include dependency graph for h5commoncfdap.cc:

Go to the source code of this file.

Macros

#define HANDLE_CASE(tid, type)
 
#define HANDLE_CASE(tid, type)
 

Functions

void add_cf_grid_cv_attrs (DAS &das, const vector< HDF5CF::Var * > &vars, EOS5GridPCType cv_proj_code, const vector< HDF5CF::Dimension * > &dims, const vector< double > &eos5_proj_params, const unsigned short g_suffix)
 
void add_cf_grid_cv_dap4_attrs (D4Group *d4_root, const string &cf_projection, const vector< HDF5CF::Dimension * > &dims)
 
void add_cf_grid_cvs (DDS &dds, EOS5GridPCType cv_proj_code, float cv_point_lower, float cv_point_upper, float cv_point_left, float cv_point_right, const vector< HDF5CF::Dimension * > &dims)
 
void add_cf_grid_mapinfo_var (DDS &dds, const EOS5GridPCType grid_proj_code, const unsigned short g_suffix)
 
void add_cf_grid_mapping_attr (DAS &das, const vector< HDF5CF::Var * > &vars, const string &cf_projection, const string &dim0name, hsize_t dim0size, const string &dim1name, hsize_t dim1size)
 
void add_cf_projection_attrs (DAS &das, EOS5GridPCType cv_proj_code, const vector< double > &eos5_proj_params, const string &cf_projection)
 
void add_gm_oneproj_var_dap4_attrs (BaseType *var, EOS5GridPCType cv_proj_code, const vector< double > &eos5_proj_params)
 
void add_gm_spcvs (libdap::D4Group *d4_root, EOS5GridPCType cv_proj_code, float cv_point_lower, float cv_point_upper, float cv_point_left, float cv_point_right, const std::vector< HDF5CF::Dimension * > &dims)
 
void add_gm_spcvs_attrs (libdap::BaseType *var, const bool is_dim0)
 
void add_grp_dap4_attr (D4Group *d4_grp, const string &attr_name, D4AttributeType attr_type, const string &attr_value)
 
void add_ll_valid_range (AttrTable *at, bool is_lat)
 
void add_var_dap4_attr (BaseType *var, const string &attr_name, D4AttributeType attr_type, const string &attr_value)
 
void check_update_int64_attr (const string &obj_name, const HDF5CF::Attribute *attr)
 
D4Attribute * gen_dap4_attr (const HDF5CF::Attribute *attr)
 
void gen_dap_oneobj_das (AttrTable *at, const HDF5CF::Attribute *attr, const HDF5CF::Var *var)
 
void gen_dap_onevar_dds (DDS &dds, const HDF5CF::Var *var, const hid_t file_id, const string &filename)
 
void gen_dap_onevar_dmr (libdap::D4Group *d4_grp, const HDF5CF::Var *var, const hid_t file_id, const string &filename)
 
void gen_dap_special_oneobj_das (AttrTable *at, const HDF5CF::Attribute *attr, const HDF5CF::Var *var)
 
void gen_dap_str_attr (AttrTable *at, const HDF5CF::Attribute *attr)
 
string get_cf_string (string &s)
 
string get_cf_string_helper (string &s)
 
void handle_coor_attr_for_int64_var (const HDF5CF::Attribute *attr, const string &var_path, string &tempstring, bool chg_coor_value)
 
bool is_fvalue_valid (H5DataType var_dtype, const HDF5CF::Attribute *attr)
 
void map_cfh5_attr_container_to_dap4 (libdap::D4Attribute *d4_con, const HDF5CF::Attribute *attr)
 
void map_cfh5_grp_attr_to_dap4 (libdap::D4Group *d4_grp, const HDF5CF::Attribute *attr)
 
void map_cfh5_var_attrs_to_dap4 (const HDF5CF::Var *var, BaseType *d4_var)
 
void map_cfh5_var_attrs_to_dap4_int64 (const HDF5CF::Var *var, BaseType *d4_var)
 
bool need_attr_values_for_dap4 (const HDF5CF::Var *var)
 
bool need_special_attribute_handling (const HDF5CF::Attribute *attr, const HDF5CF::Var *var)
 

Detailed Description

Functions to generate DDS and DAS for one object(variable).

Author
Muqun Yang myang.nosp@m.6@hd.nosp@m.fgrou.nosp@m.p.or.nosp@m.g

Definition in file h5commoncfdap.cc.

Macro Definition Documentation

◆ HANDLE_CASE [1/2]

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

◆ HANDLE_CASE [2/2]

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

Function Documentation

◆ add_cf_grid_cv_attrs()

void add_cf_grid_cv_attrs ( DAS &  das,
const vector< HDF5CF::Var * > &  vars,
EOS5GridPCType  cv_proj_code,
const vector< HDF5CF::Dimension * > &  dims,
const vector< double > &  eos5_proj_params,
const unsigned short  g_suffix 
)

Definition at line 913 of file h5commoncfdap.cc.

◆ add_cf_grid_cv_dap4_attrs()

void add_cf_grid_cv_dap4_attrs ( D4Group *  d4_root,
const string &  cf_projection,
const vector< HDF5CF::Dimension * > &  dims 
)

Definition at line 1483 of file h5commoncfdap.cc.

◆ add_cf_grid_cvs()

void add_cf_grid_cvs ( DDS &  dds,
EOS5GridPCType  cv_proj_code,
float  cv_point_lower,
float  cv_point_upper,
float  cv_point_left,
float  cv_point_right,
const vector< HDF5CF::Dimension * > &  dims 
)

Definition at line 827 of file h5commoncfdap.cc.

◆ add_cf_grid_mapinfo_var()

void add_cf_grid_mapinfo_var ( DDS &  dds,
const EOS5GridPCType  grid_proj_code,
const unsigned short  g_suffix 
)

Definition at line 881 of file h5commoncfdap.cc.

◆ add_cf_grid_mapping_attr()

void add_cf_grid_mapping_attr ( DAS &  das,
const vector< HDF5CF::Var * > &  vars,
const string &  cf_projection,
const string &  dim0name,
hsize_t  dim0size,
const string &  dim1name,
hsize_t  dim1size 
)

Definition at line 1094 of file h5commoncfdap.cc.

◆ add_cf_projection_attrs()

void add_cf_projection_attrs ( DAS &  das,
EOS5GridPCType  cv_proj_code,
const vector< double > &  eos5_proj_params,
const string &  cf_projection 
)

Definition at line 975 of file h5commoncfdap.cc.

◆ add_gm_oneproj_var_dap4_attrs()

void add_gm_oneproj_var_dap4_attrs ( BaseType *  var,
EOS5GridPCType  cv_proj_code,
const vector< double > &  eos5_proj_params 
)

Definition at line 1374 of file h5commoncfdap.cc.

◆ add_gm_spcvs()

void add_gm_spcvs ( libdap::D4Group *  d4_root,
EOS5GridPCType  cv_proj_code,
float  cv_point_lower,
float  cv_point_upper,
float  cv_point_left,
float  cv_point_right,
const std::vector< HDF5CF::Dimension * > &  dims 
)

Definition at line 1520 of file h5commoncfdap.cc.

◆ add_gm_spcvs_attrs()

void add_gm_spcvs_attrs ( libdap::BaseType *  var,
const bool  is_dim0 
)

Definition at line 1582 of file h5commoncfdap.cc.

◆ add_grp_dap4_attr()

void add_grp_dap4_attr ( D4Group *  d4_grp,
const string &  attr_name,
D4AttributeType  attr_type,
const string &  attr_value 
)

Definition at line 1607 of file h5commoncfdap.cc.

◆ add_ll_valid_range()

void add_ll_valid_range ( AttrTable *  at,
bool  is_lat 
)

Definition at line 1133 of file h5commoncfdap.cc.

◆ add_var_dap4_attr()

void add_var_dap4_attr ( BaseType *  var,
const string &  attr_name,
D4AttributeType  attr_type,
const string &  attr_value 
)

Definition at line 1615 of file h5commoncfdap.cc.

◆ check_update_int64_attr()

void check_update_int64_attr ( const string &  obj_name,
const HDF5CF::Attribute attr 
)

Definition at line 1215 of file h5commoncfdap.cc.

◆ gen_dap4_attr()

D4Attribute * gen_dap4_attr ( const HDF5CF::Attribute attr)

Definition at line 1336 of file h5commoncfdap.cc.

◆ gen_dap_oneobj_das()

void gen_dap_oneobj_das ( AttrTable *  at,
const HDF5CF::Attribute attr,
const HDF5CF::Var var 
)

Definition at line 488 of file h5commoncfdap.cc.

◆ gen_dap_onevar_dds()

void gen_dap_onevar_dds ( DDS &  dds,
const HDF5CF::Var var,
const hid_t  file_id,
const string &  filename 
)

Definition at line 69 of file h5commoncfdap.cc.

◆ gen_dap_onevar_dmr()

void gen_dap_onevar_dmr ( libdap::D4Group *  d4_grp,
const HDF5CF::Var var,
const hid_t  file_id,
const string &  filename 
)

Definition at line 546 of file h5commoncfdap.cc.

◆ gen_dap_special_oneobj_das()

void gen_dap_special_oneobj_das ( AttrTable *  at,
const HDF5CF::Attribute attr,
const HDF5CF::Var var 
)

Definition at line 336 of file h5commoncfdap.cc.

◆ gen_dap_str_attr()

void gen_dap_str_attr ( AttrTable *  at,
const HDF5CF::Attribute attr 
)

Definition at line 795 of file h5commoncfdap.cc.

◆ get_cf_string()

string get_cf_string ( string &  s)

Definition at line 1625 of file h5commoncfdap.cc.

◆ get_cf_string_helper()

string get_cf_string_helper ( string &  s)

Definition at line 1636 of file h5commoncfdap.cc.

◆ handle_coor_attr_for_int64_var()

void handle_coor_attr_for_int64_var ( const HDF5CF::Attribute attr,
const string &  var_path,
string &  tempstring,
bool  chg_coor_value 
)

Definition at line 1285 of file h5commoncfdap.cc.

◆ is_fvalue_valid()

bool is_fvalue_valid ( H5DataType  var_dtype,
const HDF5CF::Attribute attr 
)

Definition at line 356 of file h5commoncfdap.cc.

◆ map_cfh5_attr_container_to_dap4()

void map_cfh5_attr_container_to_dap4 ( libdap::D4Attribute *  d4_con,
const HDF5CF::Attribute attr 
)

Definition at line 1328 of file h5commoncfdap.cc.

◆ map_cfh5_grp_attr_to_dap4()

void map_cfh5_grp_attr_to_dap4 ( libdap::D4Group *  d4_grp,
const HDF5CF::Attribute attr 
)

Definition at line 1320 of file h5commoncfdap.cc.

◆ map_cfh5_var_attrs_to_dap4()

void map_cfh5_var_attrs_to_dap4 ( const HDF5CF::Var var,
BaseType *  d4_var 
)

Definition at line 1308 of file h5commoncfdap.cc.

◆ map_cfh5_var_attrs_to_dap4_int64()

void map_cfh5_var_attrs_to_dap4_int64 ( const HDF5CF::Var var,
BaseType *  d4_var 
)

Definition at line 1156 of file h5commoncfdap.cc.

◆ need_attr_values_for_dap4()

bool need_attr_values_for_dap4 ( const HDF5CF::Var var)

Definition at line 1146 of file h5commoncfdap.cc.

◆ need_special_attribute_handling()

bool need_special_attribute_handling ( const HDF5CF::Attribute attr,
const HDF5CF::Var var 
)

Definition at line 330 of file h5commoncfdap.cc.