OSSIM - Open Source Software Image Map
Version 1.9.0 (20180803)
|
This filter outputs a single band that is the weighted average of all the input bands retrieved from the getTile. More...
#include <ossimBandAverageFilter.h>
Public Member Functions | |
ossimBandAverageFilter () | |
ossimBandAverageFilter (ossimImageSource *input, const std::vector< double > &weights) | |
virtual | ~ossimBandAverageFilter () |
virtual ossim_uint32 | getNumberOfOutputBands () const |
The data object argument is deprecated and should not be used. More... | |
virtual ossimRefPtr< ossimImageData > | getTile (const ossimIrect &rect, ossim_uint32 resLevel=0) |
Since this filter is going to operate in native pixel type we will use a tmeplate method to do this. More... | |
virtual double | getNullPixelValue (ossim_uint32 band=0) const |
Since we are merging all bands we will use the null pix of the first input band as our null pix. More... | |
virtual double | getMinPixelValue (ossim_uint32 band=0) const |
We will use the min of all bands as our min. More... | |
virtual double | getMaxPixelValue (ossim_uint32 band=0) const |
We will use the max of all bands as our max. More... | |
double | getWeight (ossim_uint32 band) const |
simple access method to get a weight More... | |
void | setWeight (ossim_uint32 band, double weight) |
Sinple access method to set the weight of a band, We make sure that it is a positive weight. More... | |
virtual void | initialize () |
allocates its tile buffer More... | |
virtual bool | loadState (const ossimKeywordlist &kwl, const char *prefix=0) |
loads its weights to a keywordlist More... | |
virtual bool | saveState (ossimKeywordlist &kwl, const char *prefix=0) const |
Saves its weights to a keywordlist. More... | |
![]() | |
ossimImageSourceFilter (ossimObject *owner=NULL) | |
ossimImageSourceFilter (ossimImageSource *inputSource) | |
ossimImageSourceFilter (ossimObject *owner, ossimImageSource *inputSource) | |
virtual void | getOutputBandList (std::vector< ossim_uint32 > &bandList) const |
virtual ossim_uint32 | getNumberOfInputBands () const |
bool | canConnectMyInputTo (ossim_int32 inputIndex, const ossimConnectableObject *object) const |
required to be overriden by derived classes More... | |
virtual void | connectInputEvent (ossimConnectionEvent &event) |
virtual void | disconnectInputEvent (ossimConnectionEvent &event) |
virtual void | propertyEvent (ossimPropertyEvent &event) |
virtual void | refreshEvent (ossimRefreshEvent &event) |
virtual void | setProperty (ossimRefPtr< ossimProperty > property) |
virtual ossimRefPtr< ossimProperty > | getProperty (const ossimString &name) const |
virtual void | getPropertyNames (std::vector< ossimString > &propertyNames) const |
![]() | |
ossimImageSource (ossimObject *owner=0) | |
ossimImageSource (ossimObject *owner, ossim_uint32 inputListSize, ossim_uint32 outputListSize, bool inputListIsFixedFlag=true, bool outputListIsFixedFlag=true) | |
virtual | ~ossimImageSource () |
virtual ossimRefPtr< ossimImageData > | getTile (const ossimIpt &origin, ossim_uint32 resLevel=0) |
virtual bool | getTile (ossimImageData *result, ossim_uint32 resLevel=0) |
Method to get a tile. More... | |
virtual ossimObject * | getObject () |
For RTTI support. More... | |
virtual const ossimObject * | getObject () const |
For RTTI support. More... | |
virtual void | getDecimationFactor (ossim_uint32 resLevel, ossimDpt &result) const |
Will return the decimation factor for the given resolution level. More... | |
virtual void | getDecimationFactors (std::vector< ossimDpt > &decimations) const |
Will return an array of all decimations for each resolution level. More... | |
virtual ossim_uint32 | getNumberOfDecimationLevels () const |
Will return the number of resolution levels. More... | |
virtual ossimScalarType | getOutputScalarType () const |
This will be used to query the output pixel type of the tile source. More... | |
virtual ossim_uint32 | getTileWidth () const |
Returns the default processing tile width. More... | |
virtual ossim_uint32 | getTileHeight () const |
Returns the default processing tile height. More... | |
virtual ossimIrect | getBoundingRect (ossim_uint32 resLevel=0) const |
This will return the bounding rect of the source. More... | |
virtual void | getBoundingRect (ossimIrect &rect, ossim_uint32 resLevel=0) const |
Gets the bounding rectangle of the source. More... | |
virtual void | getValidImageVertices (std::vector< ossimIpt > &validVertices, ossimVertexOrdering ordering=OSSIM_CLOCKWISE_ORDER, ossim_uint32 resLevel=0) const |
ordering specifies how the vertices should be arranged. More... | |
virtual ossimRefPtr< ossimImageGeometry > | getImageGeometry () |
Returns the image geometry object associated with this tile source or NULL if not defined. More... | |
virtual void | setImageGeometry (const ossimImageGeometry *geom) |
Default implementation sets geometry of the first input to the geometry specified. More... | |
virtual void | saveImageGeometry () const |
Default method to call input's saveImageGeometry. More... | |
virtual void | saveImageGeometry (const ossimFilename &geometry_file) const |
Default method to call input's saveImageGeometry. More... | |
virtual bool | isIndexedData () const |
![]() | |
ossimSource (ossimObject *owner=0) | |
ossimSource (ossimObject *owner, ossim_uint32 inputListSize, ossim_uint32 outputListSize, bool inputListIsFixedFlag=true, bool outputListIsFixedFlag=true) | |
virtual | ~ossimSource () |
virtual bool | isSourceEnabled () const |
virtual void | enableSource () |
virtual void | disableSource () |
virtual bool | getEnableFlag () const |
virtual void | setEnableFlag (bool flag) |
virtual bool | isInitialized () const |
virtual void | setInitializedFlag (bool flag) |
virtual std::ostream & | print (std::ostream &out) const |
Outputs theErrorStatus as an ossimErrorCode and an ossimString. More... | |
![]() | |
ossimConnectableObject (ossimObject *owner=0) | |
Base constructor of this object. More... | |
ossimConnectableObject (ossimObject *owner, ossim_int32 inputListSize, ossim_int32 outputListSize, bool inputListIsFixedFlag=true, bool outputListIsFixedFlag=true) | |
virtual | ~ossimConnectableObject () |
void | setId (const ossimId &id) |
All connectable objects will have id's. More... | |
const ossimId & | getId () const |
Will allow us to get this object's id. More... | |
const ossimObject * | getOwner () const |
Fetches the current owner, most likely a container but not limited to one. More... | |
virtual void | changeOwner (ossimObject *owner) |
Permits changing the object's owner. More... | |
virtual void | setDescription (const ossimString &description) |
virtual ossimString | getDescription () const |
virtual bool | isConnected (ossimConnectableObjectDirectionType direction=CONNECTABLE_DIRECTION_INPUT) const |
will check the direction specified to see if all slots are full. More... | |
OSSIM_DEPRECATE_METHOD (virtual ossimConnectableObject *findConnectableObject(const ossimId &id)) | |
OSSIM_DEPRECATE_METHOD (virtual ossimConnectableObject *findObjectOfType(RTTItypeid typeId, ossimConnectableObjectDirectionType directionType, bool recurse=true)) | |
OSSIM_DEPRECATE_METHOD (virtual ossimConnectableObject *findObjectOfType(const ossimString &obj, ossimConnectableObjectDirectionType directionType, bool recurse=true)) | |
OSSIM_DEPRECATE_METHOD (virtual ossimConnectableObject *findInputObjectOfType(const ossimString &className)) | |
virtual ossim_int32 | findInputIndex (const ossimConnectableObject *object) |
Return a valid index of the input list if the passed in object is found else return -1. More... | |
virtual ossim_int32 | findInputIndex (const ossimId &id) |
Return a valid index of the input list if the passed id is found else return -1. More... | |
virtual ossim_int32 | findOutputIndex (const ossimConnectableObject *object) |
Return a valid index of the output list if the passed in object is found else return -1. More... | |
virtual ossim_int32 | findOutputIndex (const ossimId &id) |
Return a valid index of the output list if the passed in object is found else return -1. More... | |
virtual ossim_int32 | getMyInputIndexToConnectTo (ossimConnectableObject *object) const |
Should return the first available index to connect to. More... | |
virtual ossim_int32 | getMyOutputIndexToConnectTo (ossimConnectableObject *object) const |
Should return the first available index to connect to. More... | |
virtual bool | canConnectMyOutputTo (ossim_int32 myOutputIndex, const ossimConnectableObject *object) const |
default implementation is to allow anyone to connect to us. More... | |
virtual void | disconnect (ossimConnectableObject *object=0) |
Will disconnect the object passed in. More... | |
virtual void | disconnect (const ossimId &id) |
Will disconnect the object passed in. More... | |
virtual ossimRefPtr< ossimConnectableObject > | disconnectMyInput (ossim_int32 inputIndex, bool disconnectOutputFlag=true, bool createEventFlag=true) |
Will disconnect the object at the given input index and generate a connection event. More... | |
virtual void | disconnectMyInput (ossimConnectableObject *input, bool disconnectOutputFlag=true, bool createEventFlag=true) |
Finds the index of the passed in input and calls disconnectMyInput(inputIndex, disconnectOutputFlag, createEventFlag);. More... | |
virtual void | disconnectMyInputs (ConnectableObjectList &inputList, bool disconnectOutputFlag=true, bool createEventFlag=true) |
virtual ossimRefPtr< ossimConnectableObject > | disconnectMyOutput (ossim_int32 outputIndex, bool disconnectInputFlag=true, bool createEventFlag=true) |
Will disconnect the object at the given output index and generate a connection event. More... | |
virtual void | disconnectMyOutput (ossimConnectableObject *output, bool disconnectInputFlag=true, bool createEventFlag=true) |
Will disconnect the output object. More... | |
virtual void | disconnectMyOutputs (ConnectableObjectList &outputList, bool disconnectOutputFlag=true, bool createEventFlag=true) |
virtual void | disconnectAllInputs () |
Will disconnect all of the input objects. More... | |
virtual void | disconnectAllOutputs () |
Will disconnect all of the output objects. More... | |
virtual ossim_int32 | connectMyInputTo (ossimConnectableObject *inputObject, bool makeOutputConnection=true, bool createEventFlag=true) |
Will try to connect this objects input to the passed in object. More... | |
virtual ossim_int32 | connectMyInputTo (ossim_int32 inputIndex, ossimConnectableObject *inputObject, bool makeOutputConnection=true, bool createEventFlag=true) |
Will connect the specified input to the passed in object. More... | |
virtual bool | connectMyInputTo (ConnectableObjectList &inputList, bool makeOutputConnection=true, bool createEventFlag=true) |
virtual ossim_int32 | connectMyOutputTo (ossimConnectableObject *outputObject, bool makeInputConnection=true, bool createEventFlag=true) |
Will try to connect this objects output to the passed in object. More... | |
virtual bool | connectMyOutputTo (ConnectableObjectList &outputList, bool makeInputConnection=true, bool createEventFlag=true) |
virtual bool | connectInputList (ConnectableObjectList &inputList) |
Will disconnect itself from all inputs and reset to the passed in input list. More... | |
virtual bool | connectOutputList (ConnectableObjectList &outputList) |
Will disconnect itself from all outputs and reset to the passed in output list. More... | |
virtual ossim_uint32 | getNumberOfInputs () const |
Returns the number of input objects. More... | |
virtual ossim_uint32 | getNumberOfOutputs () const |
Return the number of output objects. More... | |
ossimConnectableObject * | getInput (ossim_uint32 index=0) |
returns the object at the specified index. More... | |
const ossimConnectableObject * | getInput (ossim_uint32 index=0) const |
returns the object at the specified index. More... | |
ossimConnectableObject * | getOutput (ossim_uint32 index=0) |
returns the object at the specified index. More... | |
const ossimConnectableObject * | getOutput (ossim_uint32 index=0) const |
returns the object at the specified index. More... | |
virtual void | setNumberOfInputs (ossim_int32 numberOfInputs) |
Will set the number of inputs. More... | |
virtual bool | getInputListIsFixedFlag () const |
virtual bool | getOutputListIsFixedFlag () const |
virtual void | setNumberOfOutputs (ossim_int32 numberOfInputs) |
Will set the number of outputs. More... | |
const ConnectableObjectList & | getInputList () const |
const ConnectableObjectList & | getOutputList () const |
ConnectableObjectList & | getInputList () |
ConnectableObjectList & | getOutputList () |
OSSIM_DEPRECATE_METHOD (virtual void findAllObjectsOfType(ConnectableObjectList &result, const RTTItypeid &typeInfo, bool recurse=true)) | |
OSSIM_DEPRECATE_METHOD (virtual void findAllObjectsOfType(ConnectableObjectList &result, const ossimString &className, bool recurse=true)) | |
virtual void | propagateEventToOutputs (ossimEvent &event) |
virtual void | propagateEventToInputs (ossimEvent &event) |
virtual void | setProperty (const ossimString &name, const ossimString &value) |
virtual ossim_uint32 | saveStateOfAllInputs (ossimKeywordlist &kwl, bool saveThisStateFlag=true, ossim_uint32 objectIndex=1, const char *prefix=0) const |
Save the state of all inputs to a keyword list. More... | |
virtual bool | fillContainer (ossimConnectableContainer &container) |
Inserts this object and all of its children and inputs into the container provided. More... | |
bool | moveInputUp (const ossimId &id) |
Moves the input connection matching id up one in the connection list. More... | |
bool | moveInputDown (const ossimId &id) |
Moves the input connection matching id down one in the connection list. More... | |
bool | moveInputToTop (const ossimId &id) |
Moves the input connection matching id to the top of the connection list. More... | |
bool | moveInputToBottom (const ossimId &id) |
Moves the input connection matching id to the bottom of the connection list. More... | |
virtual void | accept (ossimVisitor &visitor) |
We will add a visitor interface for all connectable objects. More... | |
![]() | |
ossimObject () | |
virtual | ~ossimObject () |
virtual ossimObject * | dup () const |
virtual ossimString | getShortName () const |
virtual ossimString | getLongName () const |
virtual ossimString | getClassName () const |
virtual RTTItypeid | getType () const |
virtual bool | canCastTo (ossimObject *obj) const |
virtual bool | canCastTo (const RTTItypeid &id) const |
virtual bool | canCastTo (const ossimString &parentClassName) const |
virtual bool | isEqualTo (const ossimObject &obj, ossimCompareType compareType=OSSIM_COMPARE_FULL) const |
![]() | |
ossimReferenced () | |
ossimReferenced (const ossimReferenced &) | |
ossimReferenced & | operator= (const ossimReferenced &) |
void | ref () const |
increment the reference count by one, indicating that this object has another pointer which is referencing it. More... | |
void | unref () const |
decrement the reference count by one, indicating that a pointer to this object is referencing it. More... | |
void | unref_nodelete () const |
decrement the reference count by one, indicating that a pointer to this object is referencing it. More... | |
int | referenceCount () const |
![]() | |
ossimListenerManager () | |
virtual | ~ossimListenerManager () |
virtual void | fireEvent (ossimEvent &event) |
virtual bool | addListener (ossimListener *listener) |
virtual bool | removeListener (ossimListener *listener) |
virtual bool | findListener (ossimListener *listener) |
![]() | |
ossimPropertyInterface () | |
virtual | ~ossimPropertyInterface () |
virtual ossimString | getPropertyValueAsString (const ossimString &name) const |
void | getPropertyList (std::vector< ossimRefPtr< ossimProperty > > &propertyList) const |
void | setProperties (std::vector< ossimRefPtr< ossimProperty > > &propertyList) |
![]() | |
ossimErrorStatusInterface () | |
virtual | ~ossimErrorStatusInterface () |
virtual ossimErrorCode | getErrorStatus () const |
virtual ossimString | getErrorStatusString () const |
virtual void | setErrorStatus (ossimErrorCode error_status) const |
virtual void | setErrorStatus () const |
virtual void | clearErrorStatus () const |
bool | hasError () const |
![]() | |
ossimConnectableObjectListener () | |
virtual | ~ossimConnectableObjectListener () |
virtual void | processEvent (ossimEvent &event) |
ProcessEvent. More... | |
virtual void | objectDestructingEvent (ossimObjectDestructingEvent &) |
virtual void | connectionEvent (ossimConnectionEvent &) |
virtual void | disconnectOutputEvent (ossimConnectionEvent &) |
virtual void | connectOutputEvent (ossimConnectionEvent &) |
virtual void | addObjectEvent (ossimContainerEvent &) |
virtual void | removeObjectEvent (ossimContainerEvent &) |
virtual void | containerEvent (ossimContainerEvent &) |
![]() | |
ossimListener () | |
virtual | ~ossimListener () |
void | enableListener () |
void | disableListener () |
void | setListenerEnableFlag (bool flag) |
bool | isListenerEnabled () const |
bool | getListenerEnableFlag () const |
Protected Member Functions | |
void | checkWeights () |
template<class T > | |
void | averageInput (T dummyVariable, ossimRefPtr< ossimImageData > inputDataObject) |
![]() | |
virtual | ~ossimImageSourceFilter () |
![]() | |
ossimImageSource (const ossimImageSource &rhs) | |
const ossimImageSource & | operator= (const ossimImageSource &) |
![]() | |
ossimSource (const ossimSource &rhs) | |
const ossimSource & | operator= (const ossimSource &rhs) |
![]() | |
ossimConnectableObject * | findObjectOfType (ConnectableObjectList *connectableList, ossimVisitor &visitor) |
![]() | |
virtual | ~ossimReferenced () |
![]() | |
ossimListenerManager (const ossimListenerManager &rhs) | |
Additional Inherited Members | |
![]() | |
enum | ossimConnectableObjectDirectionType { CONNECTABLE_DIRECTION_NONE = 0, CONNECTABLE_DIRECTION_INPUT = 1, CONNECTABLE_DIRECTION_OUTPUT = 2 } |
typedef std::vector< ossimRefPtr< ossimConnectableObject > > | ConnectableObjectList |
This filter outputs a single band that is the weighted average of all the input bands retrieved from the getTile.
This filter will work with any input scalar type. Note the OSSIMDLLEXPORT is used for the different compilers that require importing and exporting symbols for shared library support.
Definition at line 24 of file ossimBandAverageFilter.h.
ossimBandAverageFilter::ossimBandAverageFilter | ( | ) |
Definition at line 29 of file ossimBandAverageFilter.cpp.
ossimBandAverageFilter::ossimBandAverageFilter | ( | ossimImageSource * | input, |
const std::vector< double > & | weights | ||
) |
Definition at line 35 of file ossimBandAverageFilter.cpp.
|
virtual |
Definition at line 43 of file ossimBandAverageFilter.cpp.
|
protected |
Definition at line 257 of file ossimBandAverageFilter.cpp.
References ossimImageData::getBuf(), ossimImageData::getHeight(), ossimImageData::getNullPix(), ossimImageData::getNumberOfBands(), ossimImageData::getWidth(), theTile, and theWeights.
Referenced by getTile().
|
protected |
Definition at line 234 of file ossimBandAverageFilter.cpp.
References ossimImageSource::getNumberOfOutputBands(), ossimImageSourceFilter::theInputConnection, theTile, and theWeights.
Referenced by initialize().
|
virtual |
We will use the max of all bands as our max.
If we aredisabled we just return the inputs max
Reimplemented from ossimImageSource.
Definition at line 210 of file ossimBandAverageFilter.cpp.
References ossim::defaultMin(), ossimImageSource::getMaxPixelValue(), ossimImageSource::getNumberOfOutputBands(), ossimSource::isSourceEnabled(), OSSIM_DOUBLE, and ossimImageSourceFilter::theInputConnection.
|
virtual |
We will use the min of all bands as our min.
If we aredisabled we just return the inputs min
Reimplemented from ossimImageSource.
Definition at line 186 of file ossimBandAverageFilter.cpp.
References ossim::defaultMax(), ossimImageSource::getMinPixelValue(), ossimImageSource::getNumberOfOutputBands(), ossimSource::isSourceEnabled(), OSSIM_DOUBLE, and ossimImageSourceFilter::theInputConnection.
|
virtual |
Since we are merging all bands we will use the null pix of the first input band as our null pix.
If we are disabled we just return the input s null
Reimplemented from ossimImageSource.
Definition at line 176 of file ossimBandAverageFilter.cpp.
References ossimImageSource::getMinPixelValue(), ossimImageSource::getNullPixelValue(), and ossimSource::isSourceEnabled().
|
virtual |
The data object argument is deprecated and should not be used.
eventually we will remove it from the base classes. This method will return 1 if our source is enabled else it calls the base class getNumberOfOutputBands.
Reimplemented from ossimImageSource.
Definition at line 47 of file ossimBandAverageFilter.cpp.
References ossimImageSource::getNumberOfOutputBands(), and ossimSource::isSourceEnabled().
|
virtual |
Since this filter is going to operate in native pixel type we will use a tmeplate method to do this.
It will check the scalar tpe of the input and then cat it to set the template variabel to be used within the template method averageInput.
Reimplemented from ossimImageSource.
Definition at line 57 of file ossimBandAverageFilter.cpp.
References averageInput(), ossimObject::getClassName(), ossimDataObject::getDataObjectStatus(), ossimImageData::getNumberOfBands(), ossimRectilinearDataObject::getScalarType(), ossimImageSource::getTile(), initialize(), ossimSource::isSourceEnabled(), ossimImageData::makeBlank(), OSSIM_DOUBLE, OSSIM_EMPTY, ossimErrorCodes::OSSIM_ERROR, OSSIM_FLOAT, OSSIM_NORMALIZED_DOUBLE, OSSIM_NORMALIZED_FLOAT, OSSIM_NULL, OSSIM_SSHORT16, OSSIM_UCHAR, OSSIM_USHORT11, OSSIM_USHORT12, OSSIM_USHORT13, OSSIM_USHORT14, OSSIM_USHORT15, OSSIM_USHORT16, ossimSetError(), ossimImageData::setImageRectangle(), ossimImageSourceFilter::theInputConnection, theTile, ossimRefPtr< T >::valid(), and ossimImageData::validate().
double ossimBandAverageFilter::getWeight | ( | ossim_uint32 | band | ) | const |
simple access method to get a weight
Definition at line 382 of file ossimBandAverageFilter.cpp.
References theWeights.
|
virtual |
allocates its tile buffer
Reimplemented from ossimImageSourceFilter.
Definition at line 159 of file ossimBandAverageFilter.cpp.
References checkWeights(), ossimImageDataFactory::create(), ossimImageSourceFilter::initialize(), ossimImageData::initialize(), ossimImageDataFactory::instance(), ossimImageSourceFilter::theInputConnection, and theTile.
Referenced by getTile().
|
virtual |
loads its weights to a keywordlist
Reimplemented from ossimImageSourceFilter.
Definition at line 329 of file ossimBandAverageFilter.cpp.
References ossimKeywordlist::find().
|
virtual |
Saves its weights to a keywordlist.
Reimplemented from ossimImageSourceFilter.
Definition at line 359 of file ossimBandAverageFilter.cpp.
References ossimKeywordlist::add(), theWeights, and ossimString::trim().
void ossimBandAverageFilter::setWeight | ( | ossim_uint32 | band, |
double | weight | ||
) |
Sinple access method to set the weight of a band, We make sure that it is a positive weight.
Definition at line 392 of file ossimBandAverageFilter.cpp.
References theWeights.
|
protected |
Definition at line 97 of file ossimBandAverageFilter.h.
Referenced by averageInput(), checkWeights(), getTile(), and initialize().
|
protected |
Definition at line 98 of file ossimBandAverageFilter.h.
Referenced by averageInput(), checkWeights(), getWeight(), saveState(), and setWeight().