1 #ifndef AGP_VALIDATE_READER
2 #define AGP_VALIDATE_READER
76 void add(
const string& c);
94 enum { ORI_plus, ORI_minus,
ORI_zero, ORI_na, ORI_count };
98 beg=
row.component_beg;
99 end=
row.component_end;
103 file_num = ((
CAgpErrEx*)(
row.GetErrorHandler()))->GetFileNum();
115 s += agpErrEx->
GetFile(file_num);
162 void Reset(
bool for_chr_from_scaf=
false);
187 static bool x_PrintPatterns(
CAccPatternCounter& namePatterns,
const string& strHeader,
int fasta_count,
const char* count_label=
nullptr,
CNcbiOstream&
out=cout,
bool use_xml=
false);
194 virtual void OnScaffoldEnd();
195 virtual void OnObjectChange();
196 virtual void OnGapOrComponent();
197 virtual bool OnError();
198 virtual void OnComment();
267 void x_GetMostFreqGapsText(
int gap_type,
string& eol_text,
string& attrs);
map< string, TAgpLen > TMapStrInt
CRangeCollection< TSeqPos > TRangeColl
map< string, TRangeColl > TMapStrRangeColl
Accession naming patterns; find ranges for consequtive digits.
vector< double > TDoubleVec
Correctly print multiple errors and warnings on consequitive lines; suppress undesired or higly repet...
const string & GetFile(int num)
Detects scaffolds, object boundaries, errors that involve 2 consecutive lines, and is intended as a s...
A container for both the original string column values (Get*() methods) and the values converted to i...
CAgpValidateReader & m_reader
CIdsNotInAgp(CAgpValidateReader &reader)
CAccPatternCounter m_patterns
bool m_last_scaf_start_is_obj
CAccPatternCounter::TDoubleVec * m_prev_id_digits
TMapIntInt m_ln_ev_flags2count
pair< TObjSet::iterator, bool > TObjSetResult
pair< string, CCompSpans > TCompIdSpansPair
int m_last_scaf_start_line
pair< TAgpPos, int > TPairIntInt
IAgpRowOutput * m_row_output
pair< TMapIntInt::iterator, bool > TMapIntIntResult
map< int, int > TMapIntInt
string m_prev_component_id
int m_SingleCompObjects_withGaps
TAgpLen m_expected_obj_len
map< string, CCompSpans > TCompId2Spans
int m_componentsInLastObject
int m_SingleCompScaffolds
int m_SingleCompScaffolds_withGaps
CAccPatternCounter m_objNamePatterns
int m_componentsInLastScaffold
TMapIntInt m_Ngap_ln2count
TCompId2Spans m_CompId2Spans
CValuesCount m_TypeCompCnt
TMapStrRangeColl * m_comp2range_coll
CAccPatternCounter::TDoubleVec * m_obj_id_digits
int m_last_scaf_start_file
TMapIntInt m_Ugap_ln2count
TAgpPos m_prev_component_end
pair< iterator, TAgpPos > TCheckSpan
CCompSpans(const CCompVal &src)
void init(CAgpRow &row, int line_num_arg)
string ToString(CAgpErrEx *agpErrEx) const
pair< TMapStrInt::iterator, bool > TMapStrIntResult
vector< value_type * > TValPtrVec
virtual void SaveRow(const string &s, CRef< CAgpRow > row, TRangeColl *runs_of_Ns)=0
Output the count as text or as xml.
void Print(const CCompactSAMApplication::AlignInfo &ai)
Include a standard set of the NCBI C++ Toolkit most basic headers.
std::ofstream out("events_result.xml")
main entry point for tests
static unsigned int line_num
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
static string IntToString(int value, TNumToStringFlags flags=0, int base=10)
Convert int to string.
#define NCBI_XOBJREAD_EXPORT
static const char label[]
double value_type
The numeric datatype used by the parser.
static SLJIT_INLINE sljit_ins msg(sljit_gpr r, sljit_s32 d, sljit_gpr x, sljit_gpr b)
#define row(bind, expected)