OPeNDAP Hyrax Back End Server (BES)  Updated for version 3.8.3
HDFEOS2ArraySwathGeoField.h
Go to the documentation of this file.
1 // Retrieves the latitude and longitude of the HDF-EOS2 Swath without using dimension maps
3 
4 // Authors: MuQun Yang <myang6@hdfgroup.org>
5 // Copyright (c) 2010-2012 The HDF Group
7 // For the swath without using dimension maps, for most cases, the retrieving of latitude and
8 // longitude is the same as retrieving other fields. Some MODIS latitude and longitude need
9 // to be arranged specially.
10 #ifdef USE_HDFEOS2_LIB
11 #ifndef HDFEOS2ARRAY_SWATHGEOFIELD_H
12 #define HDFEOS2ARRAY_SWATHGEOFIELD_H
13 
14 #include "Array.h"
15 #include "HDFCFUtil.h"
16 #include "HdfEosDef.h"
17 
18 using namespace libdap;
19 
20 class HDFEOS2ArraySwathGeoField:public Array
21 {
22  public:
23  HDFEOS2ArraySwathGeoField (int rank, const std::string & filename, const int swathfd, const std::string & swathname, const std::string & fieldname, const string & n = "", BaseType * v = 0):
24  Array (n, v),
25  rank (rank),
26  filename(filename),
27  swathfd (swathfd),
28  swathname (swathname),
29  fieldname (fieldname) {
30  }
31  virtual ~ HDFEOS2ArraySwathGeoField ()
32  {
33  }
34 
35  // Standard way to pass the coordinates of the subsetted region from the client to the handlers
36  int format_constraint (int *cor, int *step, int *edg);
37 
38  BaseType *ptr_duplicate ()
39  {
40  return new HDFEOS2ArraySwathGeoField (*this);
41  }
42 
43  // Read the data
44  virtual bool read ();
45 
46  private:
47 
48  // Field array rank
49  int rank;
50 
51  // HDF-EOS2 file name
52  std::string filename;
53 
54  int swathfd;
55 
56  // HDF-EOS2 swath name
57  std::string swathname;
58 
59  // HDF-EOS2 field name
60  std::string fieldname;
61 };
62 
63 
64 #endif
65 #endif
static class NCMLUtil overview