* bytes_read = 0)
override 160 const unsigned char*
data,
175 if(
id.IsSeq_id() ) {
177 if(
autoseq_textid =
id.GetSeq_id().GetTextseq_Id() ) {
178 if( req_textid->IsSetAccession() && seq_textid->IsSetAccession() &&
180 if( !req_textid->IsSetVersion() ||
181(seq_textid->IsSetVersion() &&
182req_textid->GetVersion() == seq_textid->GetVersion()) ) {
186 if( req_textid->IsSetName() && seq_textid->IsSetName() &&
192 returnseq_id.
Equals(
id.GetSeq_id());
194 else if( !seq_id.
IsGi() ) {
198 returnseq_id.
GetGi() ==
id.GetGi();
201 auto& gi_range =
id.GetGi_range();
203seq_id.
GetGi() >= gi_range.GetStart() &&
213 for(
auto& content : chunk.
GetContent() ) {
214 if( content->IsBioseq_place() ) {
215 for(
auto& place : content->GetBioseq_place() ) {
216 for(
auto&
id: place->GetSeq_ids().Get() ) {
232 for(
auto& chunk : split_info.
GetChunks() ) {
234ret.push_back(chunk->GetId());
253*obj_stream >> *
info;
bool GetFlag(EBlobFlags flag_value) const
virtual ERW_Result Read(void *buf, size_t count, size_t *bytes_read=0) override
Read as many as "count" bytes into a buffer pointed to by the "buf" argument.
size_t x_AvaliableCount() const
TChunks::const_iterator m_CurrentChunk
map< int, vector< char > > TChunks
virtual ERW_Result PendingCount(size_t *count) override
Via parameter "count" (which is guaranteed to be supplied non-NULL) return the number of bytes that a...
CDataChunkReader(const TChunks &chunks)
const char * x_GetCurrentDataPtr() const
TChunks::const_iterator m_EndOfChunks
map< int, vector< char > > m_Chunks
CRef< CID2S_Split_Info > DeserializeSplitInfo()
void AddDataChunk(const unsigned char *data, unsigned int size, int chunk_no)
CNcbiIstream & GetStream()
unique_ptr< CNcbiIstream > m_Stream
@ fOwnReader
Own the underlying reader.
CZipStreamDecompressor â zlib based decompression stream processor.
A very basic data-read interface.
container_type::const_iterator const_iterator
#define GI_FROM(T, value)
@ fGZip
Set of flags for gzip file support. See each flag description above.
virtual bool Equals(const CSerialObject &object, ESerialRecursionMode how=eRecursive) const
Check if both objects contain the same values.
@ eSerial_AsnBinary
ASN.1 binary.
const CTextseq_id * GetTextseq_Id(void) const
Return embedded CTextseq_id, if any.
static CObjectIStream * Open(ESerialDataFormat format, CNcbiIstream &inStream, bool deleteInStream)
Create serial object reader and attach it to an input stream.
ERW_Result
Result codes for I/O operations.
IO_PREFIX::istream CNcbiIstream
Portable alias for istream.
@ eRW_Eof
End of data, should be considered permanent.
@ eRW_Success
Everything is okay, I/O completed.
static bool EqualNocase(const CTempString s1, SIZE_TYPE pos, SIZE_TYPE n, const char *s2)
Case-insensitive equality of a substring with another string.
const TChunks & GetChunks(void) const
Get the Chunks member data.
const TContent & GetContent(void) const
Get the Content member data.
TGi GetGi(void) const
Get the variant data.
bool IsGi(void) const
Check if variant Gi is selected.
const struct ncbi::grid::netcache::search::fields::SIZE size
std::istream & in(std::istream &in_, double &x_)
Reader-writer based streams.
static bool s_Matches(const CSeq_id &seq_id, const CID2S_Bioseq_Ids::C_E &id)
vector< int > GetBioseqChunks(const CSeq_id &seq_id, const CBlobRecord &blob, const unsigned char *data, unsigned int size, int chunk_no)
static bool s_ContainsBioseq(const CSeq_id &seq_id, const CID2S_Chunk_Info &chunk)
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