15 //unsigned LY, LN, LA, LD;
\r
16 //unsigned RY, RN, RA, RD;
\r
17 double PctIdQT, PctIdQA, PctIdQB, PctIdQM, PctIdAB;
\r
30 unsigned CS_LY, CS_LN, CS_LA, CS_RY, CS_RN, CS_RA;
\r
50 //LY = LN = LA = LD = UINT_MAX;
\r
51 //RY = RN = RA = RD = UINT_MAX;
\r
52 ColLo = ColHi = QXLo = QXHi = ColXLo = ColXHi = UINT_MAX;
\r
53 CS_LY = CS_LN = CS_LA = CS_RY = CS_RN = CS_RA = UINT_MAX;
\r
54 PctIdQT = PctIdQA = PctIdQB = PctIdQM = PctIdAB = -1.0;
\r
58 AbQ = AbA = AbB = -1.0f;
\r
63 return Score >= opt_minh && Div >= opt_mindiv && CS_LY >= opt_mindiffs && CS_RY >= opt_mindiffs;
\r
68 Log("@L %c ", yon(Score >= 1.0 && Div >= 1.0));
\r
69 Log(" %.4f", Score);
\r
70 Log(" LY %u LN %u LA %u", CS_LY, CS_LN, CS_LA);
\r
71 Log(" RY %u RN %u RA %u", CS_RY, CS_RN, CS_RA);
\r
72 Log(" Div %.1f%%", Div);
\r
73 Log(" Q=%s", QLabel.c_str());
\r
74 Log(" A=%s", ALabel.c_str());
\r
75 Log(" B=%s", BLabel.c_str());
\r
76 Log(" QA %.1f%% QB=%.1f%% AB=%.1f%% QM=%.1f%%", PctIdQA, PctIdQB, PctIdAB, PctIdQM);
\r
80 bool operator<(const ChimeHit2 &rhs) const
\r
82 if (Score == rhs.Score)
\r
83 return Div > rhs.Div;
\r
84 return Score > rhs.Score;
\r
88 static inline bool isacgt(char c)
\r
90 return c == 'A' || c == 'C' || c == 'G' || c == 'T';
\r
93 static bool inline isgap(char c)
\r
95 return c == '-' || c == '.';
\r
98 void GetChunkInfo(unsigned L, unsigned &Length, vector<unsigned> &Los);
\r
99 float GetAbFromLabel(const string &Label);
\r
100 void WriteChimeHitCS(FILE *f, const ChimeHit2 &Hit);
\r
101 void WriteChimeHit(FILE *f, const ChimeHit2 &Hit);
\r
102 void WriteChimeFileHdr(FILE *f);
\r