33 #ifndef OBJTOOLS_ALIGN_FORMAT___VECTORSCREEN_HPP
34 #define OBJTOOLS_ALIGN_FORMAT___VECTORSCREEN_HPP
78 a.GetNamedScore(
"vs_id",
id);
84 size_t prev_size = drop_ids.
size();
85 drop_ids.
insert(x_IdToDropIdMap[keep_id].begin(), x_IdToDropIdMap[keep_id].end());
87 while(prev_size != drop_ids.
size()) {
88 prev_size = drop_ids.
size();
90 drop_ids.
insert(x_IdToDropIdMap[*ci].begin(), x_IdToDropIdMap[*ci].end());
107 x_add_aligns(align_parts, al);
110 x_add_aligns(align_drops, al);
114 if( (*iter)->GetSeqRange(0).IntersectingWith(
range) ) {
115 dest.push_back(*iter);
128 int rv =
static_cast<int>(this->type < rhs.
type);
131 rv = this->range < rhs.
range;
164 m_ShowWeakMatch =
false;
176 return &m_AlnInfoList;
185 static string GetStrengthString(MatchType match_type);
224 void x_MergeSeqalign(objects::CSeq_align_set& seqalign);
229 void x_MergeInclusiveSeqalign(objects::CSeq_align_set& seqalign);
235 void x_MergeLowerRankSeqalign(objects::CSeq_align_set& seqalign_higher,
236 objects::CSeq_align_set& seqalign_lower);
239 void x_GetEdgeRanges(
const objects::CSeq_align& seqalign,
248 MatchType x_GetMatchType(
const objects::CSeq_align& seqalign,
MatchType
vector match defines
TIdToDropIdMap x_IdToDropIdMap
map< int, list< int > > TIdToDropIdMap
void SetImagePath(string path)
Set path to pre-made image gif files with different colors.
TSeqPos m_TerminalFlexibility
list< AlnInfo * > m_AlnInfoList
internal match list
void NoShowWeakMatch()
Do not show weak(eWeak) match.
CConstRef< objects::CSeq_align_set > m_SeqalignSetRef
the current seqalign
const list< AlnInfo * > * GetAlnInfoList() const
return alignment info list
int x_GetId(const objects::CSeq_align &a)
map< int, int > TDropToKeepMap
string m_ImagePath
gif image file path
void SetHelpDocsUrl(string url)
provide url link to help docs.
string m_HelpDocsUrl
help url
static bool FromRangeAscendingSort(AlnInfo *const &info1, AlnInfo *const &info2)
Sort on range from.
TSeqPos m_MasterLen
master seq length
vector< CRef< objects::CSeq_align > > x_OrigAlignsById
bool m_ShowWeakMatch
Show weak match?
TDropToKeepMap x_DropToKeepMap
void x_GetAllDropIdsForKeepId(int keep_id, set< int > &drop_ids)
CRef< objects::CSeq_align_set > m_FinalSeqalign
the processed seqalign
iterator_bool insert(const value_type &val)
list< CRef< CSeq_align > > TAlignList
std::ofstream out("events_result.xml")
main entry point for tests
unsigned int TSeqPos
Type for sequence locations and lengths.
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
static TThisType GetEmpty(void)
#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.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
#define NCBI_ALIGN_FORMAT_EXPORT
TTo GetTo(void) const
Get the To member data.
TFrom GetFrom(void) const
Get the From member data.
range(_Ty, _Ty) -> range< _Ty >
Portable reference counted smart and weak pointers using CWeakRef, CRef, CObject and CObjectEx.
double r(size_t dimension_, const Int4 *score_, const double *prob_, double theta_)
static SLJIT_INLINE sljit_ins l(sljit_gpr r, sljit_s32 d, sljit_gpr x, sljit_gpr b)
void add_align(CRef< objects::CSeq_align > a)
const TAlignList & get_aligns() const
const TAlignList & get_drops() const
void add_aligns(const TAlignList &al)
void x_add_aligns(TAlignList &dest, const TAlignList &al)
AlnInfo(TSeqRange r=TSeqRange::GetEmpty(), MatchType m=eNoMatch, const TAlignList &l=TAlignList())
int operator<(const AlnInfo &rhs) const
to allow sorting in std::list
list< CRef< objects::CSeq_align > > TAlignList
void add_drops(const TAlignList &al)