SeqAn3

Contains the mask alphabet and functionality for creating masked compositions. More...

Collaboration diagram for Mask:

Classes

class  seqan3::mask
 Implementation of a masked alphabet to be used for cartesian compositions. More...
 
class  seqan3::masked< sequence_alphabet_t >
 Implementation of a masked composition, which extends a given alphabet with a mask. More...
 

Detailed Description

Contains the mask alphabet and functionality for creating masked compositions.

Introduction
Masks are useful as cartesian compositions when one wants to create a masked alphabet with don't care positions, but does not want to use the seqan3::dna15 N or seqan3::aa27 X because of loss of information. It will instead mark the specified characters as masked, and display them as lowercase representations when printed.
There are two types of masking: "hard-masking" which converts to the UNKNOWN character and "soft-masking", which is visualised by using lower-case instead of upper-case. However because regular nucleotide and aminoacid alphabets discard case on assignment, one needs to create additional alphabets to preserve this information (if desired).
This alphabet in itself is not useful to users directly, but instead the composition seqan3::masked may be used to transform another alphabet into a new alphabet that can represent the original alphabet plus masking information.