NCBI C++ ToolKit
|
Implementation for the CSeqDBOIDList class, an array of bits describing a subset of the virtual oid space. More...
#include <ncbi_pch.hpp>
#include <corelib/ncbistr.hpp>
#include "seqdboidlist.hpp"
#include "seqdbfilter.hpp"
#include <objtools/blast/seqdb_reader/impl/seqdbfile.hpp>
#include "seqdbgilistset.hpp"
#include <algorithm>
Go to the source code of this file.
Go to the SVN repository for this file.
Functions | |
void | s_GetFilteredOidRange (const CSeqDBVolSet &volset, const vector< string > &vol_basenames, vector< const CSeqDBVolEntry * > &excluded_vols, CRef< CSeqDBGiList > &si_list) |
bool | s_IsOidInFilteredVol (blastdb::TOid oid, vector< const CSeqDBVolEntry * > &excluded_vols) |
void | s_AddFilterFile (string &name, const string &vn, vector< string > &fnames, vector< vector< string > > &fnames_vols) |
bool | s_CompareSeqId (const string &id1, const string &id2) |
void | s_ProcessSeqIdFilters (const vector< string > &fnames, vector< vector< string > > &fnames_vols, CRef< CSeqDBGiList > user_list, CRef< CSeqDBNegativeList > neg_user_list, const CSeqDBLMDBSet &lmdb_set, const CSeqDBVolSet &volset, CSeqDB_BitSet &filter_bit) |
void | s_ProcessTaxIdFilters (const vector< string > &fnames, vector< vector< string > > &fnames_vols, CRef< CSeqDBGiList > user_list, CRef< CSeqDBNegativeList > neg_user_list, const CSeqDBLMDBSet &lmdb_set, const CSeqDBVolSet &volset, CSeqDB_BitSet &filter_bit) |
Implementation for the CSeqDBOIDList class, an array of bits describing a subset of the virtual oid space.
Definition in file seqdboidlist.cpp.
void s_AddFilterFile | ( | string & | name, |
const string & | vn, | ||
vector< string > & | fnames, | ||
vector< vector< string > > & | fnames_vols | ||
) |
Definition at line 549 of file seqdboidlist.cpp.
Referenced by CSeqDBOIDList::x_ComputeFilters().
Definition at line 565 of file seqdboidlist.cpp.
References CSeq_id::fParse_AnyRaw, CSeq_id::fParse_ValidLocal, and CSeq_id::Match().
Referenced by s_ProcessSeqIdFilters().
void s_GetFilteredOidRange | ( | const CSeqDBVolSet & | volset, |
const vector< string > & | vol_basenames, | ||
vector< const CSeqDBVolEntry * > & | excluded_vols, | ||
CRef< CSeqDBGiList > & | si_list | ||
) |
Definition at line 520 of file seqdboidlist.cpp.
References CSeqDBVol::AttachVolumeGiList(), CSeqDBVolSet::GetNumVols(), CSeqDBVolSet::GetVol(), CSeqDBVolSet::GetVolEntry(), CSeqDBVol::GetVolName(), and i.
Referenced by s_ProcessSeqIdFilters(), and s_ProcessTaxIdFilters().
bool s_IsOidInFilteredVol | ( | blastdb::TOid | oid, |
vector< const CSeqDBVolEntry * > & | excluded_vols | ||
) |
Definition at line 538 of file seqdboidlist.cpp.
References i, CSeqDBVolEntry::OIDEnd(), and CSeqDBVolEntry::OIDStart().
Referenced by s_ProcessSeqIdFilters(), and s_ProcessTaxIdFilters().
void s_ProcessSeqIdFilters | ( | const vector< string > & | fnames, |
vector< vector< string > > & | fnames_vols, | ||
CRef< CSeqDBGiList > | user_list, | ||
CRef< CSeqDBNegativeList > | neg_user_list, | ||
const CSeqDBLMDBSet & | lmdb_set, | ||
const CSeqDBVolSet & | volset, | ||
CSeqDB_BitSet & | filter_bit | ||
) |
Definition at line 578 of file seqdboidlist.cpp.
References CSeqDBLMDBSet::AccessionsToOids(), CRef< C, Locker >::Empty(), CSeqDBFileGiList::eSiList, CSeqDBGiList::GetNumSis(), CSeqDBNegativeList::GetNumSis(), CSeqDBNegativeList::GetSiList(), CSeqDBGiList::GetSiList(), i, kSeqDBEntryNotFound, s_CompareSeqId(), s_GetFilteredOidRange(), s_IsOidInFilteredVol(), CSeqDB_BitSet::SetBit(), ct::sort(), and swap().
Referenced by CSeqDBOIDList::x_ComputeFilters().
void s_ProcessTaxIdFilters | ( | const vector< string > & | fnames, |
vector< vector< string > > & | fnames_vols, | ||
CRef< CSeqDBGiList > | user_list, | ||
CRef< CSeqDBNegativeList > | neg_user_list, | ||
const CSeqDBLMDBSet & | lmdb_set, | ||
const CSeqDBVolSet & | volset, | ||
CSeqDB_BitSet & | filter_bit | ||
) |
Definition at line 651 of file seqdboidlist.cpp.
References set< Key, Compare >::begin(), set< Key, Compare >::clear(), CRef< C, Locker >::Empty(), set< Key, Compare >::end(), CSeqDBFileGiList::eTaxIdList, CSeqDBGiList::GetNumTaxIds(), CSeqDBNegativeList::GetNumTaxIds(), CSeqDBGiList::GetTaxIdsList(), CSeqDBNegativeList::GetTaxIdsList(), i, set< Key, Compare >::insert(), s_GetFilteredOidRange(), s_IsOidInFilteredVol(), CSeqDB_BitSet::SetBit(), set< Key, Compare >::size(), and CSeqDBLMDBSet::TaxIdsToOids().
Referenced by CSeqDBOIDList::x_ComputeFilters().