Provides (semi-)alphabets for representing elements in CIGAR strings. More...
Classes | |
class | seqan3::cigar |
The seqan3::cigar semialphabet pairs a counter with a seqan3::cigar::operation letter. More... | |
Provides (semi-)alphabets for representing elements in CIGAR strings.
CIGAR strings are combinations of count values and CIGAR operations, representing an alignment as a sequence of edit operations. This submodule has two different alphabets. One is the seqan3::cigar::operation alphabet, which is a base seqan3::alphabet implementation. This contains all valid symbols contained in CIGAR strings. The other alphabet is the seqan3::cigar alphabet, which is an alphabet tuple. It combines the seqan3::cigar::operation alphabet with a count value, such that one can represent an entire CIGAR string with a std::vector of seqan3::cigar values.
The following table outlines the valid characters in the seqan3::cigar::operation alphabet.
| OP | Description | |:--:|-------------------------------------------------------------------------------------------------| | M | Alignment match (can be a sequence match or mismatch, used only in basic CIGAR representations) | | I | Insertion to the reference | | D | Deletion from the reference | | N | Skipped region from the reference | | S | Soft clipping (clipped sequences present in seqan3::sam_record::sequence) | | H | Hard clipping (clipped sequences NOT present in seqan3::sam_record::sequence) | | P | Padding (silent deletion from padded reference) | | = | Sequence match | | X | Sequence mismatch