NCBI C++ ToolKit
|
Search Toolkit Book for ITreeIterator
#include <objects/taxon1/taxon1.hpp>
Classes | |
class | I4Each |
Public Types | |
enum | EAction { eOk , eStop , eSkip } |
![]() | |
enum | EAllocFillMode { eAllocFillNone = 1 , eAllocFillZero , eAllocFillPattern } |
Control filling of newly allocated memory. More... | |
typedef CObjectCounterLocker | TLockerType |
Default locker type for CRef. More... | |
typedef atomic< Uint8 > | TCounter |
Counter type is CAtomiCounter. More... | |
typedef Uint8 | TCount |
Alias for value type of counter. More... | |
Public Member Functions | |
virtual CTaxon1::EIteratorMode | GetMode () const =0 |
virtual const ITaxon1Node * | GetNode () const =0 |
const ITaxon1Node * | operator-> () const |
virtual bool | IsTerminal () const =0 |
virtual bool | IsLastChild () const =0 |
virtual bool | IsFirstChild () const =0 |
virtual void | GoRoot ()=0 |
virtual bool | GoParent ()=0 |
virtual bool | GoChild ()=0 |
virtual bool | GoSibling ()=0 |
virtual bool | GoNode (const ITaxon1Node *pNode)=0 |
virtual bool | GoAncestor (const ITaxon1Node *pNode)=0 |
EAction | TraverseDownward (I4Each &, unsigned levels=kMax_UInt) |
EAction | TraverseUpward (I4Each &, unsigned levels=kMax_UInt) |
EAction | TraverseLevelByLevel (I4Each &, unsigned levels=kMax_UInt) |
EAction | TraverseAncestors (I4Each &) |
virtual bool | BelongSubtree (const ITaxon1Node *subtree_root) const =0 |
virtual bool | AboveNode (const ITaxon1Node *node) const =0 |
![]() | |
CObject (void) | |
Constructor. More... | |
CObject (const CObject &src) | |
Copy constructor. More... | |
virtual | ~CObject (void) |
Destructor. More... | |
CObject & | operator= (const CObject &src) THROWS_NONE |
Assignment operator. More... | |
bool | CanBeDeleted (void) const THROWS_NONE |
Check if object can be deleted. More... | |
bool | IsAllocatedInPool (void) const THROWS_NONE |
Check if object is allocated in memory pool (not system heap) More... | |
bool | Referenced (void) const THROWS_NONE |
Check if object is referenced. More... | |
bool | ReferencedOnlyOnce (void) const THROWS_NONE |
Check if object is referenced only once. More... | |
void | AddReference (void) const |
Add reference to object. More... | |
void | RemoveReference (void) const |
Remove reference to object. More... | |
void | ReleaseReference (void) const |
Remove reference without deleting object. More... | |
virtual void | DoNotDeleteThisObject (void) |
Mark this object as not allocated in heap – do not delete this object. More... | |
virtual void | DoDeleteThisObject (void) |
Mark this object as allocated in heap – object can be deleted. More... | |
void * | operator new (size_t size) |
Define new operator for memory allocation. More... | |
void * | operator new[] (size_t size) |
Define new[] operator for 'array' memory allocation. More... | |
void | operator delete (void *ptr) |
Define delete operator for memory deallocation. More... | |
void | operator delete[] (void *ptr) |
Define delete[] operator for memory deallocation. More... | |
void * | operator new (size_t size, void *place) |
Define new operator. More... | |
void | operator delete (void *ptr, void *place) |
Define delete operator. More... | |
void * | operator new (size_t size, CObjectMemoryPool *place) |
Define new operator using memory pool. More... | |
void | operator delete (void *ptr, CObjectMemoryPool *place) |
Define delete operator. More... | |
virtual void | DebugDump (CDebugDumpContext ddc, unsigned int depth) const |
Define method for dumping debug information. More... | |
![]() | |
CDebugDumpable (void) | |
virtual | ~CDebugDumpable (void) |
void | DebugDumpText (ostream &out, const string &bundle, unsigned int depth) const |
void | DebugDumpFormat (CDebugDumpFormatter &ddf, const string &bundle, unsigned int depth) const |
void | DumpToConsole (void) const |
Private Member Functions | |
EAction | TraverseLevelByLevelInternal (I4Each &cb, unsigned levels, vector< const ITaxon1Node * > &skp) |
Additional Inherited Members | |
![]() | |
static NCBI_XNCBI_EXPORT void | ThrowNullPointerException (void) |
Define method to throw null pointer exception. More... | |
static NCBI_XNCBI_EXPORT void | ThrowNullPointerException (const type_info &type) |
static EAllocFillMode | GetAllocFillMode (void) |
static void | SetAllocFillMode (EAllocFillMode mode) |
static void | SetAllocFillMode (const string &value) |
Set mode from configuration parameter value. More... | |
![]() | |
static void | EnableDebugDump (bool on) |
![]() | |
static const TCount | eCounterBitsCanBeDeleted = 1 << 0 |
Define possible object states. More... | |
static const TCount | eCounterBitsInPlainHeap = 1 << 1 |
Heap signature was found. More... | |
static const TCount | eCounterBitsPlaceMask |
Mask for 'in heap' state flags. More... | |
static const int | eCounterStep = 1 << 2 |
Skip over the "in heap" bits. More... | |
static const TCount | eCounterValid = TCount(1) << (sizeof(TCount) * 8 - 2) |
Minimal value for valid objects (reference counter is zero) Must be a single bit value. More... | |
static const TCount | eCounterStateMask |
Valid object, and object in heap. More... | |
![]() | |
virtual void | DeleteThis (void) |
Virtual method "deleting" this object. More... | |
Definition at line 676 of file taxon1.hpp.
Enumerator | |
---|---|
eOk | |
eStop | |
eSkip |
Definition at line 746 of file taxon1.hpp.
|
pure virtual |
Implemented in CFullTreeConstIterator, and CTaxTreeConstIterator.
|
pure virtual |
Implemented in CFullTreeConstIterator, and CTaxTreeConstIterator.
|
pure virtual |
Implemented in CTaxTreeConstIterator.
|
pure virtual |
Implemented in CTaxTreeConstIterator.
Referenced by TaxClient::GetRankID(), CTaxon1::Join(), operator->(), TraverseAncestors(), TraverseDownward(), TraverseLevelByLevel(), TraverseLevelByLevelInternal(), and TraverseUpward().
|
pure virtual |
Implemented in CFullTreeConstIterator, and CTaxTreeConstIterator.
Referenced by CTaxon1::Join().
|
pure virtual |
Implemented in CFullTreeConstIterator, and CTaxTreeConstIterator.
Referenced by TraverseDownward(), TraverseLevelByLevelInternal(), and TraverseUpward().
|
pure virtual |
Implemented in CFullTreeConstIterator, and CTaxTreeConstIterator.
Referenced by CTaxon1::GetTreeIterator(), CTaxon1::Join(), and TraverseAncestors().
|
pure virtual |
Implemented in CFullTreeConstIterator, and CTaxTreeConstIterator.
Referenced by TraverseAncestors(), TraverseDownward(), TraverseLevelByLevelInternal(), and TraverseUpward().
|
pure virtual |
Implemented in CTaxTreeConstIterator.
|
pure virtual |
Implemented in CFullTreeConstIterator, and CTaxTreeConstIterator.
Referenced by TraverseDownward(), TraverseLevelByLevelInternal(), and TraverseUpward().
|
pure virtual |
Implemented in CFullTreeConstIterator, and CTaxTreeConstIterator.
|
pure virtual |
Implemented in CFullTreeConstIterator, and CTaxTreeConstIterator.
|
pure virtual |
Implemented in CTreeBestIterator, CTreeLeavesBranchesIterator, CFullTreeConstIterator, and CTaxTreeConstIterator.
Referenced by TraverseDownward(), TraverseLevelByLevel(), TraverseLevelByLevelInternal(), and TraverseUpward().
|
inline |
Definition at line 688 of file taxon1.hpp.
References GetNode().
ITreeIterator::EAction ITreeIterator::TraverseAncestors | ( | I4Each & | cb | ) |
Definition at line 2118 of file taxon1.cpp.
References eOk, eSkip, eStop, ITreeIterator::I4Each::Execute(), GetNode(), GoNode(), and GoParent().
ITreeIterator::EAction ITreeIterator::TraverseDownward | ( | I4Each & | cb, |
unsigned | levels = kMax_UInt |
||
) |
Definition at line 1983 of file taxon1.cpp.
References eOk, eSkip, eStop, ITreeIterator::I4Each::Execute(), GetNode(), GoChild(), GoParent(), GoSibling(), IsTerminal(), ITreeIterator::I4Each::LevelBegin(), and ITreeIterator::I4Each::LevelEnd().
Referenced by CTaxFormat::x_InitOrgTaxMetaData(), and CTaxTreeBrowser::x_Refresh().
ITreeIterator::EAction ITreeIterator::TraverseLevelByLevel | ( | I4Each & | cb, |
unsigned | levels = kMax_UInt |
||
) |
Definition at line 2044 of file taxon1.cpp.
References eOk, eSkip, eStop, ITreeIterator::I4Each::Execute(), GetNode(), IsTerminal(), and TraverseLevelByLevelInternal().
|
private |
Definition at line 2063 of file taxon1.cpp.
References eOk, eSkip, eStop, ITreeIterator::I4Each::Execute(), GetNode(), GoChild(), GoParent(), GoSibling(), IsTerminal(), ITreeIterator::I4Each::LevelBegin(), and ITreeIterator::I4Each::LevelEnd().
Referenced by TraverseLevelByLevel().
ITreeIterator::EAction ITreeIterator::TraverseUpward | ( | I4Each & | cb, |
unsigned | levels = kMax_UInt |
||
) |
Definition at line 2016 of file taxon1.cpp.
References eOk, eSkip, eStop, ITreeIterator::I4Each::Execute(), GetNode(), GoChild(), GoParent(), GoSibling(), IsTerminal(), ITreeIterator::I4Each::LevelBegin(), and ITreeIterator::I4Each::LevelEnd().
Referenced by CTaxFormat::x_InitOrgTaxMetaData().