+
sizeof(*value);
88 return offset+
sizeof(*value);
93 string*
value)
const 107 const string& dbfilename,
111m_FileName(dbfilename),
115 if((prot_nucl !=
'p') && (prot_nucl !=
'n')) {
118 "Error: Invalid sequence type requested.");
159 "Error: dbname should not be an empty string.");
162 if((prot_nucl !=
'p') && (prot_nucl !=
'n')) {
165 "Error: Invalid sequence type requested.");
171 Uint4f_format_version = 0;
172 Uint4f_db_seqtype = 0;
177 TIndxoff1(0), off2(0), off3(0), offend(0);
180 booldbv5 = ( 5 == f_format_version );
181 if(!dbv5 && (f_format_version != 4)) {
184 "Error: Not a valid version 4 or 5 database.");
211off2 = off1 + region_bytes;
212off3 = off2 + region_bytes;
213offend = off3 + region_bytes;
220 chardb_seqtype = ((f_db_seqtype == 1) ?
'p':
'n');
225 "Error: requested sequence type does not match DB.");
231 if(db_seqtype ==
'n') {
CNcbiStreamoff TIndx
The type used for file offsets.
CSeqDBRawFile m_File
The raw file object.
char x_GetSeqType() const
Get the volume's sequence data type.
void x_SetFileType(char prot_nucl)
Sets the sequence data type.
CSeqDBAtlas::TIndx TIndx
Type which spans possible file offsets.
CSeqDBFileMemMap m_Lease
A memory lease used by this file.
TIndx x_ReadSwapped(CSeqDBFileMemMap &lease, TIndx offset, T *value)
Read a numerical object from the file.
string m_FileName
The name of this file.
CSeqDBExtFile(CSeqDBAtlas &atlas, const string &dbfilename, char prot_nucl)
Constructor.
const char * GetFileDataPtr(const string &fname, TIndx offset)
Get a pointer to the specified offset.
void Init(const string &filename)
Initializes a memory map object.
string m_LMDBFile
Name of matching SQLite file (empty if version 4 DB)
TIndx m_EndSeq
Offset of the end of the sequence section.
Uint4 m_NumOIDs
The number of oids in this volume.
TIndx m_OffHdr
offset of the start of the header section.
Uint4 m_MaxLen
The length of the longest sequence in this volume.
TIndx m_EndAmb
Offset of the end of the ambiguity section.
string m_Title
The volume title.
TIndx m_EndHdr
Offset of the end of the header section.
Uint4 m_Volume
Volume number (only set in version 5 DBs)
Uint8 m_VolLen
The length of the volume (in bases).
TIndx m_OffSeq
Offset of the start of the sequence section.
TIndx m_OffAmb
Offset of the start of the ambiguity section.
CSeqDBIdxFile(CSeqDBAtlas &atlas, const string &dbname, char prot_nucl)
Constructor.
string m_Date
The construction date of the volume.
TIndx ReadSwapped(CSeqDBFileMemMap &lease, TIndx offset, Uint4 *value) const
Read a four byte numerical object from the file.
string m_FileName
The name of this file.
CSeqDBAtlas::TIndx TIndx
Type which spans possible file offsets.
bool Open(const CSeqDB_Path &name)
MMap or Open a file.
#define NCBI_THROW(exception_class, err_code, message)
Generic macro to throw an exception, given the exception class, error code and message string.
int32_t Int4
4-byte (32-bit) signed integer
uint32_t Uint4
4-byte (32-bit) unsigned integer
int64_t Int8
8-byte (64-bit) signed integer
uint64_t Uint8
8-byte (64-bit) unsigned integer
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
char * dbname(DBPROCESS *dbproc)
Get name of current database.
unsigned int
A callback function used to compare two keys in a database.
const GenericPointer< typename T::ValueType > T2 value
CSeqDBAtlas::TIndx TIndx
Index file.
File access objects for CSeqDB.
T SeqDB_GetStdOrd(const T *stdord_obj)
Read a network order integer value.
T SeqDB_GetBroken(const T *stdord_obj)
Read a non-network-order integer value.
static SLJIT_INLINE sljit_ins msg(sljit_gpr r, sljit_s32 d, sljit_gpr x, sljit_gpr b)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4