1 #ifndef ALGO_COBALT___HIT__HPP
2 #define ALGO_COBALT___HIT__HPP
90 static const int kMinHitSize = 2;
116 CHit(
int seq1_index,
int seq2_index)
117 : m_SeqIndex1(seq1_index), m_SeqIndex2(seq2_index),
118 m_Score(0), m_SeqRange1(0,0), m_SeqRange2(0,0) {}
126 : m_SeqIndex1(seq1_index), m_SeqIndex2(seq2_index),
130 m_EditScript(hsp->gap_info) { VerifyHit(); }
139 CHit(
int seq1_index,
int seq2_index,
int score,
140 const objects::CDense_seg& denseg);
149 CHit(
int seq1_index,
int seq2_index,
int score,
150 const objects::CDense_diag& dendiag);
160 CHit(
int seq1_index,
int seq2_index,
163 : m_SeqIndex1(seq1_index), m_SeqIndex2(seq2_index),
165 m_SeqRange1(seq_range1), m_SeqRange2(seq_range2),
166 m_EditScript(edit_script) { VerifyHit(); }
173 for (
int i = 0;
i < (
int)m_SubHit.size();
i++)
221 void GetRangeFromSeq2(
TRange seq_range2,
240 void GetRangeFromSeq1(
TRange seq_range1,
261 void ResolveSubHitConflicts(
CSequence& seq1,
User-defined methods of the data storage class.
Definitions used by all COBALT aligner components.
Structures and API used for saving BLAST hits.
Interface for the traceback from blast hits.
A generalized representation of a pairwise alignment.
TSubHit & GetSubHit()
Retrieve a list of subhits.
CHit(int seq1_index, int seq2_index, int score, const objects::CDense_seg &denseg)
Create an alignment from a Dense_seg.
vector< CHit * > m_SubHit
Subhits for this alignment.
CHit(int seq1_index, int seq2_index, TRange seq_range1, TRange seq_range2, int score, CEditScript edit_script)
Create an alignment with all specified parameters.
CEditScript m_EditScript
Traceback for this alignment.
void InsertSubHit(CHit *hit)
Add a to a CHit's list of subhits.
CHit(int seq1_index, int seq2_index, BlastHSP *hsp)
Create an alignment from a BLAST hit.
CHit(int seq1_index, int seq2_index, int score, const objects::CDense_diag &dendiag)
Create an alignment from a Dense_diag.
int m_Score
Score of alignment.
CEditScript & GetEditScript()
Retrieve the traceback associated with a CHit.
int m_SeqIndex1
Numerical identifier for first sequence in alignment.
int m_SeqIndex2
Numerical identifier for second sequence in alignment.
TRange m_SeqRange1
The range of offsets on the first sequence.
CHit(int seq1_index, int seq2_index)
Create an empty alignment.
TRange m_SeqRange2
The range of offsets on the second sequence.
bool HasSubHits()
Query if a CHit has a hierarchy of subhits available.
vector< CHit * > TSubHit
Hits can be grouped hierarchically.
Class for representing protein sequences.
Definitions of structures used for saving traceback information.
#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_COBALT_EXPORT
unsigned int
A callback function used to compare two keys in a database.
Interface for CSequence class.
Structure holding all information about an HSP.
Interface for CEditScript class.