OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimElevImageSource.h
Go to the documentation of this file.
1 //*******************************************************************
2 // Copyright (C) 2002 ImageLinks Inc.
3 //
4 // License: MIT
5 //
6 // See LICENSE.txt file in the top level directory for more details.
7 //
8 // Author: David Burken
9 //
10 // Description: Class provides an elevation image source from the elevation
11 // manager.
12 //
13 //********************************************************************
14 // $Id: ossimElevImageSource.h 17108 2010-04-15 21:08:06Z dburken $
15 
16 #ifndef ossimElevImageSource_HEADER
17 #define ossimElevImageSource_HEADER
18 
21 #include <ossim/base/ossimGrect.h>
22 
23 class ossimElevSource;
24 
26 {
27 public:
28 
32  const ossimGpt& tie,
33  double latSpacing, // decimal degrees
34  double lonSpacing ,
35  ossim_uint32 numberLines,
36  ossim_uint32 numberSamples);
38  const ossimKeywordlist& kwl,
39  const char* prefix=0);
40 
41 
48  ossim_uint32 resLevel=0);
49 
55  virtual bool getImageGeometry(ossimKeywordlist& kwl,
56  const char* prefix=0);
57 
61  virtual ossim_uint32 getNumberOfOutputBands()const { return 1; }
62 
63 
69  virtual ossimIrect getImageRectangle(ossim_uint32 reduced_res_level = 0) const;
70 
75  virtual ossimIrect getBoundingRect(ossim_uint32 resLevel = 0) const
76  {
77  return getImageRectangle(resLevel);
78  }
79 
84  virtual bool saveState(ossimKeywordlist& kwl,
85  const char* prefix=0)const;
86 
91  virtual bool loadState(const ossimKeywordlist& kwl,
92  const char* prefix=0);
93 
94  bool canConnectMyInputTo(ossim_int32 /* inputIndex */,
95  const ossimConnectableObject* /* object */ )const
96  {
97  return false;
98  }
99 
100  virtual void initialize();
101 
105  virtual void getDecimationFactor(ossim_uint32 resLevel, ossimDpt& result) const;
106  virtual void getDecimationFactors(vector<ossimDpt>& decimations) const;
108  virtual ossim_uint32 getNumberOfInputBands() const;
109  virtual ossimScalarType getOutputScalarType() const;
110  virtual ossim_uint32 getTileWidth() const;
111  virtual ossim_uint32 getTileHeight() const;
112  virtual void changeTileSize(const ossimIpt& size);
113 
114  // access methods
115  virtual ossimGpt getTiePoint() const { return theTiePoint; }
116  virtual ossim_float64 getLatitudeSpacing() const { return theLatSpacing; }
117  virtual ossim_float64 getLongitudeSpacing() const { return theLonSpacing; }
118  virtual ossim_uint32 getNumberOfLines(ossim_uint32 reduced_res_level = 0) const;
119  virtual ossim_uint32 getNumberOfSamples(ossim_uint32 reduced_res_level = 0) const;
120  virtual double getMinPixelValue(ossim_uint32 band=0)const;
121  virtual double getMaxPixelValue(ossim_uint32 band=0)const;
122 
123  // set methods
124  virtual void setTiePoint(const ossimGpt& gpt) { theTiePoint = gpt; }
125  virtual void setLatitudeSpacing(ossim_float64 sp) { theLatSpacing = sp; }
127  virtual void setNumberOfLines(ossim_uint32 lines) { theNumberOfLines = lines; }
128  virtual void setNumberOfSamples(ossim_uint32 samps) { theNumberOfSamps = samps;}
129  virtual void setMinPixelValue(ossim_float64 min_pix);
130  virtual void setMaxPixelValue(ossim_float64 max_pix);
131 
132 protected:
133  virtual ~ossimElevImageSource();
134 
137  ossimGpt theTiePoint; // upper left tie point
138  ossim_float64 theLatSpacing; // in decimal degrees
139  ossim_float64 theLonSpacing; // in decimal degrees
142 
143 TYPE_DATA
144 };
145 
146 #endif
virtual void setLongitudeSpacing(ossim_float64 sp)
virtual double getMinPixelValue(ossim_uint32 band=0) const
Returns the min pixel of the band.
ossimRefPtr< ossimImageData > theTile
Represents serializable keyword/value map.
virtual void changeTileSize(const ossimIpt &size)
virtual bool loadState(const ossimKeywordlist &kwl, const char *prefix=0)
virtual ossim_uint32 getNumberOfInputBands() const
virtual void setNumberOfSamples(ossim_uint32 samps)
virtual ossim_uint32 getTileHeight() const
Returns the default processing tile height.
virtual ossimIrect getImageRectangle(ossim_uint32 reduced_res_level=0) const
virtual void getDecimationFactors(vector< ossimDpt > &decimations) const
bool canConnectMyInputTo(ossim_int32, const ossimConnectableObject *) const
required to be overriden by derived classes
virtual void setTiePoint(const ossimGpt &gpt)
double ossim_float64
virtual ossimRefPtr< ossimImageData > getTile(const ossimIrect &rect, ossim_uint32 resLevel=0)
virtual ossim_uint32 getNumberOfLines(ossim_uint32 reduced_res_level=0) const
yy_size_t size
virtual void setLatitudeSpacing(ossim_float64 sp)
#define TYPE_DATA
Definition: ossimRtti.h:339
ossimElevSource * theElevManager
unsigned int ossim_uint32
virtual double getMaxPixelValue(ossim_uint32 band=0) const
Returns the max pixel of the band.
virtual ossim_uint32 getNumberOfOutputBands() const
virtual ossimRefPtr< ossimImageGeometry > getImageGeometry()
Returns the image geometry object associated with this tile source or NULL if not defined...
virtual ossim_float64 getLongitudeSpacing() const
ossimScalarType
virtual ossimIrect getBoundingRect(ossim_uint32 resLevel=0) const
virtual ossim_float64 getLatitudeSpacing() const
virtual ossim_uint32 getTileWidth() const
Returns the default processing tile width.
virtual void setMaxPixelValue(ossim_float64 max_pix)
virtual void setNumberOfLines(ossim_uint32 lines)
virtual void getDecimationFactor(ossim_uint32 resLevel, ossimDpt &result) const
virtual ossim_uint32 getNumberOfSamples(ossim_uint32 reduced_res_level=0) const
virtual ossim_uint32 getNumberOfDecimationLevels() const
Will return the number of resolution levels.
virtual bool saveState(ossimKeywordlist &kwl, const char *prefix=0) const
virtual ossimGpt getTiePoint() const
virtual void setMinPixelValue(ossim_float64 min_pix)
virtual ossimScalarType getOutputScalarType() const
This will be used to query the output pixel type of the tile source.
int ossim_int32