OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimDemHeader.h
Go to the documentation of this file.
1 //*******************************************************************
2 //
3 // License: MIT
4 //
5 // See LICENSE.txt file in the top level directory for more details.
6 //
7 // Author: Ken Melero
8 // Orginally written by Jamie Moyers (jmoyers@geeks.com)
9 // Adapted from the package KDEM.
10 // Description: This class parses a DEM header.
11 //
12 //********************************************************************
13 // $Id$
14 
15 #ifndef ossimDemHeader_HEADER
16 #define ossimDemHeader_HEADER 1
17 
18 
20 #include <ossim/base/ossimIosFwd.h>
22 #include <ossim/base/ossimIosFwd.h>
23 #include <memory>
24 #include <string>
25 
26 class ossimFilename;
27 class ossimString;
28 class ossimKeywordlist;
29 
31 {
32 public:
33 
35 
37  const ossimDemHeader& header);
39  ossimDemHeader& header);
40 
48  bool open(const ossimFilename& file);
49 
50  bool open(std::shared_ptr<ossim::istream>& str, const std::string& connectionString);
51 
59  ossim::istream& open(ossim::istream& is);
60 
68  std::ostream& print(std::ostream& out) const;
69 
70  // Accessors
71 
73  std::string const& getQuadName() const;
74 
76  std::string const& getProcessInfo () const;
77 
84  double getSEGeoCornerX () const;
85 
92  double getSEGeoCornerY () const;
93 
105  ossim_int32 getProcessCode () const;
106 
112  std::string const& getSectionIndicator() const;
113 
117  std::string const& getMappingCenterCode() const;
118 
124  ossim_int32 getLevelCode() const;
125 
130  ossim_int32 getElevPattern() const;
131 
138  ossim_int32 getGroundRefSysCode() const;
139 
143  ossimString getProjectionType() const;
144 
148  ossim_int32 getGroundRefSysZone() const;
149 
158  ossim_int32 getGroundRefSysUnits() const;
159 
166  ossim_int32 getElevationUnits() const;
167 
171  ossim_int32 getNumPolySides() const;
172 
177  const ossimDemPointVector& getDEMCorners() const;
178 
184  double getCounterclockAngle() const;
185 
190  ossim_int32 getElevAccuracyCode() const;
191 
195  double getMinimumElev() const;
196 
200  double getMaximumElev() const;
201 
202  double getSpatialResX() const;
203  double getSpatialResY() const;
204  double getSpatialResZ() const;
205 
211  ossim_int32 getProfileRows() const;
212  ossim_int32 getProfileColumns() const;
213 
217  ossim_int32 getLargeContInt() const;
218 
225  ossim_int32 getMaxSourceUnits() const;
226 
230  ossim_int32 getSmallContInt() const;
231 
236  ossim_int32 getMinSourceUnits() const;
237 
241  ossim_int32 getSourceDate() const;
242 
246  ossim_int32 getInspRevDate() const;
247 
252  std::string const& getInspFlag() const;
253 
264  ossim_int32 getDataValFlag() const;
265 
272  ossim_int32 getSuspectVoidFlag() const;
273 
279  ossim_int32 getVertDatum() const;
280 
289  ossim_int32 getHorizDatum() const;
290 
294  ossimString getHorizDatumCode() const;
295 
299  ossim_int32 getDataEdition() const;
300 
304  ossim_int32 getPerctVoid() const;
305 
309  ossim_int32 getWestEdgeFlag() const;
310 
314  ossim_int32 getNorthEdgeFlag() const;
315 
319  ossim_int32 getEastEdgeFlag() const;
320 
324  ossim_int32 getSouthEdgeFlag() const;
325 
331  double getVertDatumShift() const;
332 
338  bool getImageGeometry(ossimKeywordlist& kwl,
339  const char* prefix=NULL) const;
340 
341 private:
342 
343  std::string _quadName;
344  std::string _processInfo;
348  std::string _sectionIndicator;
349  std::string _mapCenterCode;
362  double _spatialResX;
363  double _spatialResY;
364  double _spatialResZ;
373  std::string _inspFlag;
385 };
386 
387 #endif // #ifndef ossimDemHeader_HEADER
ossimDemPointVector _demCorners
std::string _processInfo
ossim_int32 _maxSourceUnits
double _vertDatumShift
Represents serializable keyword/value map.
ossim_int32 _suspectVoidFlg
ossim_int32 _levelCode
std::string _sectionIndicator
ossim_int32 _processCode
ossim_int32 _perctVoid
std::ostream & print(H5::H5File *file, std::ostream &out)
Print method.
Definition: ossimH5Util.cpp:41
ossim_int32 _inspRevDate
ossim_int32 _vertDatum
ossim_int32 _dataEdition
ossim_int32 _elevAccuracyCode
ossim_int32 _westEdgeFlag
ostream & operator<<(ostream &out, const ossimAxes &axes)
Definition: ossimAxes.h:88
ossim_int32 _groundRefSysUnits
ossim_int32 _groundRefSysZone
double _counterclockAngle
ossim_int32 _sourceDate
ossim_int32 _numPolySides
std::vector< ossimDemPoint > ossimDemPointVector
Definition: ossimDemPoint.h:95
std::string _quadName
std::string _inspFlag
ossim_int32 _eastEdgeFlag
std::string _mapCenterCode
ossim_int32 _valFlag
ossim_int32 _profileRows
ossim_int32 _minSourceUnits
std::basic_istream< char > istream
Base class for char input streams.
Definition: ossimIosFwd.h:20
#define OSSIM_DLL
ossim_int32 _southEdgeFlag
ossim_int32 _smallContInt
ossim_int32 _largeContInt
ossim_int32 _profileColumns
ossim_int32 _horizDatum
OSSIM_DLL void operator>>(ossimIStream &in, ossimOStream &out)
ossim_int32 _northEdgeFlag
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23
int ossim_int32
ossim_int32 _groundRefSysCode
ossim_int32 _elevPattern
ossim_int32 _elevUnits