TSegments::iterator seg_it =
m_Segs.begin();
136 for( ; seg_it !=
m_Segs.end(); ) {
137 if(seg_it->m_Rows.size() <=
row) {
158TSegments::iterator seg_it =
m_Segs.begin();
159 for( ; seg_it !=
m_Segs.end(); ) {
160 if(seg_it->m_Rows.size() <=
row) {
182TSegments::iterator old_it = seg_it;
186 returnaln_row.
m_Id;
192 returnaln_row.
m_Id;
200 returnaln_row.
m_Id;
204TSegments::iterator ins_point = seg_it;
215old_it->m_Rows.size(), src_reverse);
217 for(
size_t r= 0;
r< old_it->m_Rows.size(); ++
r) {
219lseg.
CopyRow(
r, old_it->m_Rows[
r]);
234old_it->m_Rows.size(),
247 for(
size_t r= 0;
r< old_it->m_Rows.size(); ++
r) {
249mseg.
CopyRow(
r, old_it->m_Rows[
r]);
277old_it->m_Rows.size(),
280 for(
size_t r= 0;
r< old_it->m_Rows.size(); ++
r) {
282rseg.
CopyRow(
r, old_it->m_Rows[
r]);
304TSegments::iterator old_it = seg_it;
310 returnaln_row.
m_Id;
314 if(id_it == id_map.
end()) {
316 returnaln_row.
m_Id;
319 if( rmap.
empty() ) {
321 returnaln_row.
m_Id;
324 typedefvector< CRef<CSeq_loc_Conversion> > TSortedConversions;
325TSortedConversions cvts;
327cvts.push_back(rg_it->second);
332TSegments::iterator ins_point = seg_it;
335 boolmapped =
false;
339 for(
size_tcvt_idx = 0; cvt_idx < cvts.size(); ++cvt_idx) {
360dl, seg.
m_Rows.size(), src_reverse);
362 for(
size_t r= 0;
r< seg.
m_Rows.size(); ++
r) {
393 for(
size_t r= 0;
r< seg.
m_Rows.size(); ++
r) {
418left_shift += mseg.
m_Len;
427seg.
m_Rows[
row].m_Id = rmap.
begin()->second->m_Dst_id_Handle;
436 for(
size_t r= 0;
r< seg.
m_Rows.size(); ++
r) {
467sub->InitExon(spliced, exon);
468 returnsub.release();
bool IsReverse(ENa_strand s)
Class used to map seq-alignments.
CSeq_loc_Mapper_Base & GetLocMapper(void) const
void Convert(void)
Map the whole alignment through the linked seq-loc mapper.
void x_InvalidateScores(SAlignment_Segment *seg=NULL)
vector< CRef< CSeq_align_Mapper_Base > > TSubAligns
SAlignment_Segment & x_InsertSeg(TSegments::iterator &where, int len, size_t dim, bool reverse)
size_t GetMaxDim(void) const
Get max number of rows of all segments.
CRef< CSeq_align > m_DstAlign
void x_ConvertAlignCvt(CSeq_loc_Conversion_Set &cvts)
CSeq_id_Handle x_ConvertSegmentCvt(TSegments::iterator &seg_it, CSeq_loc_Conversion &cvt, size_t row)
virtual CSeq_align_Mapper_Base * CreateSubAlign(const CSeq_align &align)
CSeq_align_Mapper(const CSeq_align &align, CSeq_loc_Mapper_Base &loc_mapper)
void x_ConvertRowCvt(CSeq_loc_Conversion &cvt, size_t row)
unsigned int m_SingleIndex
TConvByIndex m_CvtByIndex
CRef< CSeq_loc_Conversion > m_SingleConv
CSeq_id_Handle m_Src_id_Handle
bool ConvertInterval(TSeqPos src_from, TSeqPos src_to, ENa_strand src_strand)
EMappedObjectType m_LastType
CSeq_id_Handle m_Dst_id_Handle
CSeq_loc_Mapper_Base â.
container_type::iterator iterator
const_iterator end() const
const_iterator find(const key_type &key) const
unsigned int TSeqPos
Type for sequence locations and lengths.
#define NON_CONST_ITERATE(Type, Var, Cont)
Non constant version of ITERATE macro.
const TSeqPos kInvalidSeqPos
Define special value for invalid sequence position.
void Reset(void)
Reset reference object.
position_type GetLength(void) const
const_iterator begin(void) const
#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.
void SetFrom(TFrom value)
Assign a value to From data member.
TTo GetTo(void) const
Get the To member data.
TFrom GetFrom(void) const
Get the From member data.
constexpr auto sort(_Init &&init)
double r(size_t dimension_, const Int4 *score_, const double *prob_, double theta_)
#define row(bind, expected)
bool operator()(const CRef< CSeq_loc_Conversion > &x, const CRef< CSeq_loc_Conversion > &y) const
Single row of a single alignment segment.
ENa_strand m_Strand
Strand value.
TSeqPos m_Start
kInvalidSeqPos means gap
CSeq_id_Handle m_Id
Row's seq-id.
bool m_IsSetStrand
Is strand set for the row?
bool SameStrand(const SAlignment_Row &r) const
Check if the query row has the same strand orientation.
void SetMapped(void)
Mark the row as mapped.
Structure to hold information about a single alignment segment.
TRows m_Rows
Segment rows.
SAlignment_Row & CopyRow(size_t idx, const SAlignment_Row &src_row)
Create a copy of the given row, store is to this segment as row number 'idx'.
TScores m_Scores
Scores for this segment.
ssize_t m_ScoresGroupIdx
Group of scores.
bool m_HaveStrands
Do at least some rows have strand set?
int m_Len
Segment length.
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