NCBI C++ ToolKit
Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
COrgRefCache Class Reference

Search Toolkit Book for COrgRefCache

#include "cache.hpp"
(Private to src/objects/taxon1.)

+ Collaboration diagram for COrgRefCache:

Classes

struct  SCacheEntry
 

Public Member Functions

 COrgRefCache (CTaxon1 &host)
 
 ~COrgRefCache ()
 
bool Init (unsigned nCapacity=10)
 
bool Lookup (TTaxId tax_id, CTaxon1Node **ppNode)
 
bool LookupAndAdd (TTaxId tax_id, CTaxon1Node **ppData)
 
bool LookupAndInsert (TTaxId tax_id, CTaxon2_data **ppData)
 
bool Lookup (TTaxId tax_id, CTaxon2_data **ppData)
 
bool Insert2 (CTaxon1Node &node)
 
const char * GetRankName (int rank)
 
TTaxRank GetSuperkingdomRank () const
 
TTaxRank GetGenusRank () const
 
TTaxRank GetSpeciesRank () const
 
TTaxRank GetSubspeciesRank () const
 
const char * GetNameClassName (short nc)
 
TTaxNameClass GetPreferredCommonNameClass () const
 
TTaxNameClass GetCommonNameClass () const
 
const char * GetDivisionName (TTaxDivision div_id)
 
const char * GetDivisionCode (TTaxDivision div_id)
 
CTreeContGetTree ()
 
const CTreeContGetTree () const
 
void SetIndexEntry (int id, CTaxon1Node *pNode)
 

Private Types

typedef map< TTaxNameClass, stringTNameClassMap
 
typedef TNameClassMap::const_iterator TNameClassMapCI
 
typedef TNameClassMap::iterator TNameClassMapI
 

Private Member Functions

bool InitDomain (const string &name, CDomainStorage &storage)
 
bool InitRanks ()
 
TTaxRank FindRankByName (const char *pchName)
 
bool InitNameClasses ()
 
TTaxNameClass FindNameClassByName (const char *pchName)
 
bool InitDivisions ()
 
TTaxDivision FindDivisionByCode (const char *pchCode)
 
TTaxDivision FindDivisionByName (const char *pchName)
 
 COrgRefCache (const COrgRefCache &)
 
COrgRefCacheoperator= (const COrgRefCache &)
 

Private Attributes

CTaxon1m_host
 
unsigned m_nMaxTaxId
 
CTaxon1Node ** m_ppEntries
 
CTreeCont m_tPartTree
 
unsigned m_nCacheCapacity
 
list< SCacheEntry * > m_lCache
 
TTaxRank m_nSuperkingdomRank
 
TTaxRank m_nGenusRank
 
TTaxRank m_nSpeciesRank
 
TTaxRank m_nSubspeciesRank
 
CDomainStorage m_rankStorage
 
TTaxNameClass m_ncPrefCommon
 
TTaxNameClass m_ncCommon
 
TNameClassMap m_ncStorage
 
CDomainStorage m_divStorage
 

Friends

class CTaxon1Node
 
class CTaxon1
 

Detailed Description

Definition at line 90 of file cache.hpp.

Member Typedef Documentation

◆ TNameClassMap

Definition at line 163 of file cache.hpp.

◆ TNameClassMapCI

Definition at line 164 of file cache.hpp.

◆ TNameClassMapI

Definition at line 165 of file cache.hpp.

Constructor & Destructor Documentation

◆ COrgRefCache() [1/2]

COrgRefCache::COrgRefCache ( CTaxon1 host)

Definition at line 48 of file cache.cpp.

◆ ~COrgRefCache()

COrgRefCache::~COrgRefCache ( )

Definition at line 54 of file cache.cpp.

References i, m_lCache, and m_ppEntries.

◆ COrgRefCache() [2/2]

COrgRefCache::COrgRefCache ( const COrgRefCache )
private

Member Function Documentation

◆ FindDivisionByCode()

TTaxDivision COrgRefCache::FindDivisionByCode ( const char *  pchCode)
private

