1 #ifndef SEQ_VECTOR_CI__HPP
2 #define SEQ_VECTOR_CI__HPP
73 static TResidue sx_GetGapChar(TCoding coding,
74 ECaseConversion case_cvt);
75 static const char* sx_GetConvertTable(TCoding src, TCoding dst,
77 ECaseConversion case_cvt);
78 static const char sm_TrivialTable[256];
136 TSeqPos GetBufferSize(
void)
const;
138 const char* GetBufferPtr(
void)
const;
141 const char* GetBufferEnd(
size_t size)
const;
185 TCoding GetCoding(
void)
const;
186 void SetCoding(TCoding coding);
193 void SetRandomizeAmbiguities(
void);
194 void SetRandomizeAmbiguities(
Uint4 seed);
195 void SetRandomizeAmbiguities(
CRandom& random_gen);
197 void SetNoAmbiguities(
void);
204 const CSeqMap_CI& GetCurrentSeqMap_CI()
const;
207 bool IsInGap(
void)
const;
215 TSeqPos GetGapSizeForward(
void)
const;
218 TSeqPos GetGapSizeBackward(
void)
const;
228 bool HasZeroGapBefore(
void);
238 void x_InitializeCache(
void);
240 void x_ResizeCache(
size_t size);
241 void x_SwapCache(
void);
242 void x_UpdateCacheUp(
TSeqPos pos);
243 void x_UpdateCacheDown(
TSeqPos pos);
249 void x_CheckForward(
void);
250 void x_CheckBackward(
void);
251 void x_InitRandomizer(
CRandom& random_gen);
253 void x_NextCacheSeg(
void);
254 void x_PrevCacheSeg(
void);
256 TSeqPos x_CachePos(
void)
const;
257 TSeqPos x_CacheSize(
void)
const;
258 TSeqPos x_CacheEndPos(
void)
const;
259 TSeqPos x_BackupPos(
void)
const;
260 TSeqPos x_BackupSize(
void)
const;
261 TSeqPos x_BackupEndPos(
void)
const;
263 TSeqPos x_CacheOffset(
void)
const;
265 void x_ResetCache(
void);
266 void x_ResetBackup(
void);
268 void x_ThrowOutOfRange(
void)
const;
471 if ( !
bool(*
this) ) {
bool operator!=(const _Ht_iterator< _Val, _Nonconst_traits< _Val >, _Key, _HF, _ExK, _EqK, _All > &__x, const _Ht_iterator< _Val, _Const_traits< _Val >, _Key, _HF, _ExK, _EqK, _All > &__y)
bool GetSeqData(ParserPtr pp, const DataBlk &entry, CBioseq &bioseq, Int4 nodetype, unsigned char *seqconv, Uint1 seq_data_type)
special temporary holder for return value from postfix operators
bool operator<(const CEquivRange &A, const CEquivRange &B)
bool operator==(const CEquivRange &A, const CEquivRange &B)
objects::CSeqVectorTypes::TResidue TResidue
unsigned int TSeqPos
Type for sequence locations and lengths.
int TSignedSeqPos
Type for signed sequence position.
element_type * get(void) const
Get pointer.
void swap(NCBI_NS_NCBI::pair_base_member< T1, T2 > &pair1, NCBI_NS_NCBI::pair_base_member< T1, T2 > &pair2)
CVect2< NCBI_PROMOTE(int,U) > operator*(int v1, const CVect2< U > &v2)
CExpression operator>=(CREATED, time_point)
CExpression operator<=(time_point, CREATED)
ENa_strand GetStrand(const CSeq_loc &loc, CScope *scope=0)
Returns eNa_strand_unknown if multiple Bioseqs in loc Returns eNa_strand_other if multiple strands in...
bool IsValid(const CSeq_point &pt, CScope *scope)
Checks that point >= 0 and point < length of Bioseq.
CSeqVector_CI & SetPos(TSeqPos pos)
virtual void RandomizeData(char *buffer, size_t count, TSeqPos pos)=0
Convert count unpacked bases in buffer 4na -> 2na with randomization.
const char * GetBufferPtr(void) const
Get pointer to current char in the buffer.
ENa_strand GetStrand(void) const
CTempValue(value_type value)
CSeq_data::E_Choice TCoding
TSeqPos x_CacheEndPos(void) const
TSeqPos x_BackupPos(void) const
bool operator>(const CSeqVector_CI &iter) const
TSignedSeqPos difference_type
CTempValue operator--(int)
TResidue operator*(void) const
const TResidue & reference
CSeqVector_CI & operator++(void)
TSeqPos GetPos(void) const
vector< CTSE_Handle > m_UsedTSEs
TCoding GetCoding(void) const
void GetSeqData(TSeqPos start, TSeqPos stop, string &buffer)
Fill the buffer string with the sequence data for the interval [start, stop).
const char * GetBufferEnd(size_t size) const
Get pointer to current position+size.
TSeqPos x_CacheOffset(void) const
CSeqVector_CI & operator+=(TSeqPos value)
CRef< INcbi2naRandomizer > m_Randomizer
void x_SetPos(TSeqPos pos)
bool operator>=(const CSeqVector_CI &iter) const
ECaseConversion m_CaseConversion
bool operator!=(const CSeqVector_CI &iter) const
void x_ThrowOutOfRange(void) const
value_type operator*(void) const
TSeqPos x_CachePos(void) const
TSeqPos GetBufferSize(void) const
Get number of chars from current position to the current buffer end.
DECLARE_OPERATOR_BOOL(IsValid())
CSeqMap::ESegmentType GetType(void) const
AutoArray< char > TCacheData
CTempValue operator++(int)
Restricted postfix operators.
TResidue GetGapChar(void) const
returns character representation of gap in sequence
void x_PrevCacheSeg(void)
void x_NextCacheSeg(void)
CSeqVector_CI operator-(const CSeqVector_CI &iter, TSeqPos value)
TSeqPos x_BackupEndPos(void) const
TSeqPos x_CacheSize(void) const
bool operator<(const CSeqVector_CI &iter) const
CConstRef< CSeqMap > m_SeqMap
CSeqVector_CI & operator--(void)
bool operator<=(const CSeqVector_CI &iter) const
CSeqVector_CI operator+(const CSeqVector_CI &iter, TSeqPos value)
static TResidue sx_GetGapChar(TCoding coding, ECaseConversion case_cvt)
TSeqPos x_BackupSize(void) const
TCoding x_GetCoding(TCoding cacheCoding, TCoding dataCoding) const
bool operator==(const CSeqVector_CI &iter) const
const CSeqMap_CI & GetCurrentSeqMap_CI() const
bool IsInGap(void) const
true if current position of CSeqVector_CI is inside of sequence gap
CSeqVector_CI & operator-=(TSeqPos value)
std::random_access_iterator_tag iterator_category
CObject & operator=(const CObject &src) THROWS_NONE
Assignment operator.
uint32_t Uint4
4-byte (32-bit) unsigned integer
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define END_SCOPE(ns)
End the previously defined scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
#define BEGIN_SCOPE(ns)
Define a new scope.
#define NCBI_XOBJMGR_EXPORT
ENa_strand
strand of nucleic acid
@ e_not_set
No variant selected.
CNcbiMatrix< T > & operator+=(CNcbiMatrix< T > &, const CNcbiMatrix< U > &)
global addition: matrix += matrix
CNcbiMatrix< T > & operator-=(CNcbiMatrix< T > &, const CNcbiMatrix< U > &)
global subtraction: matrix -= matrix
const struct ncbi::grid::netcache::search::fields::SIZE size
const GenericPointer< typename T::ValueType > T2 value
S & operator--(CNetRef< S > &r, int)
bool operator>(const typename tree< T, tree_node_allocator >::iterator_base &one, const typename tree< T, tree_node_allocator >::iterator_base &two)