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

#include <ossimVisitor.h>

Inheritance diagram for ossimCollectionVisitor:
ossimVisitor ossimReferenced ossimTypeIdVisitor ossimTypeNameVisitor

Public Member Functions

 ossimCollectionVisitor (int visitorType=(VISIT_INPUTS|VISIT_CHILDREN))
 
 ossimCollectionVisitor (const ossimCollectionVisitor &src)
 
ListRefgetObjects ()
 
const ListRefgetObjects () const
 
ossimObjectgetObject (ossim_uint32 idx=0)
 
const ossimObjectgetObject (ossim_uint32 idx=0) const
 
template<class T >
T * getObjectAs (ossim_uint32 idx=0)
 
template<class T >
const T * getObjectAs (ossim_uint32 idx=0) const
 
virtual void reset ()
 
- Public Member Functions inherited from ossimVisitor
 ossimVisitor (int visitorType=VISIT_NONE)
 
 ossimVisitor (const ossimVisitor &src)
 
virtual ossimRefPtr< ossimVisitordup () const =0
 
virtual void visit (ossimObject *obj)
 
virtual void visit (ossimConnectableObject *obj)
 
VisitorType getVisitorType () const
 
void setVisitorType (int vType, bool on=true)
 
void turnOffVisitorType (int vType)
 
bool hasVisited (ossimObject *obj) const
 
bool stopTraversal () 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
 

Protected Attributes

ListRef m_collection
 
- Protected Attributes inherited from ossimVisitor
VisitorType m_visitorType
 
Collection m_markNode
 
bool m_stopTraversalFlag
 

Additional Inherited Members

- Public Types inherited from ossimVisitor
enum  VisitorType {
  VISIT_NONE = 0, VISIT_CHILDREN = 1, VISIT_INPUTS = 2, VISIT_OUTPUTS = 4,
  VISIT_ALL = (VISIT_CHILDREN|VISIT_INPUTS|VISIT_OUTPUTS)
}
 Enumeration type can be a mask and will traverse a graph of connectables based on the values. More...
 
typedef std::set< ossimRefPtr< ossimObject > > MarkCollectionRef
 
typedef std::set< ossimRefPtr< ossimObject > > CollectionRef
 
typedef std::vector< ossimRefPtr< ossimObject > > ListRef
 
typedef std::set< ossimObject * > Collection
 
typedef std::vector< ossimObject *> List
 
- Protected Member Functions inherited from ossimReferenced
virtual ~ossimReferenced ()
 

Detailed Description

Definition at line 53 of file ossimVisitor.h.

Constructor & Destructor Documentation

◆ ossimCollectionVisitor() [1/2]

ossimCollectionVisitor::ossimCollectionVisitor ( int  visitorType = (VISIT_INPUTS|VISIT_CHILDREN))

Definition at line 149 of file ossimVisitor.cpp.

150 :ossimVisitor(visitorType)
151 {
152 }
ossimVisitor(int visitorType=VISIT_NONE)

◆ ossimCollectionVisitor() [2/2]

ossimCollectionVisitor::ossimCollectionVisitor ( const ossimCollectionVisitor src)

Definition at line 154 of file ossimVisitor.cpp.

156 {
157 }

Member Function Documentation

◆ getObject() [1/2]

ossimObject * ossimCollectionVisitor::getObject ( ossim_uint32  idx = 0)

Definition at line 169 of file ossimVisitor.cpp.

References m_collection.

Referenced by ossimBitMaskWriter::connectMyInputTo(), and ossimConnectableObject::findObjectOfType().

170 {
171  if(idx < m_collection.size())
172  {
173  return m_collection[idx].get();
174  }
175  return 0;
176 }

◆ getObject() [2/2]

const ossimObject * ossimCollectionVisitor::getObject ( ossim_uint32  idx = 0) const

Definition at line 178 of file ossimVisitor.cpp.

References m_collection.

179 {
180  if(idx < m_collection.size())
181  {
182  return m_collection[idx].get();
183  }
184  return 0;
185 }

◆ getObjectAs() [1/2]

template<class T >
T* ossimCollectionVisitor::getObjectAs ( ossim_uint32  idx = 0)
inline

◆ getObjectAs() [2/2]

template<class T >
const T* ossimCollectionVisitor::getObjectAs ( ossim_uint32  idx = 0) const
inline

Definition at line 74 of file ossimVisitor.h.

75  {
76  if(idx < m_collection.size())
77  {
78  return dynamic_cast<const T*>(m_collection[idx].get());
79  }
80  return 0;
81  }

◆ getObjects() [1/2]

ossimCollectionVisitor::ListRef & ossimCollectionVisitor::getObjects ( )

◆ getObjects() [2/2]

const ossimCollectionVisitor::ListRef & ossimCollectionVisitor::getObjects ( ) const

Definition at line 164 of file ossimVisitor.cpp.

References m_collection.

165 {
166  return m_collection;
167 }

◆ reset()

void ossimCollectionVisitor::reset ( void  )
virtual

Reimplemented from ossimVisitor.

Definition at line 187 of file ossimVisitor.cpp.

References m_collection, and ossimVisitor::reset().

Referenced by ossimSFIMFusion::initialize().

188 {
190  m_collection.clear();
191 }
virtual void reset()

Member Data Documentation

◆ m_collection

ListRef ossimCollectionVisitor::m_collection
protected

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