OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ossimVpfAnnotationSource Class Reference

#include <ossimVpfAnnotationSource.h>

Inheritance diagram for ossimVpfAnnotationSource:
ossimGeoAnnotationSource ossimAnnotationSource ossimViewInterface ossimImageSourceFilter ossimImageSource ossimConnectableObjectListener ossimSource ossimListener ossimConnectableObject ossimErrorStatusInterface ossimObject ossimListenerManager ossimPropertyInterface ossimReferenced

Public Member Functions

 ossimVpfAnnotationSource ()
 
virtual bool open ()
 
virtual bool open (const ossimFilename &file)
 
virtual bool isOpen () const
 
virtual void close ()
 
virtual ossimFilename getFilename () const
 
virtual void computeBoundingRect ()
 
virtual void transformObjects (ossimImageGeometry *geom=0)
 
virtual bool saveState (ossimKeywordlist &kwl, const char *prefix=NULL) const
 Saves the current state of this object. More...
 
virtual bool loadState (const ossimKeywordlist &kwl, const char *prefix=NULL)
 Method to the load (recreate) the state of an object from a keyword list. More...
 
virtual void drawAnnotations (ossimRefPtr< ossimImageData > tile)
 
virtual void getAllFeatures (std::vector< ossimVpfAnnotationFeatureInfo *> &features)
 
virtual void setAllFeatures (const std::vector< ossimVpfAnnotationFeatureInfo *> &features)
 
- Public Member Functions inherited from ossimGeoAnnotationSource
 ossimGeoAnnotationSource (ossimImageGeometry *geom=NULL, bool ownsProjectionFlag=false)
 
 ossimGeoAnnotationSource (ossimImageSource *inputSource, ossimImageGeometry *geom=NULL, bool ownsProjectionFlag=false)
 
virtual bool addObject (ossimAnnotationObject *anObject)
 
virtual void setGeometry (ossimImageGeometry *projection)
 
virtual bool setView (ossimObject *baseObject)
 
virtual ossimRefPtr< ossimImageGeometrygetImageGeometry ()
 Returns the image geometry object associated with this tile source or NULL if not defined. More...
 
virtual ossimObjectgetView ()
 
virtual const ossimObjectgetView () const
 
- Public Member Functions inherited from ossimAnnotationSource
 ossimAnnotationSource (ossimImageSource *inputSource=0)
 
virtual ~ossimAnnotationSource ()
 
virtual ossim_uint32 getNumberOfOutputBands () const
 Returns the number of bands in a tile returned from this TileSource. More...
 
virtual ossimScalarType getOutputScalarType () const
 This will be used to query the output pixel type of the tile source. More...
 
virtual ossimRefPtr< ossimImageDatagetTile (const ossimIrect &tileRect, ossim_uint32 resLevel=0)
 
virtual void initialize ()
 
virtual ossimIrect getBoundingRect (ossim_uint32 resLevel=0) const
 
virtual void setNumberOfBands (ossim_uint32 bands)
 
virtual bool deleteObject (ossimAnnotationObject *anObject)
 
AnnotationObjectListType pickObjects (const ossimDpt &imagePoint)
 
AnnotationObjectListType pickObjects (const ossimDrect &imageRect)
 
const AnnotationObjectListTypegetObjectList () const
 
AnnotationObjectListTypegetObjectList ()
 
void deleteAll ()
 
- Public Member Functions inherited from ossimImageSourceFilter
 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< ossimPropertygetProperty (const ossimString &name) const
 
virtual void getPropertyNames (std::vector< ossimString > &propertyNames) const
 
- Public Member Functions inherited from ossimImageSource
 ossimImageSource (ossimObject *owner=0)
 
 ossimImageSource (ossimObject *owner, ossim_uint32 inputListSize, ossim_uint32 outputListSize, bool inputListIsFixedFlag=true, bool outputListIsFixedFlag=true)
 
virtual ~ossimImageSource ()
 
virtual ossimRefPtr< ossimImageDatagetTile (const ossimIpt &origin, ossim_uint32 resLevel=0)
 
virtual bool getTile (ossimImageData *result, ossim_uint32 resLevel=0)
 Method to get a tile. More...
 
virtual ossimObjectgetObject ()
 For RTTI support. More...
 
virtual const ossimObjectgetObject () 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 ossim_uint32 getTileWidth () const
 Returns the default processing tile width. More...
 
virtual ossim_uint32 getTileHeight () const
 Returns the default processing tile height. More...
 