◆ FindDivisionByName()

TTaxDivision COrgRefCache::FindDivisionByName ( const char *  pchName)
private

◆ FindNameClassByName()

TTaxNameClass COrgRefCache::FindNameClassByName ( const char *  pchName)
private

◆ FindRankByName()

TTaxRank COrgRefCache::FindRankByName ( const char *  pchName)
private

◆ GetCommonNameClass()

TTaxNameClass COrgRefCache::GetCommonNameClass ( ) const
inline

Definition at line 115 of file cache.hpp.

References m_ncCommon.

Referenced by CTaxon1::GetDisplayCommonName().

◆ GetDivisionCode()

const char * COrgRefCache::GetDivisionCode ( TTaxDivision  div_id)

◆ GetDivisionName()

const char * COrgRefCache::GetDivisionName ( TTaxDivision  div_id)

◆ GetGenusRank()

TTaxRank COrgRefCache::GetGenusRank ( ) const
inline

Definition at line 109 of file cache.hpp.

References m_nGenusRank.

Referenced by CTaxon1::GetGenus().

◆ GetNameClassName()

const char * COrgRefCache::GetNameClassName ( short  nc)

◆ GetPreferredCommonNameClass()

TTaxNameClass COrgRefCache::GetPreferredCommonNameClass ( ) const
inline

Definition at line 114 of file cache.hpp.

References m_ncPrefCommon.

Referenced by CTaxon1::GetDisplayCommonName().

◆ GetRankName()

const char * COrgRefCache::GetRankName ( int  rank)

◆ GetSpeciesRank()

TTaxRank COrgRefCache::GetSpeciesRank ( ) const
inline

Definition at line 110 of file cache.hpp.

References m_nSpeciesRank.

Referenced by CTaxon1::GetSpecies(), and CTaxon1::GetTypeMaterial().

◆ GetSubspeciesRank()

TTaxRank COrgRefCache::GetSubspeciesRank ( ) const
inline

Definition at line 111 of file cache.hpp.

References m_nSubspeciesRank.

Referenced by CTaxon1::GetTypeMaterial().

◆ GetSuperkingdomRank()

TTaxRank COrgRefCache::GetSuperkingdomRank ( ) const
inline

Definition at line 108 of file cache.hpp.

References m_nSuperkingdomRank.

Referenced by CTaxon1::GetSuperkingdom().

◆ GetTree() [1/2]

CTreeCont& COrgRefCache::GetTree ( void  )
inline

◆ GetTree() [2/2]

const CTreeCont& COrgRefCache::GetTree ( void  ) const
inline

Definition at line 121 of file cache.hpp.

References m_tPartTree.

◆ Init()

bool COrgRefCache::Init ( unsigned  nCapacity = 10)

◆ InitDivisions()

bool COrgRefCache::InitDivisions ( )
private

◆ InitDomain()

bool COrgRefCache::InitDomain ( const string name,
CDomainStorage storage 
)
private

◆ InitNameClasses()

bool COrgRefCache::InitNameClasses ( )
private

◆ InitRanks()

bool COrgRefCache::InitRanks ( )
private

◆ Insert2()

bool COrgRefCache::Insert2 ( CTaxon1Node node)

◆ Lookup() [1/2]

bool COrgRefCache::Lookup ( TTaxId  tax_id,
CTaxon1Node **  ppNode 
)

Definition at line 103 of file cache.cpp.

References m_nMaxTaxId, m_ppEntries, NULL, and TAX_ID_TO.

Referenced by CTaxon1::LoadSubtreeEx().

◆ Lookup() [2/2]

bool COrgRefCache::Lookup ( TTaxId  tax_id,
CTaxon2_data **  ppData 
)

◆ LookupAndAdd()

bool COrgRefCache::LookupAndAdd ( TTaxId  tax_id,
CTaxon1Node **  ppData 
)

◆ LookupAndInsert()

bool COrgRefCache::LookupAndInsert ( TTaxId  tax_id,
CTaxon2_data **  ppData 
)

◆ operator=()

COrgRefCache& COrgRefCache::operator= ( const COrgRefCache )
private

◆ SetIndexEntry()

void COrgRefCache::SetIndexEntry ( int  id,
CTaxon1Node pNode 
)

Definition at line 521 of file cache.cpp.

References m_ppEntries.

Referenced by CTaxon1::GetChildren(), Init(), and CTaxon1::LoadSubtreeEx().

Friends And Related Function Documentation

◆ CTaxon1

friend class CTaxon1
friend

Definition at line 127 of file cache.hpp.

◆ CTaxon1Node

friend class CTaxon1Node
friend

Definition at line 126 of file cache.hpp.

Referenced by Init(), and LookupAndAdd().

Member Data Documentation

◆ m_divStorage

CDomainStorage COrgRefCache::m_divStorage
private

◆ m_host

CTaxon1& COrgRefCache::m_host
private

Definition at line 137 of file cache.hpp.

Referenced by Init(), InitDomain(), InitNameClasses(), InitRanks(), Insert2(), and LookupAndAdd().

◆ m_lCache

list<SCacheEntry*> COrgRefCache::m_lCache
private

Definition at line 144 of file cache.hpp.

Referenced by Insert2(), Lookup(), LookupAndInsert(), and ~COrgRefCache().

◆ m_nCacheCapacity

unsigned COrgRefCache::m_nCacheCapacity
private

Definition at line 143 of file cache.hpp.

Referenced by Init(), and Insert2().

◆ m_ncCommon

TTaxNameClass COrgRefCache::m_ncCommon
private

Definition at line 161 of file cache.hpp.

Referenced by GetCommonNameClass(), and InitNameClasses().

◆ m_ncPrefCommon

TTaxNameClass COrgRefCache::m_ncPrefCommon
private

Definition at line 160 of file cache.hpp.

Referenced by GetPreferredCommonNameClass(), and InitNameClasses().

◆ m_ncStorage

TNameClassMap COrgRefCache::m_ncStorage
private

Definition at line 166 of file cache.hpp.

Referenced by FindNameClassByName(), GetNameClassName(), and InitNameClasses().

◆ m_nGenusRank

TTaxRank COrgRefCache::m_nGenusRank
private

Definition at line 148 of file cache.hpp.

Referenced by GetGenusRank(), and InitRanks().

◆ m_nMaxTaxId

unsigned COrgRefCache::m_nMaxTaxId
private

Definition at line 139 of file cache.hpp.

Referenced by CTaxon1::GetMaxTaxId(), Init(), Lookup(), and LookupAndAdd().

◆ m_nSpeciesRank

TTaxRank COrgRefCache::m_nSpeciesRank
private

Definition at line 149 of file cache.hpp.

Referenced by GetSpeciesRank(), and InitRanks().

◆ m_nSubspeciesRank

TTaxRank COrgRefCache::m_nSubspeciesRank
private

Definition at line 150 of file cache.hpp.

Referenced by GetSubspeciesRank(), and InitRanks().

◆ m_nSuperkingdomRank

TTaxRank COrgRefCache::m_nSuperkingdomRank
private

Definition at line 147 of file cache.hpp.

Referenced by GetSuperkingdomRank(), and InitRanks().

◆ m_ppEntries

CTaxon1Node** COrgRefCache::m_ppEntries
private

Definition at line 140 of file cache.hpp.

Referenced by Init(), Lookup(), LookupAndAdd(), SetIndexEntry(), and ~COrgRefCache().

◆ m_rankStorage

CDomainStorage COrgRefCache::m_rankStorage
private

Definition at line 154 of file cache.hpp.

Referenced by FindRankByName(), GetRankName(), and InitRanks().

◆ m_tPartTree

CTreeCont COrgRefCache::m_tPartTree
private

Definition at line 141 of file cache.hpp.

Referenced by GetTree(), Init(), and LookupAndAdd().


The documentation for this class was generated from the following files:
Modified on Sun May 05 05:21:53 2024 by modify_doxy.py rev. 669887