bool FASTA_format::get_seq(vector<char>& id, vector<Letter>& seq, Compressed_istream & s) const { if (!have_char(s, '>')) return false; id.clear(); seq.clear(); copy_line(s, id, Raw_text()); copy_until(s, '>', seq); return true; }
bool FASTQ_format::get_seq(vector<char>& id, vector<Letter>& seq, Compressed_istream & s) const { if (!have_char(s, '@')) return false; id.clear(); seq.clear(); copy_line(s, id, Raw_text()); copy_line(s, seq, Sequence_data()); skip_char(s, '+'); skip_line(s); skip_line(s); return true; }
void squeezz1(char s[], char t[], char tmp[]) { int i, k; k = 0; for (i = 0; s[i] != '\0'; i++) { if (have_char(s[i], t)) ; else tmp[k++] = s[i]; } tmp[k] = '\0'; }
void squeeze(char s[], char t[]) { int i, j; i = j = 0; for(i = 0; s[i]!='\0'; ++i) { if (have_char(s[i], t)) s[i--] = s[++j]; else j = i; } s[j] = '\0'; }