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

Search Toolkit Book for CDataSource

#include <objmgr/impl/data_source.hpp>

+ Inheritance diagram for CDataSource:
+ Collaboration diagram for CDataSource:

Public Types

enum  FLockFlags { fLockNoHistory = 1<<0 , fLockNoManual = 1<<1 , fLockNoThrow = 1<<2 }
 
enum  {
  fLoaded_bioseqs = 1<<0 , fLoaded_bioseq_annots = 1<<1 , fLoaded_orphan_annots = 1<<2 , fLoaded_annots = fLoaded_bioseq_annots | fLoaded_orphan_annots ,
  fLoaded_all = fLoaded_bioseqs | fLoaded_annots , fSplit_bioseqs = 1<<3 , fKnown_bioseqs = fLoaded_bioseqs | fSplit_bioseqs
}
 
enum  EAllowParse { eNoParse , eDoParse }
 
typedef int TPriority
 
typedef CTSE_Lock TTSE_Lock
 
typedef CTSE_LockSet TTSE_LockSet
 
typedef set< CSeq_id_HandleTSeq_idSet
 
typedef vector< pair< TTSE_Lock, CSeq_id_Handle > > TTSE_LockMatchSet
 
typedef CRef< CTSE_InfoTTSE_Ref
 
typedef CRef< CTSE_Split_InfoTSplitInfoRef
 
typedef CBlobIdKey TBlobId
 
typedef CDSAnnotLockReadGuard TAnnotLockReadGuard
 
typedef CDSAnnotLockWriteGuard TAnnotLockWriteGuard
 
typedef CRWLock TMainLock
 
typedef CMutex TSeqLock
 
typedef CMutex TAnnotLock
 
typedef CMutex TCacheLock
 
typedef vector< CConstRef< CBioseq_Info > > TBioseq_InfoSet
 
typedef int TBioseqLevelFlag
 
typedef vector< SSeqMatch_DSTSeqMatches
 
typedef vector< CSeq_id_HandleTIds
 
typedef CDataLoader::SAccVerFound SAccVerFound
 
typedef CDataLoader::SGiFound SGiFound
 
typedef CDataLoader::STypeFound STypeFound
 
typedef CDataLoader::SHashFound SHashFound
 
typedef vector< boolTLoaded
 
typedef vector< TIdsTBulkIds
 
typedef vector< TGiTGis
 
typedef vector< stringTLabels
 
typedef vector< TTaxIdTTaxIds
 
typedef vector< TSeqPosTSequenceLengths
 
typedef vector< CSeq_inst::TMolTSequenceTypes
 
typedef vector< intTSequenceStates
 
typedef vector< intTSequenceHashes
 
typedef vector< boolTHashKnown
 
typedef vector< vector< CSeq_id_Handle > > TSeqIdSets
 
typedef vector< CTSE_LockTCDD_Locks
 
typedef map< CSeq_id_Handle, SSeqMatch_DSTSeqMatchMap
 
typedef int TLockFlags
 
typedef pair< CConstRef< CSeq_entry_Info >, TTSE_LockTSeq_entry_Lock
 
typedef pair< CConstRef< CSeq_annot_Info >, TTSE_LockTSeq_annot_Lock
 
typedef pair< TSeq_annot_Lock, intTSeq_feat_Lock
 
typedef pair< CConstRef< CBioseq_set_Info >, TTSE_LockTBioseq_set_Lock
 
typedef pair< CConstRef< CBioseq_Info >, TTSE_LockTBioseq_Lock
 
typedef vector< TBlobIdTLoadedBlob_ids
 
typedef int TLoadedTypes
 
- 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

 CDataSource (void)
 'ctors More...
 
 CDataSource (CDataLoader &loader)
 
 CDataSource (const CObject &shared_object, const CSeq_entry &entry)
 
virtual ~CDataSource (void)
 
TTSE_Lock AddTSE (CSeq_entry &se, CTSE_Info::TBlobState=CBioseq_Handle::fState_none)
 Register new TSE (Top Level Seq-entry) More...
 
TTSE_Lock AddTSE (CSeq_entry &se, bool dead)
 
TTSE_Lock AddTSE (CRef< CTSE_Info > tse)
 
TTSE_Lock AddStaticTSE (CSeq_entry &se)
 
TTSE_Lock AddStaticTSE (CRef< CTSE_Info > tse)
 
CRef< CSeq_entry_InfoAttachEntry (CBioseq_set_Info &parent, CSeq_entry &entry, int index=-1)
 Add new sub-entry to "parent". More...
 
void RemoveEntry (CSeq_entry_Info &entry)
 
CRef< CSeq_annot_InfoAttachAnnot (CSeq_entry_Info &parent, CSeq_annot &annot)
 Add annotations to a Seq-entry. More...
 
CRef< CSeq_annot_InfoAttachAnnot (CBioseq_Base_Info &parent, CSeq_annot &annot)
 
void RemoveAnnot (CSeq_annot_Info &annot)
 
CRef< CSeq_annot_InfoReplaceAnnot (CSeq_annot_Info &old_annot, CSeq_annot &new_annot)
 
void DropAllTSEs (void)
 Get TSE info by seq-id handle. More...
 
bool DropStaticTSE (CTSE_Info &info)
 
bool DropTSE (CTSE_Info &info)
 
bool IsEmpty (void) const
 
const CTSE_LockSetGetStaticBlobs (void) const
 
CDataLoaderGetDataLoader (void) const
 
void RevokeDataLoader (void)
 
const CConstRef< CObject > & GetSharedObject (void) const
 
TTSE_Lock GetSharedTSE (void) const
 
bool CanBeEdited (void) const
 
void UpdateAnnotIndex (void)
 
void UpdateAnnotIndex (const CSeq_entry_Info &entry_info)
 
void UpdateAnnotIndex (const CSeq_annot_Info &annot_info)
 
void GetTSESetWithOrphanAnnots (const TSeq_idSet &ids, TTSE_LockMatchSet &tse_set, const SAnnotSelector *sel, CDataLoader::TProcessedNAs *processed_nas=0)
 
void GetTSESetWithBioseqAnnots (const CBioseq_Info &bioseq, const TTSE_Lock &tse, TTSE_LockMatchSet &tse_set, const SAnnotSelector *sel, CDataLoader::TProcessedNAs *processed_nas=0, bool external_only=false)
 
void GetTSESetWithExternalAnnots (const CBioseq_Info &bioseq, const TTSE_Lock &tse, TTSE_LockMatchSet &tse_set, const SAnnotSelector *sel, CDataLoader::TProcessedNAs *processed_nas=0)
 
void GetBioseqs (const CSeq_entry_Info &entry, TBioseq_InfoSet &bioseqs, CSeq_inst::EMol filter, TBioseqLevelFlag level)
 
SSeqMatch_DS BestResolve (const CSeq_id_Handle &idh)
 
TSeqMatches GetMatches (const CSeq_id_Handle &idh, const TTSE_LockSet &locks)
 
void GetIds (const CSeq_id_Handle &idh, TIds &ids)
 
SAccVerFound GetAccVer (const CSeq_id_Handle &idh)
 
SGiFound GetGi (const CSeq_id_Handle &idh)
 
string GetLabel (const CSeq_id_Handle &idh)
 
TTaxId GetTaxId (const CSeq_id_Handle &idh)
 
TSeqPos GetSequenceLength (const CSeq_id_Handle &idh)
 
STypeFound GetSequenceType (const CSeq_id_Handle &idh)
 
int GetSequenceState (const CSeq_id_Handle &idh)
 
SHashFound GetSequenceHash (const CSeq_id_Handle &idh)
 
void GetBulkIds (const TIds &ids, TLoaded &loaded, TBulkIds &ret)
 
void GetAccVers (const TIds &ids, TLoaded &loaded, TIds &ret)
 
void GetGis (const TIds &ids, TLoaded &loaded, TGis &ret)
 
void GetLabels (const TIds &ids, TLoaded &loaded, TLabels &ret)
 
void GetTaxIds (const TIds &ids, TLoaded &loaded, TTaxIds &ret)
 
void GetSequenceLengths (const TIds &ids, TLoaded &loaded, TSequenceLengths &ret)
 
void GetSequenceTypes (const TIds &ids, TLoaded &loaded, TSequenceTypes &ret)
 
void GetSequenceStates (const TIds &ids, TLoaded &loaded, TSequenceStates &ret)
 
void GetSequenceHashes (const TIds &ids, TLoaded &loaded, TSequenceHashes &ret, THashKnown &known)
 
void GetCDDAnnots (const TSeqIdSets &id_sets, TLoaded &loaded, TCDD_Locks &ret)
 
void GetBlobs (TSeqMatchMap &match_map)
 
bool IsLive (const CTSE_Info &tse)
 
string GetName (void) const
 
TPriority GetDefaultPriority (void) const
 
void SetDefaultPriority (TPriority priority)
 
TTSE_Lock x_LockTSE (const CTSE_Info &tse_info, const TTSE_LockSet &locks, TLockFlags=0)
 
CTSE_LoadLock GetTSE_LoadLock (const TBlobId &blob_id)
 
CTSE_LoadLock GetTSE_LoadLockIfLoaded (const TBlobId &blob_id)
 
CTSE_LoadLock GetLoadedTSE_Lock (const TBlobId &blob_id, const CDeadline &deadline)
 
CTSE_LoadLock GetLoadedTSE_Lock (const TBlobId &blob_id, const CTimeout &timeout)
 
bool IsLoaded (const CTSE_Info &tse) const
 
void SetLoaded (CTSE_LoadLock &lock)
 
TSeq_entry_Lock GetSeq_entry_Lock (const CBlobIdKey &blob_id)
 
TTSE_Lock FindTSE_Lock (const CSeq_entry &entry, const TTSE_LockSet &history) const
 
TSeq_entry_Lock FindSeq_entry_Lock (const CSeq_entry &entry, const TTSE_LockSet &history) const
 
TSeq_annot_Lock FindSeq_annot_Lock (const CSeq_annot &annot, const TTSE_LockSet &history) const
 
TBioseq_set_Lock FindBioseq_set_Lock (const CBioseq_set &seqset, const TTSE_LockSet &history) const
 
TBioseq_Lock FindBioseq_Lock (const CBioseq &bioseq, const TTSE_LockSet &history) const
 
TSeq_feat_Lock FindSeq_feat_Lock (const CSeq_id_Handle &loc_id, TSeqPos loc_pos, const CSeq_feat &feat) const
 
void GetLoadedBlob_ids (const CSeq_id_Handle &idh, TLoadedTypes types, TLoadedBlob_ids &blob_ids) const
 
virtual void Prefetch (CPrefetchTokenOld_Impl &token)
 
TMainLockGetMainLock () const
 
 CDataSource (I_DriverContext *ctx)
 
virtual void SetLoginTimeout (unsigned int i)
 Set login timeout. More...
 
virtual void SetLogStream (CNcbiOstream *out)
 
virtual CDB_MultiExGetErrorAsEx ()
 Returns all server messages as a CDB_MultiEx object. More...
 
virtual string GetErrorInfo ()
 Returns all server messages as a single string. More...
 
int GetLoginTimeout () const
 
virtual I_DriverContextGetDriverContext ()
 Returns the pointer to the general driver interface. More...
 
virtual const I_DriverContextGetDriverContext () const
 
void UsePool (bool use)
 
bool IsPoolUsed ()
 
virtual IConnectionCreateConnection (EOwnership ownership)
 
virtual void Action (const CDbapiEvent &e)
 
class CToMultiExHandlerGetHandler ()
 
- 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
 
- Public Member Functions inherited from CActiveObject
 CActiveObject ()
 
virtual ~CActiveObject ()
 
void AddListener (CActiveObject *obj)
 
void RemoveListener (CActiveObject *obj)
 
void Notify (const CDbapiEvent &e)
 
string GetIdent () const
 
- Public Member Functions inherited from IEventListener
virtual ~IEventListener ()
 
- Public Member Functions inherited from IDataSource
virtual void SetLogStream (ostream *out)=0
 Set the output stream for server messages. More...
 
void SetApplicationName (const string &app_name)
 
string GetApplicationName (void) const
 

Static Public Member Functions

static unsigned GetDefaultBlobCacheSizeLimit ()
 
- 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)
 

Protected Member Functions

virtual ~CDataSource ()
 
- Protected Member Functions inherited from CObject
virtual void DeleteThis (void)
 Virtual method "deleting" this object. More...
 
- Protected Member Functions inherited from CActiveObject
void SetIdent (const string &name)
 
TLListGetListenerList ()
 
- Protected Member Functions inherited from IEventListener
 IEventListener ()
 
- Protected Member Functions inherited from IDataSource
virtual ~IDataSource ()
 Protected Destructor. More...
 

Private Types

typedef map< TBlobId, TTSE_RefTBlob_Map
 
typedef list< TTSE_RefTBlob_Cache
 
typedef set< TTSE_RefTTSE_Set
 
typedef map< CSeq_id_Handle, TTSE_SetTSeq_id2TSE_Set
 
typedef set< TSplitInfoRefTSplitInfoSet
 
typedef map< CSeq_id_Handle, TSplitInfoSetTSeq_id2SplitInfoSet
 
typedef map< const CObject *, const CTSE_Info_Object * > TInfoMap
 
typedef set< TBlobIdTLoadedBlob_ids_Set
 

Private Member Functions

void x_SetLock (CTSE_Lock &lock, CConstRef< CTSE_Info > tse) const
 
void x_ReleaseLastLock (CTSE_Lock &lock)
 
void x_SetLoadLock (CTSE_LoadLock &loadlock, CTSE_Lock &lock)
 
void x_SetLoadLock (CTSE_LoadLock &loadlock, CTSE_Info &tse, CRef< CTSE_Info::CLoadMutex > load_mutex)
 
void x_ReleaseLastLoadLock (CTSE_LoadLock &lock)
 
void x_ReleaseLastTSELock (CRef< CTSE_Info > info)
 
void x_ForgetTSE (CRef< CTSE_Info > info)
 
void x_DropTSE (CRef< CTSE_Info > info)
 
void x_Map (const CObject *obj, const CTSE_Info_Object *info)
 
void x_Unmap (const CObject *obj, const CTSE_Info_Object *info)
 
CConstRef< CTSE_Infox_FindTSE_Info (const CSeq_entry &tse) const
 
CConstRef< CSeq_entry_Infox_FindSeq_entry_Info (const CSeq_entry &entry) const
 
CConstRef< CBioseq_Infox_FindBioseq_Info (const CBioseq &seq) const
 
CConstRef< CSeq_annot_Infox_FindSeq_annot_Info (const CSeq_annot &annot) const
 
CConstRef< CBioseq_set_Infox_FindBioseq_set_Info (const CBioseq_set &seqset) const
 
TTSE_Lock x_FindBestTSE (const CSeq_id_Handle &handle, const TTSE_LockSet &locks)
 
SSeqMatch_DS x_GetSeqMatch (const CSeq_id_Handle &idh, const TTSE_LockSet &locks)
 
SSeqMatch_DS x_GetSeqMatch (const CSeq_id_Handle &idh)
 
void x_SetDirtyAnnotIndex (CTSE_Info &tse)
 
void x_ResetDirtyAnnotIndex (CTSE_Info &tse)
 
bool x_IndexTSE (TSeq_id2TSE_Set &tse_map, const CSeq_id_Handle &id, CTSE_Info *tse_info)
 
void x_UnindexTSE (TSeq_id2TSE_Set &tse_map, const CSeq_id_Handle &id, CTSE_Info *tse_info)
 
void x_IndexSeqTSELocked (const CSeq_id_Handle &id, CTSE_Info *tse_info)
 
void x_IndexSeqTSE (const CSeq_id_Handle &idh, CTSE_Info *tse_info)
 
void x_IndexSeqTSE (const vector< CSeq_id_Handle > &ids, CTSE_Info *tse_info)
 
void x_UnindexSeqTSE (const CSeq_id_Handle &ids, CTSE_Info *tse_info)
 
void x_IndexSplitInfo (TSeq_id2SplitInfoSet &split_map, const CSeq_id_Handle &id, CTSE_Split_Info *split_info)
 
void x_UnindexSplitInfo (TSeq_id2SplitInfoSet &split_map, const CSeq_id_Handle &id, CTSE_Split_Info *split_info)
 
void x_IndexSplitInfo (const CSeq_id_Handle &id, CTSE_Split_Info *split_info)
 
void x_UnindexSplitInfo (const CSeq_id_Handle &id, CTSE_Split_Info *split_info)
 
void x_IndexSplitInfo (const vector< CSeq_id_Handle > &ids, CTSE_Split_Info *split_info)
 
void x_UnindexSplitInfo (const vector< CSeq_id_Handle > &ids, CTSE_Split_Info *split_info)
 
void x_IndexAnnotTSE (const CSeq_id_Handle &idh, CTSE_Info *tse_info, bool orphan)
 
void x_UnindexAnnotTSE (const CSeq_id_Handle &idh, CTSE_Info *tse_info, bool orphan)
 
void x_IndexAnnotTSEs (CTSE_Info *tse_info)
 
void x_UnindexAnnotTSEs (CTSE_Info *tse_info)
 
void x_CleanupUnusedEntries (void)
 
void x_CollectBioseqs (const CSeq_entry_Info &info, TBioseq_InfoSet &bioseqs, CSeq_inst::EMol filter, TBioseqLevelFlag level)
 
TTSE_LockSet x_GetRecords (const CSeq_id_Handle &idh, CDataLoader::EChoice choice)
 
void x_AddTSEAnnots (TTSE_LockMatchSet &ret, const CSeq_id_Handle &id, const CTSE_Lock &tse_lock)
 
void x_AddTSEBioseqAnnots (TTSE_LockMatchSet &ret, const CBioseq_Info &bioseq, const CTSE_Lock &tse_lock)
 
void x_AddTSEOrphanAnnots (TTSE_LockMatchSet &ret, const TSeq_idSet &ids, const CTSE_Lock &tse_lock)
 
void x_GetLoadedBlob_ids (const CSeq_id_Handle &idh, TLoadedTypes types, TLoadedBlob_ids_Set &ids) const
 
bool x_IsTrackingSplitSeq () const
 
 CDataSource (const CDataSource &)
 
CDataSourceoperator= (const CDataSource &)
 

Static Private Member Functions

static void x_CollectBlob_ids (const CSeq_id_Handle &idh, const TSeq_id2TSE_Set &index, TLoadedBlob_ids_Set &blob_ids)
 
static void x_CollectBlob_ids (const CSeq_id_Handle &idh, const TSeq_id2SplitInfoSet &index, TLoadedBlob_ids_Set &blob_ids)
 

Private Attributes

TMainLock m_DSMainLock
 
TSeqLock m_DSSeqLock
 
TAnnotLock m_DSAnnotLock
 
TCacheLock m_DSCacheLock
 
CRef< CDataLoaderm_Loader
 
CConstRef< CObjectm_SharedObject
 
TTSE_LockSet m_StaticBlobs
 
TInfoMap m_InfoMap
 
TSeq_id2TSE_Set m_TSE_seq
 
TSeq_id2SplitInfoSet m_TSE_split_seq
 
TSeq_id2TSE_Set m_TSE_seq_annot
 
TSeq_id2TSE_Set m_TSE_orphan_annot
 
TTSE_Set m_DirtyAnnot_TSEs
 
TPriority m_DefaultPriority
 
TBlob_Map m_Blob_Map
 
TBlob_Cache m_Blob_Cache
 
unsigned m_Blob_Cache_Size
 
unsigned m_Blob_Cache_Size_Limit
 
CRef< CPrefetchThreadOldm_PrefetchThread
 
CFastMutex m_PrefetchLock
 
unsigned m_StaticBlobCounter
 
bool m_TrackSplitSeq
 
int m_loginTimeout
 
I_DriverContextm_context
 
bool m_poolUsed
 
class CToMultiExHandlerm_multiExH
 

Friends

class CAnnotTypes_CI
 
class CBioseq_Handle
 
class CGBDataLoader
 
class CTSE_Info
 
class CTSE_Split_Info
 
class CTSE_Lock
 
class CTSE_LoadLock
 
class CSeq_entry_Info
 
class CSeq_annot_Info
 
class CBioseq_set_Info
 
class CBioseq_Info
 
class CPrefetchTokenOld_Impl
 
class CScope_Impl
 
class CDSAnnotLockReadGuard
 
class CDSAnnotLockWriteGuard
 

Additional Inherited Members

- 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 Types inherited from CActiveObject
typedef list< CActiveObject * > TLList
 

Detailed Description

Definition at line 121 of file data_source.hpp.

Member Typedef Documentation

◆ SAccVerFound

Definition at line 239 of file data_source.hpp.

◆ SGiFound

Definition at line 242 of file data_source.hpp.

◆ SHashFound

Definition at line 255 of file data_source.hpp.

◆ STypeFound

Definition at line 251 of file data_source.hpp.

◆ TAnnotLock

Definition at line 144 of file data_source.hpp.

◆ TAnnotLockReadGuard

Definition at line 140 of file data_source.hpp.

◆ TAnnotLockWriteGuard

Definition at line 141 of file data_source.hpp.

◆ TBioseq_InfoSet

Definition at line 224 of file data_source.hpp.

◆ TBioseq_Lock

Definition at line 323 of file data_source.hpp.

◆ TBioseq_set_Lock

Definition at line 322 of file data_source.hpp.

◆ TBioseqLevelFlag

Definition at line 225 of file data_source.hpp.

◆ TBlob_Cache

typedef list<TTSE_Ref> CDataSource::TBlob_Cache
private

Definition at line 366 of file data_source.hpp.

◆ TBlob_Map

Definition at line 364 of file data_source.hpp.

◆ TBlobId

Definition at line 138 of file data_source.hpp.

◆ TBulkIds

typedef vector<TIds> CDataSource::TBulkIds

Definition at line 260 of file data_source.hpp.

◆ TCacheLock

Definition at line 145 of file data_source.hpp.

◆ TCDD_Locks

Definition at line 285 of file data_source.hpp.

◆ TGis

typedef vector<TGi> CDataSource::TGis

Definition at line 261 of file data_source.hpp.

◆ THashKnown

typedef vector<bool> CDataSource::THashKnown

Definition at line 268 of file data_source.hpp.

◆ TIds

Definition at line 236 of file data_source.hpp.

◆ TInfoMap

Definition at line 381 of file data_source.hpp.

◆ TLabels

typedef vector<string> CDataSource::TLabels

Definition at line 262 of file data_source.hpp.

◆ TLoaded

typedef vector<bool> CDataSource::TLoaded

Definition at line 259 of file data_source.hpp.

◆ TLoadedBlob_ids

Definition at line 341 of file data_source.hpp.

◆ TLoadedBlob_ids_Set

Definition at line 501 of file data_source.hpp.

◆ TLoadedTypes

Definition at line 351 of file data_source.hpp.

◆ TLockFlags

Definition at line 306 of file data_source.hpp.

◆ TMainLock

Definition at line 142 of file data_source.hpp.

◆ TPriority

Definition at line 131 of file data_source.hpp.

◆ TSeq_annot_Lock

Definition at line 320 of file data_source.hpp.

◆ TSeq_entry_Lock

Definition at line 319 of file data_source.hpp.

◆ TSeq_feat_Lock

Definition at line 321 of file data_source.hpp.

◆ TSeq_id2SplitInfoSet

Definition at line 377 of file data_source.hpp.

◆ TSeq_id2TSE_Set

Definition at line 375 of file data_source.hpp.

◆ TSeq_idSet

Definition at line 134 of file data_source.hpp.

◆ TSeqIdSets

typedef vector<vector<CSeq_id_Handle> > CDataSource::TSeqIdSets

Definition at line 284 of file data_source.hpp.

◆ TSeqLock

Definition at line 143 of file data_source.hpp.

◆ TSeqMatches

Definition at line 232 of file data_source.hpp.

◆ TSeqMatchMap

Definition at line 288 of file data_source.hpp.

◆ TSequenceHashes

Definition at line 267 of file data_source.hpp.

◆ TSequenceLengths

Definition at line 264 of file data_source.hpp.

◆ TSequenceStates

Definition at line 266 of file data_source.hpp.

◆ TSequenceTypes

Definition at line 265 of file data_source.hpp.

◆ TSplitInfoRef

Definition at line 137 of file data_source.hpp.

◆ TSplitInfoSet

Definition at line 376 of file data_source.hpp.

◆ TTaxIds

typedef vector<TTaxId> CDataSource::TTaxIds

Definition at line 263 of file data_source.hpp.

◆ TTSE_Lock

Definition at line 132 of file data_source.hpp.

◆ TTSE_LockMatchSet

Definition at line 135 of file data_source.hpp.

◆ TTSE_LockSet

Definition at line 133 of file data_source.hpp.

◆ TTSE_Ref

Definition at line 136 of file data_source.hpp.

◆ TTSE_Set

Definition at line 374 of file data_source.hpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
fLoaded_bioseqs 
fLoaded_bioseq_annots 
fLoaded_orphan_annots 
fLoaded_annots 
fLoaded_all 
fSplit_bioseqs 
fKnown_bioseqs 

Definition at line 342 of file data_source.hpp.

◆ EAllowParse

Enumerator
eNoParse 
eDoParse 

Definition at line 53 of file ds_impl.hpp.

◆ FLockFlags

Enumerator
fLockNoHistory 
fLockNoManual 
fLockNoThrow 

Definition at line 301 of file data_source.hpp.

Constructor & Destructor Documentation

◆ CDataSource() [1/5]

CDataSource::CDataSource ( void  )

'ctors

Definition at line 115 of file data_source.cpp.

◆ CDataSource() [2/5]

CDataSource::CDataSource ( CDataLoader loader)

Definition at line 125 of file data_source.cpp.

References m_Loader, and CDataLoader::SetTargetDataSource().

◆ CDataSource() [3/5]

CDataSource::CDataSource ( const CObject shared_object,
const CSeq_entry entry 
)

Definition at line 138 of file data_source.cpp.

References AddTSE(), m_StaticBlobs, and CTSE_LockSet::PutLock().

◆ ~CDataSource() [1/2]

CDataSource::~CDataSource ( void  )
virtual

◆ CDataSource() [4/5]

CDataSource::CDataSource ( const CDataSource )
private

◆ CDataSource() [5/5]

CDataSource::CDataSource ( I_DriverContext ctx)

Definition at line 46 of file ds_impl.cpp.

References CActiveObject::SetIdent().

◆ ~CDataSource() [2/2]

virtual CDataSource::~CDataSource ( )
protectedvirtual

Member Function Documentation

◆ Action()

void CDataSource::Action ( const CDbapiEvent e)
virtual

◆ AddStaticTSE() [1/2]

CDataSource::TTSE_Lock CDataSource::AddStaticTSE ( CRef< CTSE_Info tse)

◆ AddStaticTSE() [2/2]

CDataSource::TTSE_Lock CDataSource::AddStaticTSE ( CSeq_entry se)

◆ AddTSE() [1/3]

CDataSource::TTSE_Lock CDataSource::AddTSE ( CRef< CTSE_Info tse)

◆ AddTSE() [2/3]

CDataSource::TTSE_Lock CDataSource::AddTSE ( CSeq_entry se,
bool  dead 
)

◆ AddTSE() [3/3]

Register new TSE (Top Level Seq-entry)

Definition at line 224 of file data_source.cpp.

References CTSE_Info, and info.

Referenced by AddStaticTSE(), AddTSE(), and CDataSource().

◆ AttachAnnot() [1/2]

CRef< CSeq_annot_Info > CDataSource::AttachAnnot ( CBioseq_Base_Info parent,
CSeq_annot annot 
)

Definition at line 871 of file data_source.cpp.

References CBioseq_Base_Info::AddAnnot(), m_DSMainLock, m_Loader, and NCBI_THROW.

◆ AttachAnnot() [2/2]

CRef< CSeq_annot_Info > CDataSource::AttachAnnot ( CSeq_entry_Info parent,
CSeq_annot annot 
)

Add annotations to a Seq-entry.

Definition at line 858 of file data_source.cpp.

References CSeq_entry_Info::AddAnnot(), m_DSMainLock, m_Loader, and NCBI_THROW.

◆ AttachEntry()

CRef< CSeq_entry_Info > CDataSource::AttachEntry ( CBioseq_set_Info parent,
CSeq_entry entry,
int  index = -1 
)

Add new sub-entry to "parent".

Definition at line 827 of file data_source.cpp.

References CBioseq_set_Info::AddEntry(), m_DSMainLock, m_Loader, and NCBI_THROW.

◆ BestResolve()