virtual double getNullPixelValue (ossim_uint32 band=0) const
 Each band has a null pixel associated with it. More...
 
virtual double getMinPixelValue (ossim_uint32 band=0) const
 Returns the min pixel of the band. More...
 
virtual double getMaxPixelValue (ossim_uint32 band=0) const
 Returns the max pixel of the band. 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 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
 
- Public Member Functions inherited from ossimSource
 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...
 
- Public Member Functions inherited from ossimConnectableObject
 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 ossimIdgetId () const
 Will allow us to get this object's id. More...
 
const ossimObjectgetOwner () 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< ossimConnectableObjectdisconnectMyInput (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< ossimConnectableObjectdisconnectMyOutput (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...
 
ossimConnectableObjectgetInput (ossim_uint32 index=0)
 returns the object at the specified index. More...
 
const ossimConnectableObjectgetInput (ossim_uint32 index=0) const
 returns the object at the specified index. More...
 
ossimConnectableObjectgetOutput (ossim_uint32 index=0)
 returns the object at the specified index. More...
 
const ossimConnectableObjectgetOutput (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 ConnectableObjectListgetInputList () const
 
const ConnectableObjectListgetOutputList () const
 
ConnectableObjectListgetInputList ()
 
ConnectableObjectListgetOutputList ()
 
 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...
 
- Public Member Functions inherited from ossimObject
 ossimObject ()
 
virtual ~ossimObject ()
 
virtual ossimObjectdup () 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
 
- Public Member Functions inherited from ossimReferenced
 ossimReferenced ()
 
 ossimReferenced (const ossimReferenced &)
 
ossimReferencedoperator= (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
 
- Public Member Functions inherited from ossimListenerManager
 ossimListenerManager ()
 
virtual ~ossimListenerManager ()
 
virtual void fireEvent (ossimEvent &event)
 
virtual bool addListener (ossimListener *listener)
 
virtual bool removeListener (ossimListener *listener)
 
virtual bool findListener (ossimListener *listener)
 
- Public Member Functions inherited from ossimPropertyInterface
 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)
 
- Public Member Functions inherited from ossimErrorStatusInterface
 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
 
- Public Member Functions inherited from ossimConnectableObjectListener
 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 &)
 
- Public Member Functions inherited from ossimListener
 ossimListener ()
 
virtual ~ossimListener ()
 
void enableListener ()
 
void disableListener ()
 
void setListenerEnableFlag (bool flag)
 
bool isListenerEnabled () const
 
bool getListenerEnableFlag () const
 
- Public Member Functions inherited from ossimViewInterface
 ossimViewInterface ()
 
 ossimViewInterface (ossimObject *base)
 
virtual ~ossimViewInterface ()
 
virtual void refreshView ()
 
ossimObjectgetBaseObject ()
 

Protected Member Functions

virtual ~ossimVpfAnnotationSource ()
 
void deleteAllLibraries ()
 
bool openDatabase (const ossimFilename &file)
 
- Protected Member Functions inherited from ossimGeoAnnotationSource
virtual ~ossimGeoAnnotationSource ()
 
- Protected Member Functions inherited from ossimAnnotationSource
void allocate (const ossimIrect &rect)
 
void destroy ()
 
 ossimAnnotationSource (const ossimAnnotationSource &rhs)
 
- Protected Member Functions inherited from ossimImageSourceFilter
virtual ~ossimImageSourceFilter ()
 
- Protected Member Functions inherited from ossimImageSource
 ossimImageSource (const ossimImageSource &rhs)
 
const ossimImageSourceoperator= (const ossimImageSource &)
 
- Protected Member Functions inherited from ossimSource
 ossimSource (const ossimSource &rhs)
 
const ossimSourceoperator= (const ossimSource &rhs)
 
- Protected Member Functions inherited from ossimConnectableObject
ossimConnectableObjectfindObjectOfType (ConnectableObjectList *connectableList, ossimVisitor &visitor)
 
- Protected Member Functions inherited from ossimReferenced
virtual ~ossimReferenced ()
 
- Protected Member Functions inherited from ossimListenerManager
 ossimListenerManager (const ossimListenerManager &rhs)
 

Protected Attributes

ossimVpfDatabase theDatabase
 
ossimFilename theFilename
 
std::vector< ossimVpfAnnotationLibraryInfo * > theLibraryInfo
 
std::vector< ossimVpfAnnotationFeatureInfo * > theFeatureList
 
- Protected Attributes inherited from ossimGeoAnnotationSource
ossimRefPtr< ossimImageGeometrym_geometry
 
- Protected Attributes inherited from ossimAnnotationSource
ossimDrect theRectangle
 
ossim_uint32 theNumberOfBands
 
ossimRefPtr< ossimRgbImagetheImage
 
ossimRefPtr< ossimImageDatatheTile
 
AnnotationObjectListType theAnnotationObjectList
 
- Protected Attributes inherited from ossimImageSourceFilter
ossimImageSourcetheInputConnection
 
- Protected Attributes inherited from ossimSource
bool theEnableFlag
 
bool theInitializedFlag
 
- Protected Attributes inherited from ossimConnectableObject
ossimId theId
 
ossimString theDescription
 
ossimObjecttheOwner
 
bool theInputListIsFixedFlag
 Indicates whether the theInputObjectList is fixed. More...
 
bool theOutputListIsFixedFlag
 Indicates whether the theOutputObjectList is fixed. More...
 
ConnectableObjectList theInputObjectList
 Holds a list of input objects. More...
 
ConnectableObjectList theOutputObjectList
 Holds a list of output objects. More...
 
- Protected Attributes inherited from ossimListenerManager
std::list< ossimListener * > theListenerList
 
bool theEnabledFlag
 
std::list< ossimListener * > theDelayedAdd
 
std::list< ossimListener * > theDelayedRemove
 
bool theFireEventFlag
 
- Protected Attributes inherited from ossimErrorStatusInterface
ossimErrorCode theErrorStatus
 
- Protected Attributes inherited from ossimListener
bool theListenerEnableFlag
 
- Protected Attributes inherited from ossimViewInterface
ossimObjecttheObject
 

Additional Inherited Members

- Public Types inherited from ossimAnnotationSource
typedef std::vector< ossimRefPtr< ossimAnnotationObject > > AnnotationObjectListType
 
- Public Types inherited from ossimConnectableObject
enum  ossimConnectableObjectDirectionType { CONNECTABLE_DIRECTION_NONE = 0, CONNECTABLE_DIRECTION_INPUT = 1, CONNECTABLE_DIRECTION_OUTPUT = 2 }
 
typedef std::vector< ossimRefPtr< ossimConnectableObject > > ConnectableObjectList
 

Detailed Description

Definition at line 10 of file ossimVpfAnnotationSource.h.

Constructor & Destructor Documentation

◆ ossimVpfAnnotationSource()

ossimVpfAnnotationSource::ossimVpfAnnotationSource ( )

Definition at line 14 of file ossimVpfAnnotationSource.cpp.

References ossimImageGeometry::getProjection(), ossimGeoAnnotationSource::m_geometry, and ossimMapProjection::setMetersPerPixel().

16 {
17  if(!m_geometry)
18  {
20  }
21  ossimMapProjection* mapProj = dynamic_cast<ossimMapProjection*>(m_geometry->getProjection());
22 
23  if(mapProj)
24  {
25  mapProj->setMetersPerPixel(ossimDpt(30, 30));
26  }
27 }
ossimRefPtr< ossimImageGeometry > m_geometry
virtual void setMetersPerPixel(const ossimDpt &gsd)
Container class that holds both 2D transform and 3D projection information for an image Only one inst...
ossimGeoAnnotationSource(ossimImageGeometry *geom=NULL, bool ownsProjectionFlag=false)
const ossimProjection * getProjection() const
Access methods for projection (may be NULL pointer).

◆ ~ossimVpfAnnotationSource()

ossimVpfAnnotationSource::~ossimVpfAnnotationSource ( )
protectedvirtual

Definition at line 29 of file ossimVpfAnnotationSource.cpp.

References close().

30 {
31  close();
32 }

Member Function Documentation

◆ close()

void ossimVpfAnnotationSource::close ( )
virtual

Definition at line 76 of file ossimVpfAnnotationSource.cpp.

References ossimVpfDatabase::closeDatabase(), theDatabase, and theLibraryInfo.

Referenced by ossimVpfTileSource::close(), and ~ossimVpfAnnotationSource().

77 {
79  for(int idx = 0; idx < (int)theLibraryInfo.size(); ++idx)
80  {
81  delete theLibraryInfo[idx];
82  }
83 
84  theLibraryInfo.clear();
85 }
std::vector< ossimVpfAnnotationLibraryInfo * > theLibraryInfo

◆ computeBoundingRect()

void ossimVpfAnnotationSource::computeBoundingRect ( )
virtual

Reimplemented from ossimGeoAnnotationSource.

Definition at line 117 of file ossimVpfAnnotationSource.cpp.

References ossimIrect::combine(), ossimIrect::hasNans(), ossimIrect::makeNan(), theLibraryInfo, and ossimAnnotationSource::theRectangle.

Referenced by ossimVpfTileSource::computeBoundingRect(), and setAllFeatures().

119 {
120  ossimIrect result;
121  result.makeNan();
122  for(int i = 0; i < (int)theLibraryInfo.size();++i)
123  {
124  ossimIrect tempRect = theLibraryInfo[i]->getBoundingProjectedRect();
125  if(!tempRect.hasNans())
126  {
127  if(result.hasNans())
128  {
129  result = tempRect;
130  }
131  else
132  {
133  result = result.combine(tempRect);
134  }
135  }
136  }
137 
138  theRectangle = result;
139 }
std::vector< ossimVpfAnnotationLibraryInfo * > theLibraryInfo
void makeNan()
Definition: ossimIrect.h:329
bool hasNans() const
Definition: ossimIrect.h:337
ossimIrect combine(const ossimIrect &rect) const
Definition: ossimIrect.cpp:543

◆ deleteAllLibraries()

void ossimVpfAnnotationSource::deleteAllLibraries ( )
protected

Definition at line 142 of file ossimVpfAnnotationSource.cpp.

References theLibraryInfo.

Referenced by loadState(), and openDatabase().

143 {
144  for(int idx = 0; idx < (int)theLibraryInfo.size();++idx)
145  {
146  delete theLibraryInfo[idx];
147  }
148 
149  theLibraryInfo.clear();
150 }
std::vector< ossimVpfAnnotationLibraryInfo * > theLibraryInfo

◆ drawAnnotations()

void ossimVpfAnnotationSource::drawAnnotations ( ossimRefPtr< ossimImageData tile)
virtual

Reimplemented from ossimAnnotationSource.

Definition at line 166 of file ossimVpfAnnotationSource.cpp.

References ossimRefPtr< T >::get(), ossimRgbImage::getImageData(), ossimRgbImage::setCurrentImageData(), theFeatureList, ossimAnnotationSource::theImage, and ossimRefPtr< T >::valid().

167 {
169  if(theImage->getImageData().valid())
170  {
171  for(ossim_uint32 idx = 0; idx < theFeatureList.size();++idx)
172  {
173  if(theFeatureList[idx]->getEnabledFlag())
174  {
175  theFeatureList[idx]->drawAnnotations(theImage.get());
176  }
177  }
178  }
179 }
bool valid() const
Definition: ossimRefPtr.h:75
ossimRefPtr< ossimImageData > getImageData()
Will return the image data.
unsigned int ossim_uint32
ossimRefPtr< ossimRgbImage > theImage
void setCurrentImageData(ossimRefPtr< ossimImageData > &imageData)
Allows you to change the image data that this RgbImage object operates on.
std::vector< ossimVpfAnnotationFeatureInfo * > theFeatureList

◆ getAllFeatures()

void ossimVpfAnnotationSource::getAllFeatures ( std::vector< ossimVpfAnnotationFeatureInfo *> &  features)
virtual

Definition at line 152 of file ossimVpfAnnotationSource.cpp.

References theFeatureList.

Referenced by ossimVpfTileSource::getAllFeatures().

153 {
154  features = theFeatureList;
155 }
std::vector< ossimVpfAnnotationFeatureInfo * > theFeatureList

◆ getFilename()

ossimFilename ossimVpfAnnotationSource::getFilename ( ) const
virtual

Definition at line 87 of file ossimVpfAnnotationSource.cpp.

References theFilename.

88 {
89  return theFilename;
90 }

◆ isOpen()

bool ossimVpfAnnotationSource::isOpen ( ) const
virtual

Definition at line 263 of file ossimVpfAnnotationSource.cpp.

References ossimVpfDatabase::isOpened(), and theDatabase.

Referenced by ossimVpfTileSource::isOpen().

264 {
265  return (theDatabase.isOpened());
266 }

◆ loadState()

bool ossimVpfAnnotationSource::loadState ( const ossimKeywordlist kwl,
const char *  prefix = NULL 
)
virtual

Method to the load (recreate) the state of an object from a keyword list.

Return true if ok or false on error.

Reimplemented from ossimGeoAnnotationSource.

Definition at line 211 of file ossimVpfAnnotationSource.cpp.

References deleteAllLibraries(), ossimKeywordNames::FILENAME_KW, ossimKeywordlist::find(), ossimVpfAnnotationLibraryInfo::getAllFeatures(), ossimKeywordlist::getSubstringKeyList(), ossimVpfAnnotationLibraryInfo::loadState(), openDatabase(), ossimVpfAnnotationLibraryInfo::setDatabase(), size, theDatabase, theFeatureList, theLibraryInfo, ossimString::toInt(), ossimString::toString(), and transformObjects().

Referenced by ossimVpfTileSource::loadState().

213 {
214  bool result = false;
216  const char* filename = kwl.find(prefix, ossimKeywordNames::FILENAME_KW);
217  if(filename)
218  {
219  if(openDatabase(filename))
220  {
221  int idx = 0;
222  ossimString regExpression = ossimString("^(") + ossimString(prefix) + "library[0-9]+.)";
223  vector<ossimString> keys =
224  kwl.getSubstringKeyList( regExpression );
225  std::vector<int> theNumberList(keys.size());
226  int offset = (int)(ossimString(prefix)+"library").size();
227 
228  for(idx = 0; idx < (int)theNumberList.size();++idx)
229  {
230  ossimString numberStr(keys[idx].begin() + offset,
231  keys[idx].end());
232  theNumberList[idx] = numberStr.toInt();
233  }
234  std::sort(theNumberList.begin(), theNumberList.end());
235 
236  for(idx=0;idx < (int)keys.size();++idx)
237  {
238  ossimString newPrefix = ossimString(prefix);
239  newPrefix += ossimString("library");
240  newPrefix += ossimString::toString(theNumberList[idx]);
241  newPrefix += ossimString(".");
242 
244  theLibraryInfo.push_back(info);
245  info->setDatabase(&theDatabase);
246  info->loadState(kwl,
247  newPrefix);
249  }
251  result = true;
252  }
253  }
254 
255  return result;
256 }
std::vector< ossimVpfAnnotationLibraryInfo * > theLibraryInfo
const char * find(const char *key) const
static ossimString toString(bool aValue)
Numeric to string methods.
virtual void transformObjects(ossimImageGeometry *geom=0)
bool openDatabase(const ossimFilename &file)
void getAllFeatures(std::vector< ossimVpfAnnotationFeatureInfo *> &features)
yy_size_t size
std::vector< ossimString > getSubstringKeyList(const ossimString &regularExpression) const
void setDatabase(ossimVpfDatabase *database)
static const char * FILENAME_KW
std::vector< ossimVpfAnnotationFeatureInfo * > theFeatureList
virtual bool loadState(const ossimKeywordlist &kwl, const char *prefix=0)

◆ open() [1/2]

bool ossimVpfAnnotationSource::open ( )
virtual

Definition at line 258 of file ossimVpfAnnotationSource.cpp.

References theFilename.

Referenced by ossimVpfTileSource::open().

259 {
260  return open(theFilename);
261 }

◆ open() [2/2]

bool ossimVpfAnnotationSource::open ( const ossimFilename file)
virtual

Definition at line 34 of file ossimVpfAnnotationSource.cpp.

35 {
36  if(traceDebug())
37  {
38  ossimNotify(ossimNotifyLevel_DEBUG) << "ossimVpfAnnotationSource::open DEBUG: entering..." << std::endl;
39  }
40  bool result = false;
41 
42  if(file.file().downcase() == "dht")
43  {
44  if(openDatabase(file))
45  {
46  vector<ossimString> libraryNames = theDatabase.getLibraryNames();
47  if(traceDebug())
48  {
49  ossimNotify(ossimNotifyLevel_DEBUG) << "Library names list size = " << libraryNames.size() << std::endl;
50  }
51 
52  for(int idx = 0; idx < (int)libraryNames.size();++idx)
53  {
55  info->setName(libraryNames[idx]);
56  theLibraryInfo.push_back(info);
57  info->setDatabase(&theDatabase);
58  if(traceDebug())
59  {
60  ossimNotify(ossimNotifyLevel_DEBUG) << "loading library " << libraryNames[idx] << std::endl;
61  }
62  info->buildLibrary();
64  }
66  result = true;
67  }
68  }
69  if(traceDebug())
70  {
71  ossimNotify(ossimNotifyLevel_DEBUG) << "ossimVpfAnnotationSource::open DEBUG: leaving..." << std::endl;
72  }
73  return result;
74 }
std::vector< ossimVpfAnnotationLibraryInfo * > theLibraryInfo
virtual void transformObjects(ossimImageGeometry *geom=0)
bool openDatabase(const ossimFilename &file)
void getAllFeatures(std::vector< ossimVpfAnnotationFeatureInfo *> &features)
vector< ossimString > getLibraryNames() const
static ossimString downcase(const ossimString &aString)
Definition: ossimString.cpp:48
ossimFilename file() const
void setDatabase(ossimVpfDatabase *database)
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)
void setName(const ossimString &libraryName)
std::vector< ossimVpfAnnotationFeatureInfo * > theFeatureList

◆ openDatabase()

bool ossimVpfAnnotationSource::openDatabase ( const ossimFilename file)
protected

◆ saveState()

bool ossimVpfAnnotationSource::saveState ( ossimKeywordlist kwl,
const char *  prefix = NULL 
) const
virtual

Saves the current state of this object.

Reimplemented from ossimGeoAnnotationSource.

Definition at line 196 of file ossimVpfAnnotationSource.cpp.

References ossimKeywordlist::add(), ossimKeywordNames::FILENAME_KW, theFilename, theLibraryInfo, and ossimString::toString().

Referenced by ossimVpfTileSource::saveState().

198 {
199  kwl.add(prefix,
201  theFilename,
202  true);
203  for(ossim_uint32 idx = 0; idx < theLibraryInfo.size(); ++idx)
204  {
205  theLibraryInfo[idx]->saveState(kwl,
206  (ossimString(prefix) + "library" + ossimString::toString(idx) + ".").c_str());
207  }
208  return true;
209 }
std::vector< ossimVpfAnnotationLibraryInfo * > theLibraryInfo
static ossimString toString(bool aValue)
Numeric to string methods.
void add(const char *prefix, const ossimKeywordlist &kwl, bool overwrite=true)
unsigned int ossim_uint32
static const char * FILENAME_KW

◆ setAllFeatures()

void ossimVpfAnnotationSource::setAllFeatures ( const std::vector< ossimVpfAnnotationFeatureInfo *> &  features)
virtual

Definition at line 157 of file ossimVpfAnnotationSource.cpp.

References computeBoundingRect(), and theFeatureList.

Referenced by ossimVpfTileSource::setAllFeatures().

158 {
159  theFeatureList = features;
160 
162 
163 }
std::vector< ossimVpfAnnotationFeatureInfo * > theFeatureList

◆ transformObjects()

void ossimVpfAnnotationSource::transformObjects ( ossimImageGeometry geom = 0)
virtual

Reimplemented from ossimGeoAnnotationSource.

Definition at line 92 of file ossimVpfAnnotationSource.cpp.

Referenced by loadState(), and ossimVpfTileSource::transformObjects().

93 {
94  if(traceDebug())
95  {
96  ossimNotify(ossimNotifyLevel_DEBUG) << "ossimVpfAnnotationSource::transformObjects DEBUG: entered..." << std::endl;
97  }
98  ossimImageGeometry* tempGeom = geom;
99 
100  if(!tempGeom)
101  {
102  tempGeom = m_geometry.get();
103  }
104 
105  if(!tempGeom) return;
106  for(int idx = 0; idx < (int)theLibraryInfo.size(); ++idx)
107  {
108  theLibraryInfo[idx]->transform(tempGeom);
109  }
111  if(traceDebug())
112  {
113  ossimNotify(ossimNotifyLevel_DEBUG) << "ossimVpfAnnotationSource::transformObjects DEBUG: leaving..." << std::endl;
114  }
115 }
std::vector< ossimVpfAnnotationLibraryInfo * > theLibraryInfo
ossimRefPtr< ossimImageGeometry > m_geometry
Container class that holds both 2D transform and 3D projection information for an image Only one inst...
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)

Member Data Documentation

◆ theDatabase

ossimVpfDatabase ossimVpfAnnotationSource::theDatabase
protected

Definition at line 37 of file ossimVpfAnnotationSource.h.

Referenced by close(), isOpen(), loadState(), and openDatabase().

◆ theFeatureList

std::vector<ossimVpfAnnotationFeatureInfo*> ossimVpfAnnotationSource::theFeatureList
protected

◆ theFilename

ossimFilename ossimVpfAnnotationSource::theFilename
protected

Definition at line 38 of file ossimVpfAnnotationSource.h.

Referenced by getFilename(), open(), openDatabase(), and saveState().

◆ theLibraryInfo

std::vector<ossimVpfAnnotationLibraryInfo*> ossimVpfAnnotationSource::theLibraryInfo
protected

The documentation for this class was generated from the following files: