std::get<EntryBlk*>(
mData);
93 if(holds_alternative<monostate>(
mData))
95 if(holds_alternative<TDataBlkList>(
mData)) {
96 auto& subblocks = std::get<TDataBlkList>(
mData);
98}
else if(holds_alternative<EntryBlk*>(
mData)) {
99 auto& p = std::get<EntryBlk*>(
mData);
102}
else if(holds_alternative<FeatBlk*>(
mData)) {
103 auto& p = std::get<FeatBlk*>(
mData);
106}
else if(holds_alternative<const TXmlIndexList*>(
mData)) {
107 auto& p = std::get<const TXmlIndexList*>(
mData);
110 mData.emplace<monostate>();
127 static bool QSCmp(QSStructList::const_iterator qs1, QSStructList::const_iterator qs2)
129 int i=
StringCmp(qs1->accession.c_str(), qs2->accession.c_str());
133 returnqs1->version < qs2->version;
164QSStructList::iterator tqssp = qssp.before_begin();
165QSStructList::iterator tqsspprev;
168 while(fgets(
buf, 1023, pp->
qsfd)) {
169 if(
buf[0] !=
'>')
183tqssp = qssp.emplace_after(tqssp);
185tqssp->version = q ?
fta_atoi(q) : 0;
186tqssp->offset = (size_t)ftell(pp->
qsfd) -
i;
188tqsspprev->length = tqssp->offset - tqsspprev->offset;
193tqssp->length = (size_t)ftell(pp->
qsfd) - tqssp->offset;
200vector<QSStructList::iterator> qsspp(
count);
201tqssp = qssp.begin();
202 for(j = 0; j <
count&& tqssp != qssp.end(); j++, ++tqssp)
209 if(qsspp[j]->accession == qsspp[j + 1]->accession)
210 if(pp->
accver==
false||
211qsspp[j]->version == qsspp[j + 1]->version)
226vector<IndexblkPtr> ibpp;
227ibpp.reserve(ibl_size);
228 for(
const auto& it : ibl)
229ibpp.push_back(it.get());
234 for(ret =
true, j = 0, k = 0; j <
count; j++) {
239 for(; k < ibl_size; k++) {
240 l=
StringCmp(qsspp[j]->accession.c_str(), ibpp[k]->acnum);
247m = qsspp[j]->version - ibpp[k]->vernum;
254ibpp[k]->qsoffset = qsspp[j]->offset;
255ibpp[k]->qslength = qsspp[j]->length;
static bool QSCmp(QSStructList::const_iterator qs1, QSStructList::const_iterator qs2)
static bool QSNoSequenceRecordErr(bool accver, const QSStruct &qssp)
std::forward_list< QSStruct > QSStructList
static bool AccsCmp(const Indexblk *ibp1, const Indexblk *ibp2)
bool QSIndex(ParserPtr pp, const TIndBlkList &ibl, unsigned ibl_size)
std::variant< monostate, TList, EntryBlk *, FeatBlk *, const TXmlIndexList * > mData
EntryBlk * GetEntryData() const
void SetEntryData(EntryBlk *)
struct DataBlk::@1166 mBuf
#define ParFlat_ENTRYNODE
int fta_atoi(string_view sv)
int StringCmp(const char *s1, const char *s2)
size_t StringLen(const char *s)
#define FtaErrPost(sev, level,...)
int16_t Int2
2-byte (16-bit) signed integer
int32_t Int4
4-byte (32-bit) signed integer
char Char
Alias for char.
uint32_t Uint4
4-byte (32-bit) unsigned integer
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
forward_list< unique_ptr< Indexblk > > TIndBlkList
#define ERR_QSCORE_NoSequenceRecord
#define ERR_QSCORE_NoScoreDataFound
#define ERR_QSCORE_RedundantScores
constexpr auto sort(_Init &&init)
const string version
version string
static SLJIT_INLINE sljit_ins l(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