SSeqMatch_DS CDataSource::BestResolve ( const CSeq_id_Handle idh)

◆ CanBeEdited()

bool CDataSource::CanBeEdited ( void  ) const
inline

◆ CreateConnection()

IConnection * CDataSource::CreateConnection ( EOwnership  ownership)
virtual

Implements IDataSource.

Definition at line 178 of file ds_impl.cpp.

References CActiveObject::AddListener(), and conn.

◆ DropAllTSEs()

void CDataSource::DropAllTSEs ( void  )

◆ DropStaticTSE()

bool CDataSource::DropStaticTSE ( CTSE_Info info)

◆ DropTSE()

bool CDataSource::DropTSE ( CTSE_Info info)

Definition at line 332 of file data_source.cpp.

References _ASSERT, _TRACE, info, m_DSMainLock, and x_DropTSE().

Referenced by DropStaticTSE(), and x_ReleaseLastTSELock().

◆ FindBioseq_Lock()

CDataSource::TBioseq_Lock CDataSource::FindBioseq_Lock ( const CBioseq bioseq,
const TTSE_LockSet history 
) const

◆ FindBioseq_set_Lock()

CDataSource::TBioseq_set_Lock CDataSource::FindBioseq_set_Lock ( const CBioseq_set seqset,
const TTSE_LockSet history 
) const

◆ FindSeq_annot_Lock()

CDataSource::TSeq_annot_Lock CDataSource::FindSeq_annot_Lock ( const CSeq_annot annot,
const TTSE_LockSet history 
) const

◆ FindSeq_entry_Lock()

CDataSource::TSeq_entry_Lock CDataSource::FindSeq_entry_Lock ( const CSeq_entry entry,
const TTSE_LockSet history 
) const

◆ FindSeq_feat_Lock()

CDataSource::TSeq_feat_Lock CDataSource::FindSeq_feat_Lock ( const CSeq_id_Handle loc_id,
TSeqPos  loc_pos,
const CSeq_feat feat 
) const

◆ FindTSE_Lock()

CDataSource::TTSE_Lock CDataSource::FindTSE_Lock ( const CSeq_entry entry,
const TTSE_LockSet history 
) const

Definition at line 422 of file data_source.cpp.

References info, m_DSMainLock, x_FindTSE_Info(), and x_SetLock().

Referenced by CDataSource_ScopeInfo::FindTSE_Lock().

◆ GetAccVer()

CDataSource::SAccVerFound CDataSource::GetAccVer ( const CSeq_id_Handle idh)

◆ GetAccVers()

void CDataSource::GetAccVers ( const TIds ids,
TLoaded loaded,
TIds ret 
)

◆ GetBioseqs()

void CDataSource::GetBioseqs ( const CSeq_entry_Info entry,
TBioseq_InfoSet bioseqs,
CSeq_inst::EMol  filter,
TBioseqLevelFlag  level 
)

Definition at line 2074 of file data_source.cpp.

References x_CollectBioseqs().

◆ GetBlobs()

void CDataSource::GetBlobs ( TSeqMatchMap match_map)

◆ GetBulkIds()

void CDataSource::GetBulkIds ( const TIds ids,
TLoaded loaded,
TBulkIds ret 
)

◆ GetCDDAnnots()

void CDataSource::GetCDDAnnots ( const TSeqIdSets id_sets,
TLoaded loaded,
TCDD_Locks ret 
)

◆ GetDataLoader()

CDataLoader * CDataSource::GetDataLoader ( void  ) const
inline

◆ GetDefaultBlobCacheSizeLimit()

unsigned CDataSource::GetDefaultBlobCacheSizeLimit ( void  )
static

Definition at line 97 of file data_source.cpp.

References CSafeStatic< T, Callbacks >::Get(), and NCBI_PARAM_TYPE.

◆ GetDefaultPriority()

CDataSource::TPriority CDataSource::GetDefaultPriority ( void  ) const
inline

Definition at line 629 of file data_source.hpp.

References m_DefaultPriority.

Referenced by CScope_Impl::AddDataLoader(), and CScope_Impl::AddDS().

◆ GetDriverContext() [1/2]

I_DriverContext * CDataSource::GetDriverContext ( )
virtual

Returns the pointer to the general driver interface.

Implements IDataSource.

Definition at line 158 of file ds_impl.cpp.

References CHECK_NCBI_DBAPI, and m_context.

Referenced by CConnection::CloneCDB_Conn(), CConnection::Connect(), and GetDriverContext().

◆ GetDriverContext() [2/2]

const I_DriverContext * CDataSource::GetDriverContext ( void  ) const
virtual

Implements IDataSource.

Definition at line 167 of file ds_impl.cpp.

References GetDriverContext().

◆ GetErrorAsEx()

CDB_MultiEx * CDataSource::GetErrorAsEx ( )
virtual

Returns all server messages as a CDB_MultiEx object.

Implements IDataSource.

Definition at line 128 of file ds_impl.cpp.

References GetHandler(), and CToMultiExHandler::GetMultiEx().

◆ GetErrorInfo()

string CDataSource::GetErrorInfo ( )
virtual

Returns all server messages as a single string.

Implements IDataSource.

Definition at line 133 of file ds_impl.cpp.

References GetHandler(), CDB_UserHandler_Stream::HandleIt(), kEmptyStr, m_multiExH, out(), and CToMultiExHandler::ReplaceMultiEx().

◆ GetGi()

CDataSource::SGiFound CDataSource::GetGi ( const CSeq_id_Handle idh)

◆ GetGis()

void CDataSource::GetGis ( const TIds ids,
TLoaded loaded,
TGis ret 
)

◆ GetHandler()

CToMultiExHandler * CDataSource::GetHandler ( void  )

Definition at line 123 of file ds_impl.cpp.

References m_multiExH.

Referenced by GetErrorAsEx(), and GetErrorInfo().

◆ GetIds()

void CDataSource::GetIds ( const CSeq_id_Handle idh,
TIds ids 
)

◆ GetLabel()

string CDataSource::GetLabel ( const CSeq_id_Handle idh)

◆ GetLabels()

void CDataSource::GetLabels ( const TIds ids,
TLoaded loaded,
TLabels ret 
)

◆ GetLoadedBlob_ids()

void CDataSource::GetLoadedBlob_ids ( const CSeq_id_Handle idh,
TLoadedTypes  types,
TLoadedBlob_ids blob_ids 
) const

◆ GetLoadedTSE_Lock() [1/2]

CTSE_LoadLock CDataSource::GetLoadedTSE_Lock ( const TBlobId blob_id,
const CDeadline deadline 
)

◆ GetLoadedTSE_Lock() [2/2]

CTSE_LoadLock CDataSource::GetLoadedTSE_Lock ( const TBlobId blob_id,
const CTimeout timeout 
)

Definition at line 2267 of file data_source.cpp.

References GetLoadedTSE_Lock().

◆ GetLoginTimeout()

int CDataSource::GetLoginTimeout ( void  ) const
inline

Definition at line 67 of file ds_impl.hpp.

References m_loginTimeout.

◆ GetMainLock()

TMainLock& CDataSource::GetMainLock ( ) const
inline

◆ GetMatches()

CDataSource::TSeqMatches CDataSource::GetMatches ( const CSeq_id_Handle idh,
const TTSE_LockSet locks 
)

◆ GetName()

string CDataSource::GetName ( void  ) const

