18 static ossimTrace traceDebug (
"ossimImageCombiner:debug");
26 theLargestNumberOfInputBands(0),
27 theInputToPassThrough(0),
28 theHasDifferentInputs(false),
40 bool inputListIsFixedFlag,
41 bool outputListIsFixedFlag)
46 outputListIsFixedFlag),
47 theLargestNumberOfInputBands(0),
48 theInputToPassThrough(0),
49 theHasDifferentInputs(false),
63 theLargestNumberOfInputBands(0),
64 theInputToPassThrough(0),
65 theHasDifferentInputs(false),
70 for(
ossim_uint32 index = 0; index < inputSources.size(); ++index)
85 static const char* MODULE =
"ossimImageCombiner::getBoundingRect";
92 double scale = 1.0/std::pow(2.0, (
double)resLevel);
112 CLOG <<
"rect " << inputIndex <<
" = " << result << endl;
121 CLOG <<
"resulting bounding rect = " << result << endl;
198 const char* MODULE =
"ossimImageCombiner::getMinPixelValue";
230 CLOG <<
"min pixel returned is = " << result;
238 const char* MODULE =
"ossimImageCombiner::getMaxPixelValue";
270 CLOG <<
"max pixel returned is = " << result;
302 if(current != scalarType)
306 scalarType = current;
315 scalarType = current;
362 return getNextTile(returnedIdx, tileRect, resLevel);
399 double scale = 1.0/std::pow(2.0, (
double)resLevel);
407 rect = rect * scalar;
413 result = temp->
getTile(tileRect, resLevel);
464 double scale = 1.0/std::pow(2.0, (
double)resLevel);
472 rect = rect * scalar;
576 double scale = 1.0/std::pow(2.0, (
double)resLevel);
580 for(
ossim_uint32 inputIndex = 0; inputIndex < maxIndex; ++inputIndex)
603 double scale = 1.0/std::pow(2.0, (
double)resLevel);
615 result.push_back(inputIndex);
647 const char* prefix)
const 670 for(
ossim_uint32 inputIndex = 0; inputIndex < inputSize; ++inputIndex)
virtual void propertyEvent(ossimPropertyEvent &event)
virtual void connectInputEvent(ossimConnectionEvent &event)
virtual bool addListener(ossimListener *listener)
virtual ossimIrect getBoundingRect(ossim_uint32 resLevel=0) const
This will return the bounding rect of the source.
virtual ossimIrect getBoundingRect(ossim_uint32 resLevel=0) const
This will return the bounding rect of the source.
ossim_uint32 theInputToPassThrough
virtual ossim_uint32 getNumberOfBands() const
virtual bool canConnectMyInputTo(ossim_int32 inputIndex, const ossimConnectableObject *object) const
required to be overriden by derived classes
virtual ossim_uint32 getNumberOfInputBands() const
Returns the number of bands available from the input.
This will be a base for all combiners.
Represents serializable keyword/value map.
virtual ossim_uint32 getNumberOfOutputBands() const
Returns the number of bands in a tile returned from this TileSource.
virtual double getMinPixelValue(ossim_uint32 band=0) const
Returns the min pixel of the band.
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 ~ossimImageCombiner()
double nan()
Method to return ieee floating point double precision NAN.
virtual void disconnectInputEvent(ossimConnectionEvent &event)
virtual ossimRefPtr< ossimImageData > getNextNormTile(ossim_uint32 &returnedIdx, const ossim_uint32 index, const ossimIrect &tileRect, ossim_uint32 resLevel=0)
virtual void getOverlappingImages(std::vector< ossim_uint32 > &result, const ossimIrect &rect, ossim_uint32 resLevel=0) const
Used to populate the result with the index of the overlapping images.
virtual ossim_uint32 getTileHeight() const
Returns the default processing tile height.
virtual ossimDataObjectStatus getDataObjectStatus() const
ossim_uint32 theCurrentIndex
bool intersects(const ossimIrect &rect) const
virtual void initialize()
Initialize the data buffer.
virtual ossim_uint32 getTileWidth() const
Returns the default processing tile width.
ossimConnectableObject * getInput(ossim_uint32 index=0)
returns the object at the specified index.
virtual double getMinPixelValue(ossim_uint32 band=0) const
Returns the min pixel of the band.
virtual ossimRefPtr< ossimImageData > getNextTile(ossim_uint32 &returnedIdx, const ossim_uint32 startIdx, const ossimIrect &tileRect, ossim_uint32 resLevel=0)
#define RTTI_DEF2(cls, name, b1, b2)
std::vector< ossimRefPtr< ossimConnectableObject > > ConnectableObjectList
ossim_uint32 theLargestNumberOfInputBands
virtual double getMaxPixelValue(ossim_uint32 band=0) const
Returns the max pixel of the band.
virtual void setImageRectangleAndBands(const ossimIrect &rect, ossim_uint32 numberOfBands)
virtual void initialize()
std::vector< ossimIrect > theFullResBounds
unsigned int ossim_uint32
ossimRefPtr< ossimImageData > theNormTile
32 bit normalized floating point
virtual ossimIrect getImageRectangle() const
virtual void copyTileToNormalizedBuffer(ossim_float64 *buf) const
Copies entire tile to buf passed in.
OSSIM_DLL ossim_uint32 scalarSizeInBytes(ossimScalarType scalarType)
virtual double getNullPixelValue(ossim_uint32 band=0) const
Each band has a null pixel associated with it.
virtual ossim_int32 connectMyInputTo(ossimConnectableObject *inputObject, bool makeOutputConnection=true, bool createEventFlag=true)
Will try to connect this objects input to the passed in object.
virtual ossim_uint32 getNumberOfOverlappingImages(const ossimIrect &rect, ossim_uint32 resLevel=0) const
Used to retrieve the number of overlapping images withint the given rect.
virtual bool hasDifferentInputs() const
virtual ossimScalarType getOutputScalarType() const
This will be used to query the output pixel type of the tile source.
void precomputeBounds() const
virtual double getMaxPixelValue(ossim_uint32 band=0) const
Returns the max pixel of the band.
virtual bool saveState(ossimKeywordlist &kwl, const char *prefix=0) const
Method to save the state of an object to a keyword list.
virtual const void * getBuf() const
bool theComputeFullResBoundsFlag
virtual ossim_uint32 getNumberOfInputs() const
Returns the number of input objects.
virtual void refreshEvent(ossimRefreshEvent &event)
virtual void setDataObjectStatus(ossimDataObjectStatus status) const
Full list found in ossimConstants.h.
virtual ossimScalarType getOutputScalarType() const
This will be used to query the output pixel type of the tile source.
virtual bool loadState(const ossimKeywordlist &kwl, const char *prefix=NULL)
Method to the load (recreate) the state of an object from a keyword list.
ossimDataObjectStatus
Definitions for data object status.
virtual bool saveState(ossimKeywordlist &kwl, const char *prefix=NULL) const
Method to save the state of an object to a keyword list.
virtual ossim_uint32 getTileHeight() const
Returns the default processing tile height.
ossimIrect combine(const ossimIrect &rect) const
virtual void updateRects()
This will go through and precompute the bounding rects of each input image.
bool theHasDifferentInputs
virtual double getNullPixelValue(ossim_uint32 band=0) const
Each band has a null pixel associated with it.
virtual ossim_uint32 getTileWidth() const
Returns the default processing tile width.
virtual ossimRefPtr< ossimImageData > getTile(const ossimIpt &origin, ossim_uint32 resLevel=0)
virtual bool removeListener(ossimListener *listener)