bes Updated for version 3.20.13
HDFSPArrayMissField.h
1
2// This file is part of the hdf4 data handler for the OPeNDAP data server.
3// It retrieves the missing fields for some special NASA HDF4 data products.
4// The products include TRMML2_V6,TRMML3B_V6,CER_AVG,CER_ES4,CER_CDAY,CER_CGEO,CER_SRB,CER_SYN,CER_ZAVG,OBPGL2,OBPGL3
5// To know more information about these products,check HDFSP.h.
6// Some third-dimension coordinate variable values are not provided.
7// What we do here is to provide natural number series(1,2,3, ...) for
8// these missing values. It doesn't make sense to visualize or analyze
9// with vertical cross-section. One can check the data level by level.
10
11// Authors: MuQun Yang <myang6@hdfgroup.org>
12// Copyright (c) 2010-2012 The HDF Group
14
15#ifndef HDFSPARRAY_MISSFIELD_H
16#define HDFSPARRAY_MISSFIELD_H
17
18#include <libdap/Array.h>
19
20class HDFSPArrayMissGeoField:public libdap::Array
21{
22 public:
23 HDFSPArrayMissGeoField (int rank, int tnumelm, const std::string & n = "", libdap::BaseType * v = 0):
24 libdap::Array (n, v), rank (rank), tnumelm (tnumelm) {
25 }
26 virtual ~ HDFSPArrayMissGeoField ()
27 {
28 }
29
30 // Standard way of DAP handlers to pass the coordinates of the subsetted region to the handlers
31 // Return the number of elements to read.
32 int format_constraint (int *cor, int *step, int *edg);
33
34 libdap::BaseType *ptr_duplicate ()
35 {
36 return new HDFSPArrayMissGeoField (*this);
37 }
38
39 virtual bool read ();
40
41 private:
42
43 int rank;
44 int tnumelm;
45};
46
47
48#endif