Definition at line 2065 of file data_source.cpp.

References CDataLoader::GetName(), kEmptyStr, and m_Loader.

◆ GetSeq_entry_Lock()

CDataSource::TSeq_entry_Lock CDataSource::GetSeq_entry_Lock ( const CBlobIdKey blob_id)

◆ GetSequenceHash()

CDataSource::SHashFound CDataSource::GetSequenceHash ( const CSeq_id_Handle idh)

◆ GetSequenceHashes()

void CDataSource::GetSequenceHashes ( const TIds ids,
TLoaded loaded,
TSequenceHashes ret,
THashKnown known 
)

◆ GetSequenceLength()

TSeqPos CDataSource::GetSequenceLength ( const CSeq_id_Handle idh)

◆ GetSequenceLengths()

void CDataSource::GetSequenceLengths ( const TIds ids,
TLoaded loaded,
TSequenceLengths ret 
)

◆ GetSequenceState()

int CDataSource::GetSequenceState ( const CSeq_id_Handle idh)

◆ GetSequenceStates()

void CDataSource::GetSequenceStates ( const TIds ids,
TLoaded loaded,
TSequenceStates ret 
)

◆ GetSequenceType()

CDataSource::STypeFound CDataSource::GetSequenceType ( const CSeq_id_Handle idh)

◆ GetSequenceTypes()

void CDataSource::GetSequenceTypes ( const TIds ids,
TLoaded loaded,
TSequenceTypes ret 
)

◆ GetSharedObject()

const CConstRef< CObject > & CDataSource::GetSharedObject ( void  ) const
inline

◆ GetSharedTSE()

CDataSource::TTSE_Lock CDataSource::GetSharedTSE ( void  ) const

◆ GetStaticBlobs()

const CTSE_LockSet & CDataSource::GetStaticBlobs ( void  ) const
inline

Definition at line 615 of file data_source.hpp.

References m_StaticBlobs.

Referenced by CPriorityNode::CPriorityNode().

◆ GetTaxId()

TTaxId CDataSource::GetTaxId ( const CSeq_id_Handle idh)

◆ GetTaxIds()

void CDataSource::GetTaxIds ( const TIds ids,
TLoaded loaded,
TTaxIds ret 
)

◆ GetTSE_LoadLock()

CTSE_LoadLock CDataSource::GetTSE_LoadLock ( const TBlobId blob_id)

◆ GetTSE_LoadLockIfLoaded()

CTSE_LoadLock CDataSource::GetTSE_LoadLockIfLoaded ( const TBlobId blob_id)

◆ GetTSESetWithBioseqAnnots()

void CDataSource::GetTSESetWithBioseqAnnots ( const CBioseq_Info bioseq,
const TTSE_Lock tse,
TTSE_LockMatchSet tse_set,
const SAnnotSelector sel,
CDataLoader::TProcessedNAs processed_nas = 0,
bool  external_only = false 
)

◆ GetTSESetWithExternalAnnots()

void CDataSource::GetTSESetWithExternalAnnots ( const CBioseq_Info bioseq,
const TTSE_Lock tse,
TTSE_LockMatchSet tse_set,
const SAnnotSelector sel,
CDataLoader::TProcessedNAs processed_nas = 0 
)
inline

◆ GetTSESetWithOrphanAnnots()

void CDataSource::GetTSESetWithOrphanAnnots ( const TSeq_idSet ids,
TTSE_LockMatchSet tse_set,
const SAnnotSelector sel,
CDataLoader::TProcessedNAs processed_nas = 0 
)

◆ IsEmpty()

bool CDataSource::IsEmpty ( void  ) const
inline

Definition at line 608 of file data_source.hpp.

References map_checker< Container >::empty(), m_Blob_Map, and m_Loader.

◆ IsLive()

bool CDataSource::IsLive ( const CTSE_Info tse)
inline

Definition at line 622 of file data_source.hpp.

References CTSE_Info::IsDead().

◆ IsLoaded()

bool CDataSource::IsLoaded ( const CTSE_Info tse) const

◆ IsPoolUsed()

bool CDataSource::IsPoolUsed ( )
inline

Definition at line 79 of file ds_impl.hpp.

References m_poolUsed.

Referenced by CConnection::Connect(), and CConnection::ConnectValidated().

◆ operator=()

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

◆ Prefetch()

void CDataSource::Prefetch ( CPrefetchTokenOld_Impl token)
virtual

◆ RemoveAnnot()

void CDataSource::RemoveAnnot ( CSeq_annot_Info annot)

◆ RemoveEntry()

void CDataSource::RemoveEntry ( CSeq_entry_Info entry)

◆ ReplaceAnnot()

CRef< CSeq_annot_Info > CDataSource::ReplaceAnnot ( CSeq_annot_Info old_annot,
CSeq_annot new_annot 
)

◆ RevokeDataLoader()

void CDataSource::RevokeDataLoader ( void  )

Definition at line 163 of file data_source.cpp.

References m_DSMainLock, and m_Loader.

◆ SetDefaultPriority()

void CDataSource::SetDefaultPriority ( TPriority  priority)
inline

Definition at line 636 of file data_source.hpp.

References m_DefaultPriority.

◆ SetLoaded()

void CDataSource::SetLoaded ( CTSE_LoadLock lock)

◆ SetLoginTimeout()

void CDataSource::SetLoginTimeout ( unsigned int  i)
virtual

Set login timeout.

Implements IDataSource.

Definition at line 81 of file ds_impl.cpp.

References i, m_context, m_loginTimeout, and I_DriverContext::SetLoginTimeout().

◆ SetLogStream()

void CDataSource::SetLogStream ( CNcbiOstream out)
virtual

◆ UpdateAnnotIndex() [1/3]

void CDataSource::UpdateAnnotIndex ( const CSeq_annot_Info annot_info)

Definition at line 981 of file data_source.cpp.

References m_DSMainLock, and CSeq_annot_Info::UpdateAnnotIndex().

◆ UpdateAnnotIndex() [2/3]

void CDataSource::UpdateAnnotIndex ( const CSeq_entry_Info entry_info)

Definition at line 974 of file data_source.cpp.

References m_DSMainLock, and CSeq_entry_Info::UpdateAnnotIndex().

◆ UpdateAnnotIndex() [3/3]

void CDataSource::UpdateAnnotIndex ( void  )

◆ UsePool()

void CDataSource::UsePool ( bool  use)
inline

Definition at line 75 of file ds_impl.hpp.

References m_poolUsed.

◆ x_AddTSEAnnots()

void CDataSource::x_AddTSEAnnots ( TTSE_LockMatchSet ret,
const CSeq_id_Handle id,
const CTSE_Lock tse_lock 
)
private

◆ x_AddTSEBioseqAnnots()

void CDataSource::x_AddTSEBioseqAnnots ( TTSE_LockMatchSet ret,
const CBioseq_Info bioseq,
const CTSE_Lock tse_lock 
)
private

◆ x_AddTSEOrphanAnnots()

void CDataSource::x_AddTSEOrphanAnnots ( TTSE_LockMatchSet ret,
const TSeq_idSet ids,
const CTSE_Lock tse_lock 
)
private

◆ x_CleanupUnusedEntries()

void CDataSource::x_CleanupUnusedEntries ( void  )
private

Definition at line 1386 of file data_source.cpp.

