OPeNDAP Hyrax Back End Server (BES)  Updated for version 3.8.3
HDFEOS2ArraySwathGeoDimMapExtraField.h
Go to the documentation of this file.
1 // Retrieves the latitude and longitude of the HDF-EOS2 Swath with dimension map
3 // Authors: MuQun Yang <myang6@hdfgroup.org>
4 // Copyright (c) 2010-2012 The HDF Group
6 // SOME MODIS products provide the latitude and longitude files for
7 // swaths using dimension map. The files are still HDF-EOS2 files.
8 // The file name is determined at hdfdesc.cc.
9 #ifdef USE_HDFEOS2_LIB
10 #ifndef HDFEOS2ARRAY_SWATHGEODIMMAPEXTRAFIELD_H
11 #define HDFEOS2ARRAY_SWATHGEODIMMAPEXTRAFIELD_H
12 
13 #include "Array.h"
14 #include "mfhdf.h"
15 #include "hdf.h"
16 #include "HdfEosDef.h"
17 
18 
19 using namespace libdap;
20 
21 // swathname is not provided because the additional geo-location file uses
22 // a different swath name.
23 class HDFEOS2ArraySwathGeoDimMapExtraField:public Array
24 {
25  public:
26  HDFEOS2ArraySwathGeoDimMapExtraField (int rank, const std::string & filename, const std::string & fieldname, const string & n = "", BaseType * v = 0):
27  Array (n, v), rank (rank), filename (filename), fieldname (fieldname) {
28  }
29  virtual ~ HDFEOS2ArraySwathGeoDimMapExtraField ()
30  {
31  }
32 
33  // Standard way to pass the coordinates of the subsetted region from the client to the handlers
34  int format_constraint (int *cor, int *step, int *edg);
35 
36  BaseType *ptr_duplicate ()
37  {
38  return new HDFEOS2ArraySwathGeoDimMapExtraField (*this);
39  }
40 
41  // Read the data
42  virtual bool read ();
43 
44  private:
45 
46  // Field array rank
47  int rank;
48 
49  // HDF-EOS2 file name
50  std::string filename;
51 
52  // HDF-EOS2 field name
53  std::string fieldname;
54 };
55 
56 
57 #endif
58 #endif
static class NCMLUtil overview