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

Search Toolkit Book for CScope_Impl

#include <objmgr/impl/scope_impl.hpp>

+ Inheritance diagram for CScope_Impl:
+ Collaboration diagram for CScope_Impl:

Public Types

enum  EGetBioseqFlag2 { fUserFlagMask = 0xff , fNoLockFlag = 0x100 }
 
typedef CTSE_ScopeUserLock TTSE_Lock
 
typedef map< CSeq_id_Handle, SSeq_id_ScopeInfoTSeq_idMap
 
typedef TSeq_idMap::value_type TSeq_idMapValue
 
typedef set< CSeq_id_HandleTSeq_idSet
 
typedef vector< pair< CTSE_Handle, CSeq_id_Handle > > TTSE_LockMatchSet
 
typedef int TPriority
 
typedef map< CConstRef< CObject >, CRef< CObject > > TEditInfoMap
 
typedef map< CRef< CDataSource >, CRef< CDataSource_ScopeInfo > > TDSMap
 
typedef vector< CSeq_id_HandleTIds
 
typedef vector< TIdsTBulkIds
 
typedef vector< CSeq_entry_HandleTTSE_Handles
 
typedef int TMissing
 
typedef int TExist
 
typedef int TGetFlags
 
typedef vector< CBioseq_HandleTBioseqHandles
 Bulk retrieval methods. More...
 
typedef vector< CTSE_HandleTCDD_Entries
 
typedef vector< TGiTGIs
 
typedef vector< stringTLabels
 
typedef vector< TTaxIdTTaxIds
 
typedef vector< TSeqPosTSequenceLengths
 
typedef vector< CSeq_inst::TMolTSequenceTypes
 
typedef vector< intTSequenceStates
 
typedef vector< intTSequenceHashes
 
typedef pair< CConstRef< CSeq_entry_Info >, TTSE_LockTSeq_entry_Lock
 
typedef pair< CConstRef< CSeq_annot_Info >, TTSE_LockTSeq_annot_Lock
 
typedef pair< CConstRef< CBioseq_set_Info >, TTSE_LockTBioseq_set_Lock
 
typedef CDataSource_ScopeInfo::TBioseq_Lock TBioseq_Lock
 
- Public Types inherited from CObject
enum  EAllocFillMode { eAllocFillNone = 1 , eAllocFillZero , eAllocFillPattern }
 Control filling of newly allocated memory. More...
 
typedef CObjectCounterLocker TLockerType
 Default locker type for CRef. More...
 
typedef atomic< Uint8TCounter
 Counter type is CAtomiCounter. More...
 
typedef Uint8 TCount
 Alias for value type of counter. More...
 

Public Member Functions

CObjectManagerGetObjectManager (void)
 
void AddDefaults (TPriority priority)
 
void AddDataLoader (const string &loader_name, TPriority priority)
 
void AddScope (CScope_Impl &scope, TPriority priority)
 
CSeq_entry_Handle AddSeq_entry (CSeq_entry &entry, TPriority pri, TExist action)
 
CSeq_entry_Handle AddSharedSeq_entry (const CSeq_entry &entry, TPriority pri, TExist action)
 
CBioseq_Handle AddBioseq (CBioseq &bioseq, TPriority pri, TExist action)
 
CBioseq_Handle AddSharedBioseq (const CBioseq &bioseq, TPriority pri, TExist action)
 
CSeq_annot_Handle AddSeq_annot (CSeq_annot &annot, TPriority pri, TExist action)
 
CSeq_annot_Handle AddSharedSeq_annot (const CSeq_annot &annot, TPriority pri, TExist action)
 
CSeq_entry_Handle AddSeq_submit (CSeq_submit &submit, TPriority pri)
 
CTSE_Handle GetEditHandle (const CTSE_Handle &src_tse)
 
CBioseq_EditHandle GetEditHandle (const CBioseq_Handle &seq)
 
CSeq_entry_EditHandle GetEditHandle (const CSeq_entry_Handle &entry)
 
CSeq_annot_EditHandle GetEditHandle (const CSeq_annot_Handle &annot)
 
CBioseq_set_EditHandle GetEditHandle (const CBioseq_set_Handle &seqset)
 
CSeq_entry_EditHandle AttachEntry (const CBioseq_set_EditHandle &seqset, CSeq_entry &entry, int index=-1)
 
CSeq_entry_EditHandle AttachEntry (const CBioseq_set_EditHandle &seqset, CRef< CSeq_entry_Info > entry, int index=-1)
 
CSeq_entry_EditHandle AttachEntry (const CBioseq_set_EditHandle &seqset, const CSeq_entry_EditHandle &entry, int index=-1)
 
CSeq_annot_EditHandle AttachAnnot (const CSeq_entry_EditHandle &entry, CSeq_annot &annot)
 
CSeq_annot_EditHandle AttachAnnot (const CSeq_entry_EditHandle &entry, CRef< CSeq_annot_Info > annot)
 
CSeq_annot_EditHandle AttachAnnot (const CSeq_entry_EditHandle &entry, const CSeq_annot_EditHandle &annot)
 
void RemoveEntry (const CSeq_entry_EditHandle &entry)
 
void RemoveBioseq (const CBioseq_EditHandle &seq)
 
void RemoveBioseq_set (const CBioseq_set_EditHandle &seqset)
 
void RemoveAnnot (const CSeq_annot_EditHandle &annot)
 
void RemoveTopLevelBioseq (const CBioseq_Handle &seq)
 
void RemoveTopLevelBioseq_set (const CBioseq_set_Handle &seqset)
 
void RemoveTopLevelAnnot (const CSeq_annot_Handle &annot)
 
void SelectNone (const CSeq_entry_EditHandle &entry)
 
CBioseq_EditHandle SelectSeq (const CSeq_entry_EditHandle &entry, CBioseq &seq)
 
CBioseq_EditHandle SelectSeq (const CSeq_entry_EditHandle &entry, CRef< CBioseq_Info > seq)
 
CBioseq_EditHandle SelectSeq (const CSeq_entry_EditHandle &entry, const CBioseq_EditHandle &seq)
 
CBioseq_set_EditHandle SelectSet (const CSeq_entry_EditHandle &entry, CBioseq_set &seqset)
 
CBioseq_set_EditHandle SelectSet (const CSeq_entry_EditHandle &entry, CRef< CBioseq_set_Info > seqset)
 
CBioseq_set_EditHandle SelectSet (const CSeq_entry_EditHandle &entry, const CBioseq_set_EditHandle &seqset)
 
CBioseq_Handle GetBioseqHandle (const CSeq_id_Handle &id, int get_flag)
 
bool IsSameBioseq (const CSeq_id_Handle &id1, const CSeq_id_Handle &id2, int get_flag)
 
CBioseq_Handle GetBioseqHandleFromTSE (const CSeq_id_Handle &id, const CTSE_Handle &tse)
 
CBioseq_Handle GetBioseqHandle (const CSeq_loc &loc, int get_flag)
 
void ResetScope (void)
 
void ResetHistory (int action)
 
void ResetDataAndHistory (void)
 
void RemoveFromHistory (const CTSE_Handle &tse, int action)
 
void RemoveFromHistory (const CSeq_id_Handle &seq_id)
 
void RemoveDataLoader (const string &loader_name, int action)
 
void RemoveTopLevelSeqEntry (const CTSE_Handle &entry)
 
CSeq_entry_Handle GetSeq_entryHandle (CDataLoader *loader, const CBlobIdKey &blob_id, TMissing action)
 
CBioseq_Handle GetBioseqHandle (const CBioseq &bioseq, TMissing action)
 
CBioseq_set_Handle GetBioseq_setHandle (const CBioseq_set &seqset, TMissing action)
 
CSeq_entry_Handle GetSeq_entryHandle (const CSeq_entry &entry, TMissing action)
 
CSeq_annot_Handle GetSeq_annotHandle (const CSeq_annot &annot, TMissing action)
 
CSeq_entry_Handle GetSeq_entryHandle (const CTSE_Handle &tse)
 
CSeq_feat_Handle GetSeq_featHandle (const CSeq_feat &feat, TMissing action)
 
CScopeGetScope (void)
 
bool Exists (const CSeq_id_Handle &id)
 
TIds GetIds (const CSeq_id_Handle &idh, TGetFlags flags=0)
 
CSeq_id_Handle GetAccVer (const CSeq_id_Handle &idh, TGetFlags flags)
 
TGi GetGi (const CSeq_id_Handle &idh, TGetFlags flags)
 
string GetLabel (const CSeq_id_Handle &idh, TGetFlags flags)
 
TTaxId GetTaxId (const CSeq_id_Handle &idh, TGetFlags flags)
 
TBioseqHandles GetBioseqHandles (const TIds &ids)
 
TCDD_Entries GetCDDAnnots (const TIds &idhs)
 
TCDD_Entries GetCDDAnnots (const TBioseqHandles &bhs)
 
void GetBulkIds (TBulkIds &ret, const TIds &idhs, TGetFlags flags)
 
void GetAccVers (TIds &ret, const TIds &idhs, TGetFlags flags)
 
void GetGis (TGIs &ret, const TIds &idhs, TGetFlags flags)
 
void GetLabels (TLabels &ret, const TIds &idhs, TGetFlags flags)
 
void GetTaxIds (TTaxIds &ret, const TIds &idhs, TGetFlags flags)
 
CConstRef< CSynonymsSetGetSynonyms (const CSeq_id_Handle &id, int get_flag)
 
CConstRef< CSynonymsSetGetSynonyms (const CBioseq_Handle &bh)
 
void GetAllTSEs (TTSE_Handles &tses, int kind)
 
IScopeTransaction_ImplCreateTransaction ()
 
void SetActiveTransaction (IScopeTransaction_Impl *)
 
IScopeTransaction_ImplGetTransaction ()
 
bool IsTransactionActive () const
 
TSeqPos GetSequenceLength (const CSeq_id_Handle &id, TGetFlags flags)
 
CSeq_inst::TMol GetSequenceType (const CSeq_id_Handle &id, TGetFlags flags)
 
int GetSequenceState (const CSeq_id_Handle &id, TGetFlags flags)
 
int GetSequenceHash (const CSeq_id_Handle &id, TGetFlags flags)
 
void GetSequenceLengths (TSequenceLengths &ret, const TIds &idhs, TGetFlags flags)
 
void GetSequenceTypes (TSequenceTypes &ret, const TIds &idhs, TGetFlags flags)
 
void GetSequenceStates (TSequenceStates &ret, const TIds &idhs, TGetFlags flags)
 
void GetSequenceHashes (TSequenceHashes &ret, const TIds &idhs, TGetFlags flags)
 
void x_ClearCacheOnRemoveData (const CTSE_Info *old_tse=0)
 
void x_ClearAnnotCache (void)
 
void x_ClearCacheOnNewAnnot (const CTSE_Info &new_tse)
 
TTSE_Lock x_GetTSE_Lock (const CSeq_entry &tse, int action)
 
TSeq_entry_Lock x_GetSeq_entry_Lock (const CSeq_entry &entry, int action)
 
TSeq_annot_Lock x_GetSeq_annot_Lock (const CSeq_annot &annot, int action)
 
TBioseq_set_Lock x_GetBioseq_set_Lock (const CBioseq_set &seqset, int action)
 
TBioseq_Lock x_GetBioseq_Lock (const CBioseq &bioseq, int action)
 
TTSE_Lock x_GetTSE_Lock (const CTSE_Lock &lock, CDataSource_ScopeInfo &ds)
 
TTSE_Lock x_GetTSE_Lock (const CTSE_ScopeInfo &tse)
 
CRef< CDataSource_ScopeInfox_GetDSInfo (CDataSource &ds)
 
CRef< CDataSource_ScopeInfoAddDS (CRef< CDataSource > ds, TPriority priority)
 
CRef< CDataSource_ScopeInfoGetEditDS (TPriority priority)
 
CRef< CDataSource_ScopeInfoGetConstDS (TPriority priority)
 
CRef< CDataSource_ScopeInfoAddDSBefore (CRef< CDataSource > ds, CRef< CDataSource_ScopeInfo > ds2, const CTSE_ScopeInfo *replaced_tse=0)
 
bool GetKeepExternalAnnotsForEdit () const
 
void SetKeepExternalAnnotsForEdit (bool keep=true)
 
- Public Member Functions inherited from CObject
 CObject (void)
 Constructor. More...
 
 CObject (const CObject &src)
 Copy constructor. More...
 
virtual ~CObject (void)
 Destructor. More...
 
CObjectoperator= (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...
 
- Public Member Functions inherited from CDebugDumpable
 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 Types

typedef vector< CBioseq_HandleTBioseq_HandleSet
 
typedef int TBioseqLevelFlag
 
typedef CBioseq_ScopeInfo::TTSE_MatchSet TTSE_MatchSet
 
typedef CDataSource::TTSE_LockMatchSet TTSE_LockMatchSet_DS
 
typedef CRWLock TConfLock
 
typedef TConfLock::TReadLockGuard TConfReadLockGuard
 
typedef TConfLock::TWriteLockGuard TConfWriteLockGuard
 
typedef CFastMutex TSeq_idMapLock
 

Private Member Functions

 CScope_Impl (CObjectManager &objmgr)
 
virtual ~CScope_Impl (void)
 
 CScope_Impl (const CScope_Impl &)
 
CScope_Imploperator= (const CScope_Impl &)
 
CDataSourceGetFirstLoaderSource (void)
 
void GetTSESetWithAnnots (const CSeq_id_Handle &idh, TTSE_LockMatchSet &tse_set)
 
void GetTSESetWithAnnots (const CBioseq_Handle &bh, TTSE_LockMatchSet &tse_set)
 
void GetTSESetWithAnnots (const CSeq_id_Handle &idh, TTSE_LockMatchSet &tse_set, const SAnnotSelector &sel)
 
void GetTSESetWithAnnots (const CBioseq_Handle &bh, TTSE_LockMatchSet &tse_set, const SAnnotSelector &sel)
 
void x_AttachToOM (CObjectManager &objmgr)
 
void x_DetachFromOM (void)
 
void x_ReportNewDataConflict (const CSeq_id_Handle *conflict_id=0)
 
void x_ClearCacheOnNewDS (void)
 
void x_ClearCacheOnEdit (const CTSE_ScopeInfo &replaced_tse)
 
void x_ClearCacheOnNewData (const TIds &seq_ids, const TIds &annot_ids)
 
void x_ClearCacheOnNewData (const CTSE_Info &new_tse)
 
void x_ClearCacheOnNewData (const CTSE_Info &new_tse, const CSeq_id_Handle &new_id)
 
void x_ClearCacheOnNewData (const CTSE_Info &new_tse, const CSeq_entry_Info &new_entry)
 
void x_ClearCacheOnRemoveSeqId (const CSeq_id_Handle &id, CBioseq_ScopeInfo &seq)
 
void x_ClearCacheOnRemoveAnnot (const CTSE_Info &old_tse)
 
CRef< CDataSource_ScopeInfoGetEditDataSource (CDataSource_ScopeInfo &ds, const CTSE_ScopeInfo *replaced_tse=0)
 
CSeq_entry_EditHandle x_AttachEntry (const CBioseq_set_EditHandle &seqset, CRef< CSeq_entry_Info > entry, int index)
 
void x_AttachEntry (const CBioseq_set_EditHandle &seqset, const CSeq_entry_EditHandle &entry, int index)
 
CSeq_annot_EditHandle x_AttachAnnot (const CSeq_entry_EditHandle &entry, CRef< CSeq_annot_Info > annot)
 
void x_AttachAnnot (const CSeq_entry_EditHandle &entry, const CSeq_annot_EditHandle &annot)
 
CBioseq_EditHandle x_SelectSeq (const CSeq_entry_EditHandle &entry, CRef< CBioseq_Info > bioseq)
 
CBioseq_set_EditHandle x_SelectSet (const CSeq_entry_EditHandle &entry, CRef< CBioseq_set_Info > seqset)
 
void x_SelectSeq (const CSeq_entry_EditHandle &entry, const CBioseq_EditHandle &bioseq)
 
void x_SelectSet (const CSeq_entry_EditHandle &entry, const CBioseq_set_EditHandle &seqset)
 
void x_ResolveSeq_id (TSeq_idMapValue &id, int get_flag, SSeqMatch_Scope &match)
 
SSeqMatch_Scope x_FindBioseqInfo (const CPriorityTree &tree, const CSeq_id_Handle &idh, int get_flag)
 
SSeqMatch_Scope x_FindBioseqInfo (const CPriorityNode &node, const CSeq_id_Handle &idh, int get_flag)
 
SSeqMatch_Scope x_FindBioseqInfo (CDataSource_ScopeInfo &ds_info, const CSeq_id_Handle &idh, int get_flag)
 
CBioseq_Handle x_GetBioseqHandleFromTSE (const CSeq_id_Handle &id, const CTSE_Handle &tse)
 
void x_UpdateHandleSeq_id (CBioseq_Handle &bh)
 
CBioseq_Handle GetBioseqHandle (const CBioseq_Info &seq, const CTSE_Handle &tse)
 
CBioseq_Handle x_GetBioseqHandle (const CBioseq_Info &seq, const CTSE_Handle &tse)
 
CRef< CSeq_entryx_MakeDummyTSE (CBioseq &seq) const
 
CRef< CSeq_entryx_MakeDummyTSE (CBioseq_set &seqset) const
 
CRef< CSeq_entryx_MakeDummyTSE (CSeq_annot &annot) const
 
CRef< CSeq_entryx_MakeDummyTSE (CSeq_submit &submit) const
 
bool x_IsDummyTSE (const CTSE_Info &tse, const CBioseq_Info &seq) const
 
bool x_IsDummyTSE (const CTSE_Info &tse, const CBioseq_set_Info &seqset) const
 
bool x_IsDummyTSE (const CTSE_Info &tse, const CSeq_annot_Info &annot) const
 
void x_GetBioseqHandlesSorted (const TIds &ids, size_t from, size_t count, TBioseqHandles &ret)
 Bulk retrieval methods. More...
 
void x_PopulateBioseq_HandleSet (const CSeq_entry_Handle &tse, TBioseq_HandleSet &handles, CSeq_inst::EMol filter, TBioseqLevelFlag level)
 
CConstRef< CSynonymsSetx_GetSynonyms (CBioseq_ScopeInfo &info)
 
void x_AddSynonym (const CSeq_id_Handle &idh, CSynonymsSet &syn_set, CBioseq_ScopeInfo &info)
 
TSeq_idMapValuex_GetSeq_id_Info (const CSeq_id_Handle &id)
 
TSeq_idMapValuex_GetSeq_id_Info (const CBioseq_Handle &bh)
 
TSeq_idMapValuex_FindSeq_id_Info (const CSeq_id_Handle &id)
 
CRef< CBioseq_ScopeInfox_InitBioseq_Info (TSeq_idMapValue &info, int get_flag, SSeqMatch_Scope &match)
 
bool x_InitBioseq_Info (TSeq_idMapValue &info, CBioseq_ScopeInfo &bioseq_info)
 
CRef< CBioseq_ScopeInfox_GetBioseq_Info (const CSeq_id_Handle &id, int get_flag, SSeqMatch_Scope &match)
 
CRef< CBioseq_ScopeInfox_FindBioseq_Info (const CSeq_id_Handle &id, int get_flag, SSeqMatch_Scope &match)
 
CBioseq_ScopeInfo::TAnnotRefInfox_GetAnnotRef_Info (const SAnnotSelector *sel, CBioseq_ScopeInfo::TAnnotRefInfo &main_info, CBioseq_ScopeInfo::TNAAnnotRefInfo &na_info)
 
void x_GetTSESetWithAnnots (TTSE_LockMatchSet &lock, CBioseq_ScopeInfo &binfo, const SAnnotSelector *sel=0)
 
void x_GetTSESetWithAnnots (TTSE_LockMatchSet &lock, TTSE_MatchSet *save_match, CBioseq_ScopeInfo &binfo, const SAnnotSelector *sel=0)
 
void x_GetTSESetWithAnnots (TTSE_LockMatchSet &lock, TSeq_idMapValue &info, const SAnnotSelector *sel=0)
 
void x_GetTSESetWithAnnots (TTSE_LockMatchSet &lock, TTSE_MatchSet *save_match, TSeq_idMapValue &info, const SAnnotSelector *sel=0)
 
void x_AddTSESetWithAnnots (TTSE_LockMatchSet &lock, TTSE_MatchSet *save_match, const TTSE_LockMatchSet_DS &add, CDataSource_ScopeInfo &ds_info, CDataLoader::TProcessedNAs *filter_nas=0)
 
void x_GetTSESetWithOrphanAnnots (TTSE_LockMatchSet &lock, TTSE_MatchSet *save_match, const TSeq_idSet &ids, CBioseq_ScopeInfo *binfo, const SAnnotSelector *sel)
 
void x_GetTSESetWithBioseqAnnots (TTSE_LockMatchSet &lock, TTSE_MatchSet *save_match, CBioseq_ScopeInfo &binfo, const SAnnotSelector *sel)
 
void x_GetTSESetWithBioseqAnnots (TTSE_LockMatchSet &lock, CBioseq_ScopeInfo &binfo, const SAnnotSelector *sel)
 
void x_UpdateProcessedNAs (const SAnnotSelector *&sel, unique_ptr< SAnnotSelector > &sel_copy, CDataLoader::TProcessedNAs &filter_nas, CDataLoader::TProcessedNAs &processed_nas)
 
void x_LockMatchSet (TTSE_LockMatchSet &lock, const TTSE_MatchSet &match)
 

Private Attributes

CScopem_HeapScope
 
CRef< CObjectManagerm_ObjMgr
 
CPriorityTree m_setDataSrc
 
TDSMap m_DSMap
 
CInitMutexPool m_MutexPool
 
TConfLock m_ConfLock
 
TSeq_idMap m_Seq_idMap
 
TSeq_idMapLock m_Seq_idMapLock
 
IScopeTransaction_Implm_Transaction
 
atomic< intm_BioseqChangeCounter
 
atomic< intm_AnnotChangeCounter
 
bool m_KeepExternalAnnotsForEdit
 

Friends

class CScope
 
class CHeapScope
 
class CObjectManager
 
class CSeqVector
 
class CDataSource
 
class CBioseq_CI
 
class CAnnot_Collector
 
class CBioseq_Handle
 
class CBioseq_set_Handle
 
class CSeq_entry_Handle
 
class CBioseq_EditHandle
 
class CBioseq_set_EditHandle
 
class CSeq_entry_EditHandle
 
class CSeq_annot_EditHandle
 
class CTSE_CI
 
class CSeq_annot_CI
 
class CSeqMap_CI
 
class CPrefetchTokenOld_Impl
 
class CDataSource_ScopeInfo
 
class CTSE_ScopeInfo
 
class CScopeTransaction_Impl
 
class CBioseq_ScopeInfo
 

Additional Inherited Members

- Static Public Member Functions inherited from CObject
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 Public Member Functions inherited from CDebugDumpable
static void EnableDebugDump (bool on)
 
- Static Public Attributes inherited from CObject
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...
 
- Protected Member Functions inherited from CObject
virtual void DeleteThis (void)
 Virtual method "deleting" this object. More...
 

Detailed Description

Definition at line 130 of file scope_impl.hpp.

Member Typedef Documentation

◆ TBioseq_HandleSet

Definition at line 558 of file scope_impl.hpp.

◆ TBioseq_Lock

Definition at line 524 of file scope_impl.hpp.

◆ TBioseq_set_Lock

Definition at line 523 of file scope_impl.hpp.

◆ TBioseqHandles

Bulk retrieval methods.

Definition at line 347 of file scope_impl.hpp.

◆ TBioseqLevelFlag

Definition at line 559 of file scope_impl.hpp.

◆ TBulkIds

typedef vector<TIds> CScope_Impl::TBulkIds

Definition at line 144 of file scope_impl.hpp.

◆ TCDD_Entries

Definition at line 350 of file scope_impl.hpp.

◆ TConfLock

Definition at line 644 of file scope_impl.hpp.

◆ TConfReadLockGuard

Definition at line 645 of file scope_impl.hpp.

◆ TConfWriteLockGuard

Definition at line 646 of file scope_impl.hpp.

◆ TDSMap

Definition at line 142 of file scope_impl.hpp.

◆ TEditInfoMap

Definition at line 141 of file scope_impl.hpp.

◆ TExist

Definition at line 152 of file scope_impl.hpp.

◆ TGetFlags

Definition at line 334 of file scope_impl.hpp.

◆ TGIs

typedef vector<TGi> CScope_Impl::TGIs

Definition at line 361 of file scope_impl.hpp.

◆ TIds

Definition at line 143 of file scope_impl.hpp.

◆ TLabels

typedef vector<string> CScope_Impl::TLabels

Definition at line 365 of file scope_impl.hpp.

◆ TMissing

Definition at line 151 of file scope_impl.hpp.

◆ TPriority

Definition at line 140 of file scope_impl.hpp.

◆ TSeq_annot_Lock

Definition at line 522 of file scope_impl.hpp.

◆ TSeq_entry_Lock

Definition at line 521 of file scope_impl.hpp.

◆ TSeq_idMap

Definition at line 136 of file scope_impl.hpp.

◆ TSeq_idMapLock

Definition at line 647 of file scope_impl.hpp.

◆ TSeq_idMapValue

Definition at line 137 of file scope_impl.hpp.

◆ TSeq_idSet

Definition at line 138 of file scope_impl.hpp.

◆ TSequenceHashes

Definition at line 403 of file scope_impl.hpp.

◆ TSequenceLengths

Definition at line 391 of file scope_impl.hpp.

◆ TSequenceStates

Definition at line 399 of file scope_impl.hpp.

◆ TSequenceTypes

Definition at line 395 of file scope_impl.hpp.

◆ TTaxIds

typedef vector<TTaxId> CScope_Impl::TTaxIds

Definition at line 369 of file scope_impl.hpp.

◆ TTSE_Handles

Definition at line 145 of file scope_impl.hpp.

◆ TTSE_Lock

Definition at line 133 of file scope_impl.hpp.

◆ TTSE_LockMatchSet

Definition at line 139 of file scope_impl.hpp.

◆ TTSE_LockMatchSet_DS

Definition at line 586 of file scope_impl.hpp.

◆ TTSE_MatchSet

Definition at line 585 of file scope_impl.hpp.

Member Enumeration Documentation

◆ EGetBioseqFlag2

Enumerator
fUserFlagMask 
fNoLockFlag 

Definition at line 284 of file scope_impl.hpp.

Constructor & Destructor Documentation

◆ CScope_Impl() [1/2]

CScope_Impl::CScope_Impl ( CObjectManager objmgr)
private

Definition at line 102 of file scope_impl.cpp.

◆ ~CScope_Impl()

CScope_Impl::~CScope_Impl ( void  )
privatevirtual

Definition at line 115 of file scope_impl.cpp.

References m_ConfLock, and x_DetachFromOM().

◆ CScope_Impl() [2/2]

CScope_Impl::CScope_Impl ( const CScope_Impl )
private

Member Function Documentation

◆ AddBioseq()

CBioseq_Handle CScope_Impl::AddBioseq ( CBioseq bioseq,
TPriority  pri,
TExist  action 
)

◆ AddDataLoader()

void CScope_Impl::AddDataLoader ( const string loader_name,
TPriority  priority 
)

◆ AddDefaults()

void CScope_Impl::AddDefaults ( TPriority  priority)

◆ AddDS()

CRef< CDataSource_ScopeInfo > CScope_Impl::AddDS ( CRef< CDataSource ds,
TPriority  priority 
)

◆ AddDSBefore()

CRef< CDataSource_ScopeInfo > CScope_Impl::AddDSBefore ( CRef< CDataSource ds,
CRef< CDataSource_ScopeInfo ds2,
const CTSE_ScopeInfo replaced_tse = 0 
)

Definition at line 1379 of file scope_impl.cpp.

References m_ConfLock, m_setDataSrc, NCBI_THROW, x_ClearCacheOnEdit(), and x_GetDSInfo().

Referenced by GetEditDataSource().

◆ AddScope()

void CScope_Impl::AddScope ( CScope_Impl scope,
TPriority  priority 
)

◆ AddSeq_annot()

CSeq_annot_Handle CScope_Impl::AddSeq_annot ( CSeq_annot annot,
TPriority  pri,
TExist  action 
)

◆ AddSeq_entry()

CSeq_entry_Handle CScope_Impl::AddSeq_entry ( CSeq_entry entry,
TPriority  pri,
TExist  action 
)

◆ AddSeq_submit()

CSeq_entry_Handle CScope_Impl::AddSeq_submit ( CSeq_submit submit,
TPriority  pri 
)

◆ AddSharedBioseq()

CBioseq_Handle CScope_Impl::AddSharedBioseq ( const CBioseq bioseq,
TPriority  pri,
TExist  action 
)

◆ AddSharedSeq_annot()

CSeq_annot_Handle CScope_Impl::AddSharedSeq_annot ( const CSeq_annot annot,
TPriority  pri,
TExist  action 
)

◆ AddSharedSeq_entry()

CSeq_entry_Handle CScope_Impl::AddSharedSeq_entry ( const CSeq_entry entry,
TPriority  pri,
TExist  action 
)

◆ AttachAnnot() [1/3]

CSeq_annot_EditHandle CScope_Impl::AttachAnnot ( const CSeq_entry_EditHandle entry,
const CSeq_annot_EditHandle annot 
)

◆ AttachAnnot() [2/3]

CSeq_annot_EditHandle CScope_Impl::AttachAnnot ( const CSeq_entry_EditHandle entry,
CRef< CSeq_annot_Info annot 
)

Definition at line 889 of file scope_impl.cpp.

References _ASSERT, AttachAnnot(), CHECK_HANDLE, and x_AttachAnnot().

◆ AttachAnnot() [3/3]

CSeq_annot_EditHandle CScope_Impl::AttachAnnot ( const CSeq_entry_EditHandle entry,
CSeq_annot annot 
)

◆ AttachEntry() [1/3]

CSeq_entry_EditHandle CScope_Impl::AttachEntry ( const CBioseq_set_EditHandle seqset,
const CSeq_entry_EditHandle entry,
int  index = -1 
)

◆ AttachEntry() [2/3]

CSeq_entry_EditHandle CScope_Impl::AttachEntry ( const CBioseq_set_EditHandle seqset,
CRef< CSeq_entry_Info entry,
int  index = -1 
)

Definition at line 704 of file scope_impl.cpp.

References _ASSERT, AttachEntry(), CHECK_HANDLE, and x_AttachEntry().

◆ AttachEntry() [3/3]

CSeq_entry_EditHandle CScope_Impl::AttachEntry ( const CBioseq_set_EditHandle seqset,
CSeq_entry entry,
int  index = -1 
)

◆ CreateTransaction()

IScopeTransaction_Impl * CScope_Impl::CreateTransaction ( )

Definition at line 3239 of file scope_impl.cpp.

References CScopeTransaction_Impl, and m_Transaction.

Referenced by GetTransaction().

◆ Exists()

bool CScope_Impl::Exists ( const CSeq_id_Handle id)

Definition at line 2692 of file scope_impl.cpp.

References CSeq_inst_Base::eMol_not_set, and GetSequenceType().

Referenced by CScope::Exists().

◆ GetAccVer()

CSeq_id_Handle CScope_Impl::GetAccVer ( const CSeq_id_Handle idh,
TGetFlags  flags 
)

◆ GetAccVers()

void CScope_Impl::GetAccVers ( TIds ret,
const TIds idhs,
TGetFlags  flags 
)

◆ GetAllTSEs()

void CScope_Impl::GetAllTSEs ( TTSE_Handles tses,
int  kind 
)

Definition at line 3202 of file scope_impl.cpp.

References CScope::eManualTSEs, ITERATE, m_ConfLock, m_setDataSrc, and x_GetTSE_Lock().

Referenced by CScope::GetAllTSEs().

◆ GetBioseq_setHandle()

CBioseq_set_Handle CScope_Impl::GetBioseq_setHandle ( const CBioseq_set seqset,
TMissing  action 
)

◆ GetBioseqHandle() [1/4]

CBioseq_Handle CScope_Impl::GetBioseqHandle ( const CBioseq bioseq,
TMissing  action 
)

◆ GetBioseqHandle() [2/4]

CBioseq_Handle CScope_Impl::GetBioseqHandle ( const CBioseq_Info seq,
const CTSE_Handle tse 
)
private

Definition at line 2081 of file scope_impl.cpp.

References m_ConfLock, and x_GetBioseqHandle().

◆ GetBioseqHandle() [3/4]

CBioseq_Handle CScope_Impl::GetBioseqHandle ( const CSeq_id_Handle id,
int  get_flag 
)

◆ GetBioseqHandle() [4/4]

CBioseq_Handle CScope_Impl::GetBioseqHandle ( const CSeq_loc loc,
int  get_flag 
)

◆ GetBioseqHandleFromTSE()

CBioseq_Handle CScope_Impl::GetBioseqHandleFromTSE ( const CSeq_id_Handle id,
const CTSE_Handle tse 
)

◆ GetBioseqHandles()

CScope_Impl::TBioseqHandles CScope_Impl::GetBioseqHandles ( const TIds ids)

◆ GetBulkIds()

void CScope_Impl::GetBulkIds ( TBulkIds ret,
const TIds idhs,
TGetFlags  flags 
)

◆ GetCDDAnnots() [1/2]

CScope_Impl::TCDD_Entries CScope_Impl::GetCDDAnnots ( const TBioseqHandles bhs)

◆ GetCDDAnnots() [2/2]

CScope_Impl::TCDD_Entries CScope_Impl::GetCDDAnnots ( const TIds idhs)

Definition at line 3355 of file scope_impl.cpp.

References GetBioseqHandles().

Referenced by CScope::GetCDDAnnots().

◆ GetConstDS()

CRef< CDataSource_ScopeInfo > CScope_Impl::GetConstDS ( TPriority  priority)

◆ GetEditDataSource()

CRef< CDataSource_ScopeInfo > CScope_Impl::GetEditDataSource ( CDataSource_ScopeInfo ds,
const CTSE_ScopeInfo replaced_tse = 0 
)
private

◆ GetEditDS()

CRef< CDataSource_ScopeInfo > CScope_Impl::GetEditDS ( TPriority  priority)

◆ GetEditHandle() [1/5]

CBioseq_EditHandle CScope_Impl::GetEditHandle ( const CBioseq_Handle seq)

◆ GetEditHandle() [2/5]

CBioseq_set_EditHandle CScope_Impl::GetEditHandle ( const CBioseq_set_Handle seqset)

◆ GetEditHandle() [3/5]

CSeq_annot_EditHandle CScope_Impl::GetEditHandle ( const CSeq_annot_Handle annot)

◆ GetEditHandle() [4/5]

CSeq_entry_EditHandle CScope_Impl::GetEditHandle ( const CSeq_entry_Handle entry)

◆ GetEditHandle() [5/5]

CTSE_Handle CScope_Impl::GetEditHandle ( const CTSE_Handle src_tse)

◆ GetFirstLoaderSource()

CDataSource * CScope_Impl::GetFirstLoaderSource ( void  )
private

Definition at line 3219 of file scope_impl.cpp.

References m_ConfLock, and m_setDataSrc.

Referenced by CPrefetchTokenOld_Impl::x_InitPrefetch().

◆ GetGi()

TGi CScope_Impl::GetGi ( const CSeq_id_Handle idh,
TGetFlags  flags 
)

◆ GetGis()

void CScope_Impl::GetGis ( TGIs ret,
const TIds idhs,
TGetFlags  flags 
)

◆ GetIds()

CScope_Impl::TIds CScope_Impl::GetIds ( const CSeq_id_Handle idh,
TGetFlags  flags = 0 
)

◆ GetKeepExternalAnnotsForEdit()

bool CScope_Impl::GetKeepExternalAnnotsForEdit ( ) const
inline

◆ GetLabel()

string CScope_Impl::GetLabel ( const CSeq_id_Handle idh,
TGetFlags  flags 
)

◆ GetLabels()

void CScope_Impl::GetLabels ( TLabels ret,
const TIds idhs,
TGetFlags  flags 
)

◆ GetObjectManager()

CObjectManager & CScope_Impl::GetObjectManager ( void  )
inline

Definition at line 687 of file scope_impl.hpp.

References m_ObjMgr.

Referenced by CScope::GetObjectManager(), and CScopeSource::GetScope().

◆ GetScope()

CScope & CScope_Impl::GetScope ( void  )

Definition at line 122 of file scope_impl.cpp.

References _ASSERT, and m_HeapScope.

◆ GetSeq_annotHandle()

CSeq_annot_Handle CScope_Impl::GetSeq_annotHandle ( const CSeq_annot annot,
TMissing  action 
)

◆ GetSeq_entryHandle() [1/3]

CSeq_entry_Handle CScope_Impl::GetSeq_entryHandle ( CDataLoader loader,
const CBlobIdKey blob_id,
TMissing  action 
)

◆ GetSeq_entryHandle() [2/3]

CSeq_entry_Handle CScope_Impl::GetSeq_entryHandle ( const CSeq_entry entry,
TMissing  action 
)

Definition at line 1228 of file scope_impl.cpp.

References CSeq_entry_Handle, m_ConfLock, and x_GetSeq_entry_Lock().

◆ GetSeq_entryHandle() [3/3]

CSeq_entry_Handle CScope_Impl::GetSeq_entryHandle ( const CTSE_Handle tse)

Definition at line 1267 of file scope_impl.cpp.

References CSeq_entry_Handle, and CTSE_Handle::x_GetTSE_Info().

◆ GetSeq_featHandle()

CSeq_feat_Handle CScope_Impl::GetSeq_featHandle ( const CSeq_feat feat,
TMissing  action 
)

◆ GetSequenceHash()

int CScope_Impl::GetSequenceHash ( const CSeq_id_Handle id,
TGetFlags  flags 
)

◆ GetSequenceHashes()

void CScope_Impl::GetSequenceHashes ( TSequenceHashes ret,
const TIds idhs,
TGetFlags  flags 
)

◆ GetSequenceLength()

TSeqPos CScope_Impl::GetSequenceLength ( const CSeq_id_Handle id,
TGetFlags  flags 
)

◆ GetSequenceLengths()

void CScope_Impl::GetSequenceLengths ( TSequenceLengths ret,
const TIds idhs,
TGetFlags  flags 
)

◆ GetSequenceState()

int CScope_Impl::GetSequenceState ( const CSeq_id_Handle id,
TGetFlags  flags 
)

◆ GetSequenceStates()

void CScope_Impl::GetSequenceStates ( TSequenceStates ret,
const TIds idhs,
TGetFlags  flags 
)

◆ GetSequenceType()

CSeq_inst::TMol CScope_Impl::GetSequenceType ( const CSeq_id_Handle id,
TGetFlags  flags 
)

◆ GetSequenceTypes()

void CScope_Impl::GetSequenceTypes ( TSequenceTypes ret,
const TIds idhs,
TGetFlags  flags 
)

◆ GetSynonyms() [1/2]

CConstRef< CSynonymsSet > CScope_Impl::GetSynonyms ( const CBioseq_Handle bh)

Definition at line 3127 of file scope_impl.cpp.

References m_ConfLock, CBioseq_Handle::x_GetScopeInfo(), and x_GetSynonyms().

◆ GetSynonyms() [2/2]

CConstRef< CSynonymsSet > CScope_Impl::GetSynonyms ( const CSeq_id_Handle id,
int  get_flag 
)

◆ GetTaxId()

TTaxId CScope_Impl::GetTaxId ( const CSeq_id_Handle idh,
TGetFlags  flags 
)

◆ GetTaxIds()

void CScope_Impl::GetTaxIds ( TTaxIds ret,
const TIds idhs,
TGetFlags  flags 
)

◆ GetTransaction()

IScopeTransaction_Impl & CScope_Impl::GetTransaction ( )

◆ GetTSESetWithAnnots() [1/4]

void CScope_Impl::GetTSESetWithAnnots ( const CBioseq_Handle bh,
TTSE_LockMatchSet tse_set 
)
private

◆ GetTSESetWithAnnots() [2/4]

void CScope_Impl::GetTSESetWithAnnots ( const CBioseq_Handle bh,
TTSE_LockMatchSet tse_set,
const SAnnotSelector sel 
)
private

◆ GetTSESetWithAnnots() [3/4]

void CScope_Impl::GetTSESetWithAnnots ( const CSeq_id_Handle idh,
TTSE_LockMatchSet tse_set 
)
private

◆ GetTSESetWithAnnots() [4/4]

void CScope_Impl::GetTSESetWithAnnots ( const CSeq_id_Handle idh,
TTSE_LockMatchSet tse_set,
const SAnnotSelector sel 
)
private

◆ IsSameBioseq()

bool CScope_Impl::IsSameBioseq ( const CSeq_id_Handle id1,
const CSeq_id_Handle id2,
int  get_flag 
)

Definition at line 1881 of file scope_impl.cpp.

References fNoLockFlag, and GetBioseqHandle().

Referenced by CScope::IsSameBioseq().

◆ IsTransactionActive()

bool CScope_Impl::IsTransactionActive ( ) const

Definition at line 3261 of file scope_impl.cpp.

References m_Transaction.

◆ operator=()

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

◆ RemoveAnnot()

void CScope_Impl::RemoveAnnot ( const CSeq_annot_EditHandle annot)

◆ RemoveBioseq()

void CScope_Impl::RemoveBioseq ( const CBioseq_EditHandle seq)

Definition at line 1661 of file scope_impl.cpp.

References CBioseq_EditHandle::GetParentEntry(), and SelectNone().

◆ RemoveBioseq_set()

void CScope_Impl::RemoveBioseq_set ( const CBioseq_set_EditHandle seqset)

Definition at line 1667 of file scope_impl.cpp.

References CBioseq_set_EditHandle::GetParentEntry(), and SelectNone().

◆ RemoveDataLoader()

void CScope_Impl::RemoveDataLoader ( const string loader_name,
int  action 
)

◆ RemoveEntry()

void CScope_Impl::RemoveEntry ( const CSeq_entry_EditHandle entry)

◆ RemoveFromHistory() [1/2]

void CScope_Impl::RemoveFromHistory ( const CSeq_id_Handle seq_id)

◆ RemoveFromHistory() [2/2]

void CScope_Impl::RemoveFromHistory ( const CTSE_Handle tse,
int  action 
)

◆ RemoveTopLevelAnnot()

void CScope_Impl::RemoveTopLevelAnnot ( const CSeq_annot_Handle annot)

◆ RemoveTopLevelBioseq()

void CScope_Impl::RemoveTopLevelBioseq ( const CBioseq_Handle seq)

◆ RemoveTopLevelBioseq_set()

void CScope_Impl::RemoveTopLevelBioseq_set ( const CBioseq_set_Handle seqset)

◆ RemoveTopLevelSeqEntry()

void CScope_Impl::RemoveTopLevelSeqEntry ( const CTSE_Handle entry)

◆ ResetDataAndHistory()

void CScope_Impl::ResetDataAndHistory ( void  )

◆ ResetHistory()

void CScope_Impl::ResetHistory ( int  action)

Definition at line 2628 of file scope_impl.cpp.

References m_ConfLock, m_DSMap, NON_CONST_ITERATE, and x_ClearCacheOnRemoveData().

Referenced by CScope::ResetHistory().

◆ ResetScope()

void CScope_Impl::ResetScope ( void  )

◆ SelectNone()

void CScope_Impl::SelectNone ( const CSeq_entry_EditHandle entry)

◆ SelectSeq() [1/3]

CBioseq_EditHandle CScope_Impl::SelectSeq ( const CSeq_entry_EditHandle entry,
CBioseq seq 
)

◆ SelectSeq() [2/3]

CBioseq_EditHandle CScope_Impl::SelectSeq ( const CSeq_entry_EditHandle entry,
const CBioseq_EditHandle seq 
)

◆ SelectSeq() [3/3]

CBioseq_EditHandle CScope_Impl::SelectSeq ( const CSeq_entry_EditHandle entry,
CRef< CBioseq_Info seq 
)

Definition at line 769 of file scope_impl.cpp.

References _ASSERT, CHECK_HANDLE, SelectSeq(), and x_SelectSeq().

◆ SelectSet() [1/3]

CBioseq_set_EditHandle CScope_Impl::SelectSet ( const CSeq_entry_EditHandle entry,
CBioseq_set seqset 
)

◆ SelectSet() [2/3]

CBioseq_set_EditHandle CScope_Impl::SelectSet ( const CSeq_entry_EditHandle entry,
const CBioseq_set_EditHandle seqset 
)

◆ SelectSet() [3/3]

CBioseq_set_EditHandle CScope_Impl::SelectSet ( const CSeq_entry_EditHandle entry,
CRef< CBioseq_set_Info seqset 
)

Definition at line 827 of file scope_impl.cpp.

References _ASSERT, CHECK_HANDLE, SelectSet(), and x_SelectSet().

◆ SetActiveTransaction()

void CScope_Impl::SetActiveTransaction ( IScopeTransaction_Impl transaction)

◆ SetKeepExternalAnnotsForEdit()

void CScope_Impl::SetKeepExternalAnnotsForEdit ( bool  keep = true)

◆ x_AddSynonym()

void CScope_Impl::x_AddSynonym ( const CSeq_id_Handle idh,
CSynonymsSet syn_set,
CBioseq_ScopeInfo info 
)
private

◆ x_AddTSESetWithAnnots()

void CScope_Impl::x_AddTSESetWithAnnots ( TTSE_LockMatchSet lock,
TTSE_MatchSet save_match,
const TTSE_LockMatchSet_DS add,
CDataSource_ScopeInfo ds_info,
CDataLoader::TProcessedNAs filter_nas = 0 
)
private

◆ x_AttachAnnot() [1/2]

void CScope_Impl::x_AttachAnnot ( const CSeq_entry_EditHandle entry,
const CSeq_annot_EditHandle annot 
)
private

◆ x_AttachAnnot() [2/2]

CSeq_annot_EditHandle CScope_Impl::x_AttachAnnot ( const CSeq_entry_EditHandle entry,
CRef< CSeq_annot_Info annot 
)
private

◆ x_AttachEntry() [1/2]

void CScope_Impl::x_AttachEntry ( const CBioseq_set_EditHandle seqset,
const CSeq_entry_EditHandle entry,
int  index 
)
private

◆ x_AttachEntry() [2/2]

CSeq_entry_EditHandle CScope_Impl::x_AttachEntry ( const CBioseq_set_EditHandle seqset,
CRef< CSeq_entry_Info entry,
int  index 
)
private

◆ x_AttachToOM()

void CScope_Impl::x_AttachToOM ( CObjectManager objmgr)
private

◆ x_ClearAnnotCache()

void CScope_Impl::x_ClearAnnotCache ( void  )

◆ x_ClearCacheOnEdit()

void CScope_Impl::x_ClearCacheOnEdit ( const CTSE_ScopeInfo replaced_tse)
private

◆ x_ClearCacheOnNewAnnot()

void CScope_Impl::x_ClearCacheOnNewAnnot ( const CTSE_Info new_tse)

Definition at line 1108 of file scope_impl.cpp.

References x_ClearAnnotCache().

Referenced by AddSeq_annot(), AddSeq_submit(), and x_AttachAnnot().

◆ x_ClearCacheOnNewData() [1/4]

void CScope_Impl::x_ClearCacheOnNewData ( const CTSE_Info new_tse)
private

◆ x_ClearCacheOnNewData() [2/4]

void CScope_Impl::x_ClearCacheOnNewData ( const CTSE_Info new_tse,
const CSeq_entry_Info new_entry 
)
private

◆ x_ClearCacheOnNewData() [3/4]

void CScope_Impl::x_ClearCacheOnNewData ( const CTSE_Info new_tse,
const CSeq_id_Handle new_id 
)
private

Definition at line 967 of file scope_impl.cpp.

References x_ClearCacheOnNewData().

◆ x_ClearCacheOnNewData() [4/4]

void CScope_Impl::x_ClearCacheOnNewData ( const TIds seq_ids,
const TIds annot_ids 
)
private

◆ x_ClearCacheOnNewDS()

void CScope_Impl::x_ClearCacheOnNewDS ( void  )
private

◆ x_ClearCacheOnRemoveAnnot()

void CScope_Impl::x_ClearCacheOnRemoveAnnot ( const CTSE_Info old_tse)
private

Definition at line 1184 of file scope_impl.cpp.

References x_ClearAnnotCache().

Referenced by RemoveAnnot().

◆ x_ClearCacheOnRemoveData()

void CScope_Impl::x_ClearCacheOnRemoveData ( const CTSE_Info old_tse = 0)

◆ x_ClearCacheOnRemoveSeqId()

void CScope_Impl::x_ClearCacheOnRemoveSeqId ( const CSeq_id_Handle id,
CBioseq_ScopeInfo seq 
)
private

◆ x_DetachFromOM()

void CScope_Impl::x_DetachFromOM ( void  )
private

◆ x_FindBioseq_Info()

CRef< CBioseq_ScopeInfo > CScope_Impl::x_FindBioseq_Info ( const CSeq_id_Handle id,
int  get_flag,
SSeqMatch_Scope match 
)
private

◆ x_FindBioseqInfo() [1/3]

SSeqMatch_Scope CScope_Impl::x_FindBioseqInfo ( CDataSource_ScopeInfo ds_info,
const CSeq_id_Handle idh,
int  get_flag 
)
private

◆ x_FindBioseqInfo() [2/3]

SSeqMatch_Scope CScope_Impl::x_FindBioseqInfo ( const CPriorityNode node,
const CSeq_id_Handle idh,
int  get_flag 
)
private

◆ x_FindBioseqInfo() [3/3]

SSeqMatch_Scope CScope_Impl::x_FindBioseqInfo ( const CPriorityTree tree,
const CSeq_id_Handle idh,
int  get_flag 
)
private

◆ x_FindSeq_id_Info()

CScope_Impl::TSeq_idMapValue * CScope_Impl::x_FindSeq_id_Info ( const CSeq_id_Handle id)
private

◆ x_GetAnnotRef_Info()

CBioseq_ScopeInfo::TAnnotRefInfo & CScope_Impl::x_GetAnnotRef_Info ( const SAnnotSelector sel,
CBioseq_ScopeInfo::TAnnotRefInfo main_info,
CBioseq_ScopeInfo::TNAAnnotRefInfo na_info 
)
private

◆ x_GetBioseq_Info()

CRef< CBioseq_ScopeInfo > CScope_Impl::x_GetBioseq_Info ( const CSeq_id_Handle id,
int  get_flag,
SSeqMatch_Scope match 
)
private

Definition at line 1805 of file scope_impl.cpp.

References match(), x_GetSeq_id_Info(), and x_InitBioseq_Info().

Referenced by GetBioseqHandle(), and GetSynonyms().

◆ x_GetBioseq_Lock()

CScope_Impl::TBioseq_Lock CScope_Impl::x_GetBioseq_Lock ( const CBioseq bioseq,
int  action 
)

Definition at line 1477 of file scope_impl.cpp.

References CScope::eMissing_Null, m_setDataSrc, and NCBI_THROW.

Referenced by AddBioseq(), AddSharedBioseq(), and GetBioseqHandle().

◆ x_GetBioseq_set_Lock()

CScope_Impl::TBioseq_set_Lock CScope_Impl::x_GetBioseq_set_Lock ( const CBioseq_set seqset,
int  action 
)

Definition at line 1459 of file scope_impl.cpp.

References CScope::eMissing_Null, m_setDataSrc, and NCBI_THROW.

Referenced by GetBioseq_setHandle().

◆ x_GetBioseqHandle()

CBioseq_Handle CScope_Impl::x_GetBioseqHandle ( const CBioseq_Info seq,
const CTSE_Handle tse 
)
private

◆ x_GetBioseqHandleFromTSE()

CBioseq_Handle CScope_Impl::x_GetBioseqHandleFromTSE ( const CSeq_id_Handle id,
const CTSE_Handle tse 
)
private

◆ x_GetBioseqHandlesSorted()

void CScope_Impl::x_GetBioseqHandlesSorted ( const TIds ids,
size_t  from,
size_t  count,
TBioseqHandles ret 
)
private

◆ x_GetDSInfo()

CRef< CDataSource_ScopeInfo > CScope_Impl::x_GetDSInfo ( CDataSource ds)

◆ x_GetSeq_annot_Lock()

CScope_Impl::TSeq_annot_Lock CScope_Impl::x_GetSeq_annot_Lock ( const CSeq_annot annot,
int  action 
)

◆ x_GetSeq_entry_Lock()

CScope_Impl::TSeq_entry_Lock CScope_Impl::x_GetSeq_entry_Lock ( const CSeq_entry entry,
int  action 
)

◆ x_GetSeq_id_Info() [1/2]

TSeq_idMapValue& CScope_Impl::x_GetSeq_id_Info ( const CBioseq_Handle bh)
private

◆ x_GetSeq_id_Info() [2/2]

CScope_Impl::TSeq_idMapValue & CScope_Impl::x_GetSeq_id_Info ( const CSeq_id_Handle id)
private

◆ x_GetSynonyms()

CConstRef< CSynonymsSet > CScope_Impl::x_GetSynonyms ( CBioseq_ScopeInfo info)
private

◆ x_GetTSE_Lock() [1/3]

CScope_Impl::TTSE_Lock CScope_Impl::x_GetTSE_Lock ( const CSeq_entry tse,
int  action 
)

◆ x_GetTSE_Lock() [2/3]

CScope_Impl::TTSE_Lock CScope_Impl::x_GetTSE_Lock ( const CTSE_Lock lock,
CDataSource_ScopeInfo ds 
)

◆ x_GetTSE_Lock() [3/3]

CScope_Impl::TTSE_Lock CScope_Impl::x_GetTSE_Lock ( const CTSE_ScopeInfo tse)

Definition at line 1502 of file scope_impl.cpp.

References _ASSERT, and CTSE_ScopeInfo::GetScopeImpl().

◆ x_GetTSESetWithAnnots() [1/4]

void CScope_Impl::x_GetTSESetWithAnnots ( TTSE_LockMatchSet lock,
CBioseq_ScopeInfo binfo,
const SAnnotSelector sel = 0 
)
private

◆ x_GetTSESetWithAnnots() [2/4]

void CScope_Impl::x_GetTSESetWithAnnots ( TTSE_LockMatchSet lock,
TSeq_idMapValue info,
const SAnnotSelector sel = 0 
)
private

◆ x_GetTSESetWithAnnots() [3/4]

void CScope_Impl::x_GetTSESetWithAnnots ( TTSE_LockMatchSet lock,
TTSE_MatchSet save_match,
CBioseq_ScopeInfo binfo,
const SAnnotSelector sel = 0 
)
private

Definition at line 2381 of file scope_impl.cpp.

References x_GetTSESetWithBioseqAnnots().

◆ x_GetTSESetWithAnnots() [4/4]

void CScope_Impl::x_GetTSESetWithAnnots ( TTSE_LockMatchSet lock,
TTSE_MatchSet save_match,
TSeq_idMapValue info,
const SAnnotSelector sel = 0 
)
private

Definition at line 2390 of file scope_impl.cpp.

References info, and x_GetTSESetWithOrphanAnnots().

◆ x_GetTSESetWithBioseqAnnots() [1/2]

void CScope_Impl::x_GetTSESetWithBioseqAnnots ( TTSE_LockMatchSet lock,
CBioseq_ScopeInfo binfo,
const SAnnotSelector sel 
)
private

◆ x_GetTSESetWithBioseqAnnots() [2/2]

void CScope_Impl::x_GetTSESetWithBioseqAnnots ( TTSE_LockMatchSet lock,
TTSE_MatchSet save_match,
CBioseq_ScopeInfo binfo,
const SAnnotSelector sel 
)
private

◆ x_GetTSESetWithOrphanAnnots()

void CScope_Impl::x_GetTSESetWithOrphanAnnots ( TTSE_LockMatchSet lock,
TTSE_MatchSet save_match,
const TSeq_idSet ids,
CBioseq_ScopeInfo binfo,
const SAnnotSelector sel 
)
private

◆ x_InitBioseq_Info() [1/2]

bool CScope_Impl::x_InitBioseq_Info ( TSeq_idMapValue info,
CBioseq_ScopeInfo bioseq_info 
)
private

◆ x_InitBioseq_Info() [2/2]

CRef< CBioseq_ScopeInfo > CScope_Impl::x_InitBioseq_Info ( TSeq_idMapValue info,
int  get_flag,
SSeqMatch_Scope match 
)
private

◆ x_IsDummyTSE() [1/3]

bool CScope_Impl::x_IsDummyTSE ( const CTSE_Info tse,
const CBioseq_Info seq 
) const
private

◆ x_IsDummyTSE() [2/3]

bool CScope_Impl::x_IsDummyTSE ( const CTSE_Info tse,
const CBioseq_set_Info seqset 
) const
private

Definition at line 1581 of file scope_impl.cpp.

References CBioseq_Base_Info::GetParentSeq_entry_Info().

◆ x_IsDummyTSE() [3/3]

bool CScope_Impl::x_IsDummyTSE ( const CTSE_Info tse,
const CSeq_annot_Info annot 
) const
private

◆ x_LockMatchSet()

void CScope_Impl::x_LockMatchSet ( TTSE_LockMatchSet lock,
const TTSE_MatchSet match 
)
private

◆ x_MakeDummyTSE() [1/4]

CRef< CSeq_entry > CScope_Impl::x_MakeDummyTSE ( CBioseq seq) const
private

◆ x_MakeDummyTSE() [2/4]

CRef< CSeq_entry > CScope_Impl::x_MakeDummyTSE ( CBioseq_set seqset) const
private

Definition at line 1536 of file scope_impl.cpp.

References CSeq_entry_Base::SetSet().

◆ x_MakeDummyTSE() [3/4]

CRef< CSeq_entry > CScope_Impl::x_MakeDummyTSE ( CSeq_annot annot) const
private

◆ x_MakeDummyTSE() [4/4]

CRef< CSeq_entry > CScope_Impl::x_MakeDummyTSE ( CSeq_submit submit) const
private

◆ x_PopulateBioseq_HandleSet()

void CScope_Impl::x_PopulateBioseq_HandleSet ( const CSeq_entry_Handle tse,
TBioseq_HandleSet handles,
CSeq_inst::EMol  filter,
TBioseqLevelFlag  level 
)
private

◆ x_ReportNewDataConflict()

void CScope_Impl::x_ReportNewDataConflict ( const CSeq_id_Handle conflict_id = 0)
private

Definition at line 939 of file scope_impl.cpp.

References CSeq_id_Handle::AsString(), Info(), and LOG_POST_X.

Referenced by x_ClearCacheOnNewData(), and x_ClearCacheOnNewDS().

◆ x_ResolveSeq_id()

void CScope_Impl::x_ResolveSeq_id ( TSeq_idMapValue id,
int  get_flag,
SSeqMatch_Scope match 
)
private

◆ x_SelectSeq() [1/2]

void CScope_Impl::x_SelectSeq ( const CSeq_entry_EditHandle entry,
const CBioseq_EditHandle bioseq 
)
private

◆ x_SelectSeq() [2/2]

CBioseq_EditHandle CScope_Impl::x_SelectSeq ( const CSeq_entry_EditHandle entry,
CRef< CBioseq_Info bioseq 
)
private

◆ x_SelectSet() [1/2]

void CScope_Impl::x_SelectSet ( const CSeq_entry_EditHandle entry,
const CBioseq_set_EditHandle seqset 
)
private

◆ x_SelectSet() [2/2]

CBioseq_set_EditHandle CScope_Impl::x_SelectSet ( const CSeq_entry_EditHandle entry,
CRef< CBioseq_set_Info seqset 
)
private

◆ x_UpdateHandleSeq_id()

void CScope_Impl::x_UpdateHandleSeq_id ( CBioseq_Handle bh)
private

◆ x_UpdateProcessedNAs()

void CScope_Impl::x_UpdateProcessedNAs ( const SAnnotSelector *&  sel,
unique_ptr< SAnnotSelector > &  sel_copy,
CDataLoader::TProcessedNAs filter_nas,
CDataLoader::TProcessedNAs processed_nas 
)
private

Friends And Related Function Documentation

◆ CAnnot_Collector

friend class CAnnot_Collector
friend

Definition at line 666 of file scope_impl.hpp.

◆ CBioseq_CI

friend class CBioseq_CI
friend

Definition at line 665 of file scope_impl.hpp.

◆ CBioseq_EditHandle

friend class CBioseq_EditHandle
friend

Definition at line 670 of file scope_impl.hpp.

Referenced by GetEditHandle().

◆ CBioseq_Handle

friend class CBioseq_Handle
friend

Definition at line 667 of file scope_impl.hpp.

Referenced by AddBioseq(), AddSharedBioseq(), and x_GetBioseqHandleFromTSE().

◆ CBioseq_ScopeInfo

friend class CBioseq_ScopeInfo
friend

Definition at line 682 of file scope_impl.hpp.

Referenced by x_GetBioseqHandlesSorted(), and x_ResolveSeq_id().

◆ CBioseq_set_EditHandle

friend class CBioseq_set_EditHandle
friend

Definition at line 671 of file scope_impl.hpp.

Referenced by GetEditHandle(), and x_SelectSet().

◆ CBioseq_set_Handle

friend class CBioseq_set_Handle
friend

Definition at line 668 of file scope_impl.hpp.

Referenced by GetBioseq_setHandle().

◆ CDataSource

friend class CDataSource
friend

Definition at line 664 of file scope_impl.hpp.

◆ CDataSource_ScopeInfo

friend class CDataSource_ScopeInfo
friend

Definition at line 678 of file scope_impl.hpp.

Referenced by x_GetDSInfo().

◆ CHeapScope

friend class CHeapScope
friend

Definition at line 661 of file scope_impl.hpp.

◆ CObjectManager

friend class CObjectManager
friend

Definition at line 662 of file scope_impl.hpp.

◆ CPrefetchTokenOld_Impl

friend class CPrefetchTokenOld_Impl
friend

Definition at line 677 of file scope_impl.hpp.

◆ CScope

friend class CScope
friend

Definition at line 660 of file scope_impl.hpp.

◆ CScopeTransaction_Impl

friend class CScopeTransaction_Impl
friend

Definition at line 680 of file scope_impl.hpp.

Referenced by CreateTransaction().

◆ CSeq_annot_CI

friend class CSeq_annot_CI
friend

Definition at line 675 of file scope_impl.hpp.

◆ CSeq_annot_EditHandle

friend class CSeq_annot_EditHandle
friend

Definition at line 673 of file scope_impl.hpp.

Referenced by GetEditHandle(), and x_AttachAnnot().

◆ CSeq_entry_EditHandle

friend class CSeq_entry_EditHandle
friend

Definition at line 672 of file scope_impl.hpp.

Referenced by GetEditHandle(), and x_AttachEntry().

◆ CSeq_entry_Handle

friend class CSeq_entry_Handle
friend

◆ CSeqMap_CI

friend class CSeqMap_CI
friend

Definition at line 676 of file scope_impl.hpp.

◆ CSeqVector

friend class CSeqVector
friend

Definition at line 663 of file scope_impl.hpp.

◆ CTSE_CI

friend class CTSE_CI
friend

Definition at line 674 of file scope_impl.hpp.

◆ CTSE_ScopeInfo

friend class CTSE_ScopeInfo
friend

Definition at line 679 of file scope_impl.hpp.

Member Data Documentation

◆ m_AnnotChangeCounter

atomic<int> CScope_Impl::m_AnnotChangeCounter
private

Definition at line 657 of file scope_impl.hpp.

Referenced by x_ClearAnnotCache(), x_ClearCacheOnNewDS(), and x_GetTSESetWithAnnots().

◆ m_BioseqChangeCounter

atomic<int> CScope_Impl::m_BioseqChangeCounter
private

◆ m_ConfLock

TConfLock CScope_Impl::m_ConfLock
mutableprivate

◆ m_DSMap

TDSMap CScope_Impl::m_DSMap
private

◆ m_HeapScope

CScope* CScope_Impl::m_HeapScope
private

Definition at line 635 of file scope_impl.hpp.

Referenced by GetScope(), and CScope::~CScope().

◆ m_KeepExternalAnnotsForEdit

bool CScope_Impl::m_KeepExternalAnnotsForEdit
private

Definition at line 658 of file scope_impl.hpp.

Referenced by GetKeepExternalAnnotsForEdit(), and SetKeepExternalAnnotsForEdit().

◆ m_MutexPool

CInitMutexPool CScope_Impl::m_MutexPool
private

◆ m_ObjMgr

CRef<CObjectManager> CScope_Impl::m_ObjMgr
private

◆ m_Seq_idMap

TSeq_idMap CScope_Impl::m_Seq_idMap
private

◆ m_Seq_idMapLock

TSeq_idMapLock CScope_Impl::m_Seq_idMapLock
mutableprivate

Definition at line 652 of file scope_impl.hpp.

Referenced by x_FindSeq_id_Info(), x_GetAnnotRef_Info(), and x_GetSeq_id_Info().

◆ m_setDataSrc

CPriorityTree CScope_Impl::m_setDataSrc
private

◆ m_Transaction

IScopeTransaction_Impl* CScope_Impl::m_Transaction
private

The documentation for this class was generated from the following files:
Modified on Thu May 23 12:31:44 2024 by modify_doxy.py rev. 669887