◆ x_CollectBioseqs()

void CDataSource::x_CollectBioseqs ( const CSeq_entry_Info info,
TBioseq_InfoSet bioseqs,
CSeq_inst::EMol  filter,
TBioseqLevelFlag  level 
)
private

◆ x_CollectBlob_ids() [1/2]

void CDataSource::x_CollectBlob_ids ( const CSeq_id_Handle idh,
const TSeq_id2SplitInfoSet index,
TLoadedBlob_ids_Set blob_ids 
)
staticprivate

◆ x_CollectBlob_ids() [2/2]

void CDataSource::x_CollectBlob_ids ( const CSeq_id_Handle idh,
const TSeq_id2TSE_Set index,
TLoadedBlob_ids_Set blob_ids 
)
staticprivate

◆ x_DropTSE()

void CDataSource::x_DropTSE ( CRef< CTSE_Info info)
private

◆ x_FindBestTSE()

CDataSource::TTSE_Lock CDataSource::x_FindBestTSE ( const CSeq_id_Handle handle,
const TTSE_LockSet locks 
)
private

◆ x_FindBioseq_Info()

CConstRef< CBioseq_Info > CDataSource::x_FindBioseq_Info ( const CBioseq seq) const
private

◆ x_FindBioseq_set_Info()

CConstRef< CBioseq_set_Info > CDataSource::x_FindBioseq_set_Info ( const CBioseq_set seqset) const
private

◆ x_FindSeq_annot_Info()

CConstRef< CSeq_annot_Info > CDataSource::x_FindSeq_annot_Info ( const CSeq_annot annot) const
private

◆ x_FindSeq_entry_Info()

CConstRef< CSeq_entry_Info > CDataSource::x_FindSeq_entry_Info ( const CSeq_entry entry) const
private

◆ x_FindTSE_Info()

CConstRef< CTSE_Info > CDataSource::x_FindTSE_Info ( const CSeq_entry tse) const
private

◆ x_ForgetTSE()

void CDataSource::x_ForgetTSE ( CRef< CTSE_Info info)
private

Definition at line 354 of file data_source.cpp.

References CDataLoader::DropTSE(), CTSE_Info::eNotInCache, info, and m_Loader.

Referenced by DropAllTSEs().

◆ x_GetLoadedBlob_ids()

void CDataSource::x_GetLoadedBlob_ids ( const CSeq_id_Handle idh,
TLoadedTypes  types,
TLoadedBlob_ids_Set ids 
) const
private

◆ x_GetRecords()

CDataSource::TTSE_LockSet CDataSource::x_GetRecords ( const CSeq_id_Handle idh,
CDataLoader::EChoice  choice 
)
private

◆ x_GetSeqMatch() [1/2]

SSeqMatch_DS CDataSource::x_GetSeqMatch ( const CSeq_id_Handle idh)
private

◆ x_GetSeqMatch() [2/2]

SSeqMatch_DS CDataSource::x_GetSeqMatch ( const CSeq_id_Handle idh,
const TTSE_LockSet locks 
)
private

◆ x_IndexAnnotTSE()

void CDataSource::x_IndexAnnotTSE ( const CSeq_id_Handle idh,
CTSE_Info tse_info,
bool  orphan 
)
private

Definition at line 1345 of file data_source.cpp.

References m_DSAnnotLock, m_TSE_orphan_annot, m_TSE_seq_annot, and x_IndexTSE().

Referenced by CTSE_Info::x_IndexAnnotTSE().

◆ x_IndexAnnotTSEs()

void CDataSource::x_IndexAnnotTSEs ( CTSE_Info tse_info)
private

◆ x_IndexSeqTSE() [1/2]

void CDataSource::x_IndexSeqTSE ( const CSeq_id_Handle idh,
CTSE_Info tse_info 
)
private

◆ x_IndexSeqTSE() [2/2]

void CDataSource::x_IndexSeqTSE ( const vector< CSeq_id_Handle > &  ids,
CTSE_Info tse_info 
)
private

Definition at line 1327 of file data_source.cpp.

References m_DSSeqLock, and x_IndexSeqTSELocked().

◆ x_IndexSeqTSELocked()

void CDataSource::x_IndexSeqTSELocked ( const CSeq_id_Handle id,
CTSE_Info tse_info 
)
private

◆ x_IndexSplitInfo() [1/3]

void CDataSource::x_IndexSplitInfo ( const CSeq_id_Handle id,
CTSE_Split_Info split_info 
)
private

◆ x_IndexSplitInfo() [2/3]

void CDataSource::x_IndexSplitInfo ( const vector< CSeq_id_Handle > &  ids,
CTSE_Split_Info split_info 
)
private

◆ x_IndexSplitInfo() [3/3]

void CDataSource::x_IndexSplitInfo ( TSeq_id2SplitInfoSet split_map,
const CSeq_id_Handle id,
CTSE_Split_Info split_info 
)
private

◆ x_IndexTSE()

bool CDataSource::x_IndexTSE ( TSeq_id2TSE_Set tse_map,
const CSeq_id_Handle id,
CTSE_Info tse_info 
)
private

◆ x_IsTrackingSplitSeq()

bool CDataSource::x_IsTrackingSplitSeq ( ) const
inlineprivate

◆ x_LockTSE()

CDataSource::TTSE_Lock CDataSource::x_LockTSE ( const CTSE_Info tse_info,
const TTSE_LockSet locks,
TLockFlags  flags = 0 
)

◆ x_Map()

void CDataSource::x_Map ( const CObject obj,
const CTSE_Info_Object info 
)
private

◆ x_ReleaseLastLoadLock()

void CDataSource::x_ReleaseLastLoadLock ( CTSE_LoadLock lock)
private

◆ x_ReleaseLastLock()

void CDataSource::x_ReleaseLastLock ( CTSE_Lock lock)
private

◆ x_ReleaseLastTSELock()

void CDataSource::x_ReleaseLastTSELock ( CRef< CTSE_Info info)
private

◆ x_ResetDirtyAnnotIndex()

void CDataSource::x_ResetDirtyAnnotIndex ( CTSE_Info tse)
private

◆ x_SetDirtyAnnotIndex()

void CDataSource::x_SetDirtyAnnotIndex ( CTSE_Info tse)
private

◆ x_SetLoadLock() [1/2]

void CDataSource::x_SetLoadLock ( CTSE_LoadLock loadlock,
CTSE_Info tse,
CRef< CTSE_Info::CLoadMutex load_mutex 
)
private

◆ x_SetLoadLock() [2/2]

void CDataSource::x_SetLoadLock ( CTSE_LoadLock loadlock,
CTSE_Lock lock 
)
private

◆ x_SetLock()

void CDataSource::x_SetLock ( CTSE_Lock lock,
CConstRef< CTSE_Info tse 
) const
private

◆ x_UnindexAnnotTSE()

void CDataSource::x_UnindexAnnotTSE ( const CSeq_id_Handle idh,
CTSE_Info tse_info,
bool  orphan 
)
private

◆ x_UnindexAnnotTSEs()

void CDataSource::x_UnindexAnnotTSEs ( CTSE_Info tse_info)
private

◆ x_UnindexSeqTSE()

void CDataSource::x_UnindexSeqTSE ( const CSeq_id_Handle ids,
CTSE_Info tse_info 
)
private

