OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimElevCellHandler.h
Go to the documentation of this file.
1 //*****************************************************************************
2 // FILE: ossimElevCellHandler.h
3 //
4 // License: See top level LICENSE.txt file.
5 //
6 // DESCRIPTION:
7 // Contains declaration of class osimElevHandler. This class provides a
8 // base-class interface for the various DEM file formats.
9 //
10 // SOFTWARE HISTORY:
11 //>
12 // 13Apr2001 Oscar Kramer
13 // Initial coding.
14 //<
15 //*****************************************************************************
16 // $Id: ossimElevCellHandler.h 23117 2015-01-29 22:33:13Z okramer $
17 
18 
19 #ifndef ossimElevCellHandler_HEADER
20 #define ossimElevCellHandler_HEADER
21 
25 #include <ossim/base/ossimIpt.h>
26 
27 class ossimGpt;
28 
29 /******************************************************************************
30  *
31  * CLASS: ossimElevCellHandler
32  *
33  *****************************************************************************/
35 {
36 public:
41  ossimElevCellHandler (const char* elev_filename);
43 
44  virtual const ossimFilename& getFilename() const;
45 
46 
52  virtual ossimIpt getSizeOfElevCell() const = 0;
53 
58  virtual double getPostValue(const ossimIpt& gridPt) const = 0;
59 
65  virtual double getMeanSpacingMeters() const;
66 
71  virtual bool pointHasCoverage(const ossimGpt&) const;
72 
73  virtual bool getAccuracyInfo(ossimElevationAccuracyInfo& info, const ossimGpt& gpt) const;
78  // virtual double getAccuracyLE90(const ossimGpt&) const;
79  // virtual double getAccuracyCE90(const ossimGpt&) const;
80 
81  bool canConnectMyInputTo(ossim_int32 inputIndex,
82  const ossimConnectableObject* object)const;
83  virtual void close(){}
84  virtual bool open(const ossimFilename&, bool=false){return false;}
85 
86  virtual std::ostream& print(std::ostream& out) const;
87 
88 protected:
90  virtual ~ossimElevCellHandler();
91 
96  double theMeanSpacing; // meters
97  double theAbsLE90;
98  double theAbsCE90;
99 
100 
101 
102 TYPE_DATA
103 };
104 
106 {
107  return theGroundRect.pointWithin(gpt);
108 }
109 
110 #endif
virtual std::ostream & print(std::ostream &out) const
Outputs theErrorStatus as an ossimErrorCode and an ossimString.
virtual bool getAccuracyInfo(ossimElevationAccuracyInfo &info, const ossimGpt &gpt) const =0
bool pointWithin(const ossimGpt &gpt, bool considerHgt=false) const
METHOD: pointWithin(ossimGpt)
Definition: ossimGrect.h:232
ossimGrect theGroundRect
virtual bool pointHasCoverage(const ossimGpt &) const
METHOD: pointIsInsideRect() Method to check if the ground point elevation is defined: ...
virtual bool open(const ossimFilename &, bool=false)
#define TYPE_DATA
Definition: ossimRtti.h:339
ossimFilename theFilename
Virtual method for reading.
virtual bool pointHasCoverage(const ossimGpt &) const =0
METHOD: pointHasCoverage(gpt) Returns TRUE if coverage exists over gpt:
virtual bool canConnectMyInputTo(ossim_int32 inputIndex, const ossimConnectableObject *object) const
required to be overriden by derived classes
virtual double getMeanSpacingMeters() const =0
METHOD: meanSpacingMeters() This method returns the post spacing in the region of gpt: ...
#define OSSIM_DLL
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23
int ossim_int32