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

Search Toolkit Book for CPubseqGatewayCacheBlobProp

#include "psg_cache_blob_prop.hpp"
(Private to src/objtools/pubseq_gateway/cache.)

+ Inheritance diagram for CPubseqGatewayCacheBlobProp:
+ Collaboration diagram for CPubseqGatewayCacheBlobProp:

Public Types

using TBlobPropEnumerateFn = function< bool(int32_t, int64_t)>
 

Public Member Functions

 CPubseqGatewayCacheBlobProp (const string &file_name)
 
 ~CPubseqGatewayCacheBlobProp () override
 
void Open (const set< int > &sat_ids)
 
vector< CBlobRecordFetch (CBlobFetchRequest const &request)
 
vector< CBlobRecordFetchLast (CBlobFetchRequest const &request)
 
void EnumerateBlobProp (int32_t sat, TBlobPropEnumerateFn fn)
 
- Public Member Functions inherited from CPubseqGatewayCacheBase
 CPubseqGatewayCacheBase (const string &file_name)
 
virtual ~CPubseqGatewayCacheBase ()=default
 
void Open ()
 

Static Public Member Functions

static string PackKey (int32_t sat_key)
 
static string PackKey (int32_t sat_key, int64_t last_modified)
 
static bool UnpackKey (const char *key, size_t key_sz, int64_t &last_modified)
 
static bool UnpackKey (const char *key, size_t key_sz, int64_t &last_modified, int32_t &sat_key)
 

Private Member Functions

bool x_ExtractRecord (CBlobRecord &record, lmdb::val const &value) const
 
bool x_CanOpenSatDatabase (int32_t sat, CLMDBReadOnlyTxn &rtxn)
 

Private Attributes

vector< unique_ptr< lmdb::dbi, function< void(lmdb::dbi *)> > > m_Dbis
 

Additional Inherited Members

- Protected Member Functions inherited from CPubseqGatewayCacheBase
CLMDBReadOnlyTxn BeginReadTxn ()
 
- Protected Attributes inherited from CPubseqGatewayCacheBase
string m_FileName
 
unique_ptr< lmdb::envm_Env
 

Detailed Description

Definition at line 50 of file psg_cache_blob_prop.hpp.

Member Typedef Documentation

◆ TBlobPropEnumerateFn

Definition at line 54 of file psg_cache_blob_prop.hpp.

Constructor & Destructor Documentation

◆ CPubseqGatewayCacheBlobProp()

CPubseqGatewayCacheBlobProp::CPubseqGatewayCacheBlobProp ( const string file_name)
explicit

Definition at line 60 of file psg_cache_blob_prop.cpp.

◆ ~CPubseqGatewayCacheBlobProp()

CPubseqGatewayCacheBlobProp::~CPubseqGatewayCacheBlobProp ( )
overridedefault

Member Function Documentation

◆ EnumerateBlobProp()

void CPubseqGatewayCacheBlobProp::EnumerateBlobProp ( int32_t  sat,
TBlobPropEnumerateFn  fn 
)

◆ Fetch()

vector< CBlobRecord > CPubseqGatewayCacheBlobProp::Fetch ( CBlobFetchRequest const request)

◆ FetchLast()

vector< CBlobRecord > CPubseqGatewayCacheBlobProp::FetchLast ( CBlobFetchRequest const request)

◆ Open()

void CPubseqGatewayCacheBlobProp::Open ( const set< int > &  sat_ids)

◆ PackKey() [1/2]

string CPubseqGatewayCacheBlobProp::PackKey ( int32_t  sat_key)
static

◆ PackKey() [2/2]

string CPubseqGatewayCacheBlobProp::PackKey ( int32_t  sat_key,
int64_t  last_modified 
)
static

◆ UnpackKey() [1/2]

bool CPubseqGatewayCacheBlobProp::UnpackKey ( const char *  key,
size_t  key_sz,
int64_t last_modified 
)
static

◆ UnpackKey() [2/2]

bool CPubseqGatewayCacheBlobProp::UnpackKey ( const char *  key,
size_t  key_sz,
int64_t last_modified,
int32_t sat_key 
)
static

◆ x_CanOpenSatDatabase()

bool CPubseqGatewayCacheBlobProp::x_CanOpenSatDatabase ( int32_t  sat,
CLMDBReadOnlyTxn rtxn 
)
private

◆ x_ExtractRecord()

bool CPubseqGatewayCacheBlobProp::x_ExtractRecord ( CBlobRecord record,
lmdb::val const value 
) const
private

Member Data Documentation

◆ m_Dbis

vector<unique_ptr<lmdb::dbi, function<void(lmdb::dbi*)> > > CPubseqGatewayCacheBlobProp::m_Dbis
private

Definition at line 77 of file psg_cache_blob_prop.hpp.

Referenced by EnumerateBlobProp(), Fetch(), FetchLast(), and Open().


The documentation for this class was generated from the following files:
Modified on Fri Jun 14 16:50:30 2024 by modify_doxy.py rev. 669887