OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimImageSourceSequencer.h
Go to the documentation of this file.
1 //*******************************************************************
2 // Copyright (C) 2000 ImageLinks Inc.
3 //
4 // License: MIT
5 //
6 // See LICENSE.txt file in the top level directory for more details.
7 //
8 // Author: Garrett Potts
9 //
10 //*******************************************************************
11 // $Id: ossimImageSourceSequencer.h 23081 2015-01-14 21:38:42Z dburken $
12 #ifndef ossimImageSourceSequencer_HEADER
13 #define ossimImageSourceSequencer_HEADER 1
14 
16 #include <ossim/base/ossimIpt.h>
20 
21 
23  :
24  public ossimImageSource,
26 {
27 public:
29  ossimObject* owner=NULL);
30 
31  virtual ~ossimImageSourceSequencer();
36  ossim_int64 getNumberOfTiles()const;
37 
42  ossim_int64 getNumberOfTilesHorizontal()const;
43 
48  ossim_int64 getNumberOfTilesVertical()const;
49 
59  virtual void initialize();
60 
64  virtual void setAreaOfInterest(const ossimIrect& areaOfInterest);
65 
69  const ossimIrect& getAreaOfInterest()const;
70 
76  virtual void setToStartOfSequence();
77 
79  ossim_uint32 resLevel=0);
80 
94  virtual ossimRefPtr<ossimImageData> getNextTile(ossim_uint32 resLevel=0);
95  virtual bool getNextTileStream(std::ostream& bos);
96 
97  virtual bool getTileOrigin(ossim_int64 id, ossimIpt& origin)const;
98 
105  bool getTileRect(ossim_int64 tile_id, ossimIrect& rect) const;
106 
108  ossim_uint32 resLevel=0);
109 
110  virtual ossimIrect getBoundingRect(ossim_uint32 resLevel=0)const;
111  virtual void getDecimationFactor(ossim_uint32 resLevel,
112  ossimDpt& result) const;
113  virtual void getDecimationFactors(vector<ossimDpt>& decimations) const;
115 
119  virtual ossim_uint32 getNumberOfInputBands()const;
120 
121  virtual ossimScalarType getOutputScalarType() const;
122 
123  virtual ossim_uint32 getTileWidth() const;
124  virtual ossim_uint32 getTileHeight() const;
125 
126  virtual void slaveProcessTiles();
127  virtual bool isMaster()const;
128 
129  virtual ossimIpt getTileSize()const;
130  virtual void setTileSize(const ossimIpt& tileSize);
131  virtual void setTileSize(ossim_int32 width, ossim_int32 height);
132 
133  virtual void connectInputEvent(ossimConnectionEvent& event);
134  virtual void disconnectInputEvent(ossimConnectionEvent& event);
135 
136  virtual bool canConnectMyInputTo(ossim_int32 inputIndex,
137  const ossimConnectableObject* object)const;
138 
139  virtual double getNullPixelValue(ossim_uint32 band=0)const;
140  virtual double getMinPixelValue(ossim_uint32 band=0)const;
141  virtual double getMaxPixelValue(ossim_uint32 band=0)const;
142 
143  void setCreateHistogram(bool create_histogram);
144  bool loadState(const ossimKeywordlist& kwl, const char* prefix);
145 
146  void getBinInformation(ossim_uint32& numberOfBins,
147  ossim_float64& minValue,
148  ossim_float64& maxValue, ossimScalarType stype)const;
149 
150 protected:
159 
164 
165  //---
166  // These need to be big(64 bit) for high resolution tile servers. Made
167  // signed for ease of going to/from ipt and irect which are both signed.
168  //---
173 
174  virtual void updateTileDimensions();
175 
176 TYPE_DATA
177 };
178 
179 #endif
virtual ossimIrect getBoundingRect(ossim_uint32 resLevel=0) const
This will return the bounding rect of the source.
#define OSSIMDLLEXPORT
Represents serializable keyword/value map.
virtual bool loadState(const ossimKeywordlist &kwl, const char *prefix=0)
Method to the load (recreate) the state of an object from a keyword list.
virtual ossim_uint32 getTileHeight() const
Returns the default processing tile height.
virtual ossim_uint32 getNumberOfDecimationLevels() const
Will return the number of resolution levels.
virtual ossim_uint32 getTileWidth() const
Returns the default processing tile width.
virtual double getMinPixelValue(ossim_uint32 band=0) const
Returns the min pixel of the band.
double ossim_float64
#define TYPE_DATA
Definition: ossimRtti.h:339
unsigned int ossim_uint32
ossimRefPtr< ossimMultiResLevelHistogram > theHistogram
ossimScalarType
virtual void disconnectInputEvent(ossimConnectionEvent &)
virtual ossimScalarType getOutputScalarType() const
This will be used to query the output pixel type of the tile source.
virtual double getMaxPixelValue(ossim_uint32 band=0) const
Returns the max pixel of the band.
long long ossim_int64
virtual void initialize()=0
virtual bool canConnectMyInputTo(ossim_int32 myInputIndex, const ossimConnectableObject *object) const =0
required to be overriden by derived classes
virtual ossim_uint32 getNumberOfInputBands() const =0
ossimRefPtr< ossimImageData > theBlankTile
virtual void getDecimationFactor(ossim_uint32 resLevel, ossimDpt &result) const
Will return the decimation factor for the given resolution level.
virtual double getNullPixelValue(ossim_uint32 band=0) const
Each band has a null pixel associated with it.
virtual void connectInputEvent(ossimConnectionEvent &)
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23
virtual void getDecimationFactors(std::vector< ossimDpt > &decimations) const
Will return an array of all decimations for each resolution level.
int ossim_int32
virtual ossimRefPtr< ossimImageData > getTile(const ossimIpt &origin, ossim_uint32 resLevel=0)