bes Updated for version 3.21.1
The Backend Server (BES) is the lower two tiers of the Hyrax data server
HDFDMRArray_SPLL.h
1
2// This file is part of the hdf4 data handler for the OPeNDAP data server.
3// It retrieves HDF4 SDS values for a direct DMR-mapping DAP4 response.
4// Each SDS will be mapped to a DAP variable.
5
6// Authors: Kent Yang <myang6@hdfgroup.org>
7// Copyright (c) The HDF Group
9
10#ifndef HDFDMRARRAY_SPLL_H
11#define HDFDMRARRAY_SPLL_H
12
13#include "mfhdf.h"
14#include "hdf.h"
15
16#include <libdap/Array.h>
17
18class HDFDMRArray_SPLL:public libdap::Array
19{
20 public:
21 HDFDMRArray_SPLL (const std::string& filename, float ll_start, float ll_res, const std::string & n = "", libdap::BaseType * v = nullptr):
22 Array (n, v),
23 filename(filename),
24 ll_start(ll_start),
25 ll_res(ll_res)
26 {
27 }
28 ~ HDFDMRArray_SPLL () override = default;
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 () override
35 {
36 return new HDFDMRArray_SPLL (*this);
37 }
38
39 bool read () override;
40
41 private:
42
43 std::string filename;
44 int32 sp_type = 0;
45 float32 ll_start;
46 float32 ll_res;
47 int32 sds_rank = 1;
48
49};
50
51
52#endif