76 const CTime & timestamp,
119 if ( root_dir.
Exists() ) {
153 if ( entry.IsSet() ) {
157 }
else if ( entry.IsSeq() ) {
160 const CBioseq & bio_seq = entry.GetSeq();
163 "Sequence is to big (AsnCache supports only objects <= 4Gb)" );
171 "Sequence is to big (AsnCache supports only objects <= 4Gb)" );
191 switch (desc.
Which()) {
205 if ((*dbiter)->GetDb() ==
"taxon") {
206 taxid = (*dbiter)->GetTag().GetId();
230 header_stream << header << flush;
size_t IndexABioseq(const objects::CBioseq &bioseq, CAsnIndex &index, CAsnIndex::TTimestamp timestamp, CAsnIndex::TChunkId chunk_id, CAsnIndex::TOffset offset, CAsnIndex::TSize size)
void OpenForWrite(const std::string &root_path="")
void Write(const CCache_blob &cache_blob)
unsigned int GetChunkSerialNum() const
objects::CCache_blob m_CacheBlob
CTempStopWatch< EIsInstantiated > m_BuildIndexEntrySW
CTempStopWatch< EIsInstantiated > m_DumpSW
void x_BuildIndexAndSeqIdInfo(const objects::CSeq_entry &entry)
std::string m_RootDirPath
void DumpBlob(const CRef< objects::CSeq_entry > entry, const CTime ×tamp, SSatSatKey blob_id)
CTempStopWatch< EIsInstantiated > m_CreateBlobSW
Uint4 x_GetTaxId(const objects::CBioseq &bio_seq)
CSeqIdChunkFile m_SeqIdChunkFile
CTempStopWatch< EIsInstantiated > m_WriteBlobSW
void x_CreateBlob(const objects::CSeq_entry &entry, const CTime ×tamp)
void OpenForWrite(const std::string &root_path="")
void Write(const objects::CBioseq::TId &seq_ids)
Define CVersionInfo, a version info storage class.
const Uint2 kMinorVersion
const Uint2 kMajorVersion
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
#define LOG_POST(message)
This macro is deprecated and it's strongly recomended to move in all projects (except tests) to macro...
#define NCBI_ERRNO_CODE_WRAPPER
#define NCBI_THROW(exception_class, err_code, message)
Generic macro to throw an exception, given the exception class, error code and message string.
#define NCBI_ERRNO_STR_WRAPPER
void Info(CExceptionArgs_Base &args)
bool CreatePath(TCreateFlags flags=fCreate_Default) const
Create the directory path recursively possibly more than one at a time.
virtual bool Exists(void) const
Check if directory "dirname" exists.
static string ConcatPath(const string &first, const string &second)
Concatenate two parts of the path for the current OS.
uint32_t Uint4
4-byte (32-bit) unsigned integer
int64_t Int8
8-byte (64-bit) signed integer
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
IO_PREFIX::ofstream CNcbiOfstream
Portable alias for ofstream.
static string IntToString(int value, TNumToStringFlags flags=0, int base=10)
Convert int to string.
time_t GetTimeT(void) const
Get time in time_t format.
const TOrg & GetOrg(void) const
Get the Org member data.
bool IsSetDb(void) const
ids in taxonomic or culture dbases Check if a value has been assigned to Db data member.
vector< CRef< CDbtag > > TDb
const TDb & GetDb(void) const
Get the Db member data.
list< CRef< CSeq_entry > > TSeq_set
list< CRef< CSeqdesc > > Tdata
const TSource & GetSource(void) const
Get the variant data.
const TId & GetId(void) const
Get the Id member data.
const Tdata & Get(void) const
Get the member data.
const TOrg & GetOrg(void) const
Get the variant data.
bool IsSetDescr(void) const
descriptors Check if a value has been assigned to Descr data member.
bool IsSet(void) const
Check if a value has been assigned to data member.
E_Choice Which(void) const
Which variant is currently selected.
const TDescr & GetDescr(void) const
Get the Descr member data.
@ e_Org
if all from one organism
@ e_Source
source of materials, includes Org-ref
const struct ncbi::grid::netcache::search::fields::SIZE size
Defines classes: CDirEntry, CFile, CDir, CSymLink, CMemoryFile, CFileUtil, CFileLock,...
Defines: CTimeFormat - storage class for time format.
Reader-writer based streams.