57 size_t q_index,
size_t s_index,
88 m_QueryIndex(q_index),
89 m_SubjectIndex(s_index)
91 _ASSERT(align.GetSegs().IsStd());
94 typedef list< CRef< CStd_seg > >
TStd;
95 const TStd& std_list = align.GetSegs().GetStd();
149 const objects::CSeq_align::TScore& scores =
m_SeqAlign->GetScore();
150 ITERATE(objects::CSeq_align::TScore, itS, scores) {
151 const objects::CScore& score = **itS;
154 if(score.GetId().GetStr() == score_name) {
155 const objects::CScore::TValue&
val = score.GetValue();
156 switch(
val.Which()) {
157 case objects::CScore::TValue::e_Real:
return val.GetReal();
break;
158 case objects::CScore::TValue::e_Int:
return val.GetInt();
break;
194 m_QueryStrand(q_strand),
195 m_SubjectStrand(s_strand)
EDirection
Row direction flags.
@ eDirect
Use only sequences whose strand is the same as that of the anchor.
@ eReverse
Use only sequences whose strand is opposite to that of the anchor.
CStdSegHitElement - IHitElement implementation for CStd_seg-based alignments.
virtual TSeqPos GetSubjectLength() const
virtual const IHit & GetHit() const
virtual objects::ENa_strand GetQueryStrand() const
objects::ENa_strand m_SubjectStrand
objects::ENa_strand m_QueryStrand
virtual ~CStdSegHitElement()
virtual objects::ENa_strand GetSubjectStrand() const
virtual TSignedSeqPos GetSubjectStart() const
virtual TSignedSeqPos GetQueryStart() const
virtual TSeqPos GetQueryLength() const
Wraps a CSeq_align containing CStd_seg and provides a simple API for interpreting it as a pairwise al...
static bool HasAlignment(const TStd &std_list, size_t q_index, size_t s_index, TDirection dir)
objects::CSeq_align::TSegs::TStd TStd
virtual double GetScoreValue(const string &score_name) const
CStdSegHit(const objects::CSeq_align &align, int q_index, int s_index)
CConstRef< objects::CSeq_align > m_SeqAlign
virtual const IHitElement & GetElem(TDim elem_index) const
virtual const objects::CSeq_align * GetSeqAlign() const
virtual TDim GetElemsCount() const
CRange< TSignedSeqPos > GetSeqRange(TDim row) const
unsigned int TSeqPos
Type for sequence locations and lengths.
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
int TSignedSeqPos
Type for signed sequence position.
ENa_strand GetStrand(void) const
Get the location's strand.
TObjectType * GetPointer(void) const THROWS_NONE
Get pointer,.
position_type GetLength(void) const
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
TFrom GetFrom(void) const
Get the From member data.
const TLoc & GetLoc(void) const
Get the Loc member data.
TDim GetDim(void) const
Get the Dim member data.
bool IsEmpty(void) const
Check if variant Empty is selected.
ENa_strand
strand of nucleic acid
static int match(register const pcre_uchar *eptr, register const pcre_uchar *ecode, const pcre_uchar *mstart, int offset_top, match_data *md, eptrblock *eptrb, unsigned int rdepth)
USING_SCOPE(ncbi::objects)
bool IsStrandGood(ENa_strand strand)
CStdSegHit.