◆ x_UnindexSplitInfo() [1/3]

void CDataSource::x_UnindexSplitInfo ( const CSeq_id_Handle id,
CTSE_Split_Info split_info 
)
private

◆ x_UnindexSplitInfo() [2/3]

void CDataSource::x_UnindexSplitInfo ( const vector< CSeq_id_Handle > &  ids,
CTSE_Split_Info split_info 
)
private

◆ x_UnindexSplitInfo() [3/3]

void CDataSource::x_UnindexSplitInfo ( TSeq_id2SplitInfoSet split_map,
const CSeq_id_Handle id,
CTSE_Split_Info split_info 
)
private

◆ x_UnindexTSE()

void CDataSource::x_UnindexTSE ( TSeq_id2TSE_Set tse_map,
const CSeq_id_Handle id,
CTSE_Info tse_info 
)
private

◆ x_Unmap()

void CDataSource::x_Unmap ( const CObject obj,
const CTSE_Info_Object info 
)
private

Friends And Related Function Documentation

◆ CAnnotTypes_CI

friend class CAnnotTypes_CI
friend

Definition at line 384 of file data_source.hpp.

◆ CBioseq_Handle

friend class CBioseq_Handle
friend

Definition at line 385 of file data_source.hpp.

◆ CBioseq_Info

friend class CBioseq_Info
friend

Definition at line 394 of file data_source.hpp.

◆ CBioseq_set_Info

friend class CBioseq_set_Info
friend

Definition at line 393 of file data_source.hpp.

◆ CDSAnnotLockReadGuard

friend class CDSAnnotLockReadGuard
friend

Definition at line 397 of file data_source.hpp.

◆ CDSAnnotLockWriteGuard

friend class CDSAnnotLockWriteGuard
friend

Definition at line 398 of file data_source.hpp.

◆ CGBDataLoader

friend class CGBDataLoader
friend

Definition at line 386 of file data_source.hpp.

◆ CPrefetchTokenOld_Impl

friend class CPrefetchTokenOld_Impl
friend

Definition at line 395 of file data_source.hpp.

◆ CScope_Impl

friend class CScope_Impl
friend

Definition at line 396 of file data_source.hpp.

◆ CSeq_annot_Info

friend class CSeq_annot_Info
friend

Definition at line 392 of file data_source.hpp.

◆ CSeq_entry_Info

friend class CSeq_entry_Info
friend

Definition at line 391 of file data_source.hpp.

◆ CTSE_Info

friend class CTSE_Info
friend

Definition at line 387 of file data_source.hpp.

Referenced by AddStaticTSE(), AddTSE(), and GetTSE_LoadLock().

◆ CTSE_LoadLock

friend class CTSE_LoadLock
friend

Definition at line 390 of file data_source.hpp.

Referenced by GetLoadedTSE_Lock().

◆ CTSE_Lock

friend class CTSE_Lock
friend

Definition at line 389 of file data_source.hpp.

◆ CTSE_Split_Info

friend class CTSE_Split_Info
friend

Definition at line 388 of file data_source.hpp.

Member Data Documentation

◆ m_Blob_Cache

TBlob_Cache CDataSource::m_Blob_Cache
mutableprivate

Definition at line 541 of file data_source.hpp.

Referenced by DropAllTSEs(), x_ReleaseLastTSELock(), and x_SetLock().

◆ m_Blob_Cache_Size

unsigned CDataSource::m_Blob_Cache_Size
mutableprivate

Definition at line 542 of file data_source.hpp.

Referenced by DropAllTSEs(), x_ReleaseLastTSELock(), and x_SetLock().

◆ m_Blob_Cache_Size_Limit

unsigned CDataSource::m_Blob_Cache_Size_Limit
private

Definition at line 543 of file data_source.hpp.

Referenced by x_ReleaseLastTSELock().

◆ m_Blob_Map

TBlob_Map CDataSource::m_Blob_Map
private

◆ m_context

I_DriverContext* CDataSource::m_context
private

Definition at line 92 of file ds_impl.hpp.

Referenced by GetDriverContext(), SetLoginTimeout(), SetLogStream(), and ~CDataSource().

◆ m_DefaultPriority

TPriority CDataSource::m_DefaultPriority
private

Definition at line 538 of file data_source.hpp.

Referenced by GetDefaultPriority(), and SetDefaultPriority().

◆ m_DirtyAnnot_TSEs

TTSE_Set CDataSource::m_DirtyAnnot_TSEs
private

◆ m_DSAnnotLock

TAnnotLock CDataSource::m_DSAnnotLock
mutableprivate

◆ m_DSCacheLock

TCacheLock CDataSource::m_DSCacheLock
mutableprivate

◆ m_DSMainLock

TMainLock CDataSource::m_DSMainLock
mutableprivate

◆ m_DSSeqLock

TSeqLock CDataSource::m_DSSeqLock
mutableprivate

◆ m_InfoMap

TInfoMap CDataSource::m_InfoMap
private

◆ m_Loader

CRef<CDataLoader> CDataSource::m_Loader
private

◆ m_loginTimeout

int CDataSource::m_loginTimeout
private

Definition at line 91 of file ds_impl.hpp.

Referenced by GetLoginTimeout(), and SetLoginTimeout().

◆ m_multiExH

class CToMultiExHandler* CDataSource::m_multiExH
private

Definition at line 94 of file ds_impl.hpp.

Referenced by GetErrorInfo(), GetHandler(), SetLogStream(), and ~CDataSource().

◆ m_poolUsed

bool CDataSource::m_poolUsed
private

Definition at line 93 of file ds_impl.hpp.

Referenced by IsPoolUsed(), and UsePool().

◆ m_PrefetchLock

CFastMutex CDataSource::m_PrefetchLock
private

Definition at line 547 of file data_source.hpp.

Referenced by Prefetch().

◆ m_PrefetchThread

CRef<CPrefetchThreadOld> CDataSource::m_PrefetchThread
private

Definition at line 546 of file data_source.hpp.

Referenced by Prefetch().

◆ m_SharedObject

CConstRef<CObject> CDataSource::m_SharedObject
private

Definition at line 526 of file data_source.hpp.

Referenced by AddTSE(), CanBeEdited(), and GetSharedObject().

◆ m_StaticBlobCounter

unsigned CDataSource::m_StaticBlobCounter
private

Definition at line 548 of file data_source.hpp.

Referenced by AddStaticTSE(), and DropAllTSEs().

◆ m_StaticBlobs

TTSE_LockSet CDataSource::m_StaticBlobs
private

◆ m_TrackSplitSeq

bool CDataSource::m_TrackSplitSeq
private

Definition at line 549 of file data_source.hpp.

Referenced by x_IsTrackingSplitSeq().

◆ m_TSE_orphan_annot

TSeq_id2TSE_Set CDataSource::m_TSE_orphan_annot
private

◆ m_TSE_seq

TSeq_id2TSE_Set CDataSource::m_TSE_seq
private

◆ m_TSE_seq_annot

TSeq_id2TSE_Set CDataSource::m_TSE_seq_annot
private

◆ m_TSE_split_seq

TSeq_id2SplitInfoSet CDataSource::m_TSE_split_seq
private

The documentation for this class was generated from the following files:
Modified on Sun Apr 21 03:39:27 2024 by modify_doxy.py rev. 669887