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

Search Toolkit Book for CBlastLMDBManager

Class for manageing LMDB env, each env should only be open once. More...

#include <objtools/blast/seqdb_reader/impl/seqdb_lmdb.hpp>

+ Collaboration diagram for CBlastLMDBManager:

Classes

class  CBlastEnv
 

Public Member Functions

lmdb::envGetReadEnvVol (const string &fname, MDB_dbi &db_volname, MDB_dbi &db_volinfo)
 
lmdb::envGetReadEnvAcc (const string &fname, MDB_dbi &db_acc, bool *opened=0)
 
lmdb::envGetReadEnvTax (const string &fname, MDB_dbi &db_tax, bool *opened=0)
 
lmdb::envGetWriteEnv (const string &fname, Uint8 map_size)
 
void CloseEnv (const string &fname)
 

Static Public Member Functions

static CBlastLMDBManagerGetInstance ()
 

Private Member Functions

CBlastEnvGetBlastEnv (const string &fname, ELMDBFileType file_type, bool *opened=0)
 
 CBlastLMDBManager ()
 
 ~CBlastLMDBManager ()
 

Private Attributes

list< CBlastEnv * > m_EnvList
 
CFastMutex m_Mutex
 

Friends

class CSafeStatic_Allocator< CBlastLMDBManager >
 

Detailed Description

Class for manageing LMDB env, each env should only be open once.

Definition at line 138 of file seqdb_lmdb.hpp.

Constructor & Destructor Documentation

◆ CBlastLMDBManager()

CBlastLMDBManager::CBlastLMDBManager ( )
inlineprivate

Definition at line 181 of file seqdb_lmdb.hpp.

◆ ~CBlastLMDBManager()

CBlastLMDBManager::~CBlastLMDBManager ( )
private

Definition at line 234 of file seqdb_lmdb.cpp.

References m_EnvList, and NON_CONST_ITERATE.

Member Function Documentation

◆ CloseEnv()

void CBlastLMDBManager::CloseEnv ( const string fname)

◆ GetBlastEnv()

CBlastLMDBManager::CBlastEnv * CBlastLMDBManager::GetBlastEnv ( const string fname,
ELMDBFileType  file_type,
bool opened = 0 
)
private

◆ GetInstance()

CBlastLMDBManager & CBlastLMDBManager::GetInstance ( void  )
static

◆ GetReadEnvAcc()

lmdb::env & CBlastLMDBManager::GetReadEnvAcc ( const string fname,
MDB_dbi db_acc,
bool opened = 0 
)

◆ GetReadEnvTax()

lmdb::env & CBlastLMDBManager::GetReadEnvTax ( const string fname,
MDB_dbi db_tax,
bool opened = 0 
)

◆ GetReadEnvVol()

lmdb::env & CBlastLMDBManager::GetReadEnvVol ( const string fname,
MDB_dbi db_volname,
MDB_dbi db_volinfo 
)

◆ GetWriteEnv()

lmdb::env & CBlastLMDBManager::GetWriteEnv ( const string fname,
Uint8  map_size 
)

Friends And Related Function Documentation

◆ CSafeStatic_Allocator< CBlastLMDBManager >

friend class CSafeStatic_Allocator< CBlastLMDBManager >
friend

Definition at line 182 of file seqdb_lmdb.hpp.

Member Data Documentation

◆ m_EnvList

list<CBlastEnv * > CBlastLMDBManager::m_EnvList
private

Definition at line 184 of file seqdb_lmdb.hpp.

Referenced by CloseEnv(), GetBlastEnv(), GetWriteEnv(), and ~CBlastLMDBManager().

◆ m_Mutex

CFastMutex CBlastLMDBManager::m_Mutex
private

Definition at line 185 of file seqdb_lmdb.hpp.

Referenced by CloseEnv(), GetBlastEnv(), and GetWriteEnv().


The documentation for this class was generated from the following files:
Modified on Mon Jun 17 05:07:07 2024 by modify_doxy.py rev. 669887