Go to the source code of this file.
Macros | |
#define | BUILD "2019-05-08" |
#define | VERSION "2" |
#define | REVISION "0" |
#define | AUTHORS "2009-2019. Víctor Fernández-Rodríguez, Salvador Capella-Gutierrez and Toni Gabaldón." |
#define | GAPPYOUT 1 |
#define | STRICT 2 |
#define | DELIMITERS " \t\n" |
#define | OTHDELIMITERS " \t\n,:" |
#define | OTH2DELIMITERS " \n,:;" |
#define | HTMLBLOCKS 120 |
#define | PHYLIPDISTANCE 10 |
Enumerations | |
enum | SequenceTypes { NotDefined = 0u, DNA = 1u << 1u, RNA = 1u << 2u, AA = 1u << 3u, DEG = 1u << 4u } |
#define AUTHORS "2009-2019. Víctor Fernández-Rodríguez, Salvador Capella-Gutierrez and Toni Gabaldón." |
enum SequenceTypes |
Binary Tag Enum.
Alan Zucconi has a great explanation of these.
This enum contains the tags needed to obtain sequence types by composition of its main elements.
To obtain a composed alignment type you can bitwise OR the tags: ComposedTag = SequenceTypes::DNA | SequenceTypes::DEG
You can Fuzzy and Exact check both simple and composed tags
To FUZZY check an alignment type you can:
alig -> getAlignmentType() & SequenceTypes::DNA
This will return true if the alig type is DNA, ignoring the rest of tags.
alig -> getAlignmentType() & (SequenceTypes::DNA | SequenceTypes::DEG)
This will return true if the alig type is DNA Deg, ignoring the rest of tags.
To EXACT check an alignment type you can:
alig -> getAlignmentType() == SequenceTypes::DNA
This will return true if the alig type is only DNA. DNA Deg would result in false.
alig -> getAlignmentType() == (SequenceTypes::DNA | SequenceTypes::DEG)
This will return true if the alig is type DNA Deg, additional tags (like SequenceTypes::DNA | SequenceTypes::RNA | SequenceTypes::DEG) would resut in false.
Enumerator | |
---|---|
NotDefined | = 0 |
DNA | 1 << 1 = 2 |
RNA | 1 << 2 = 4 |
AA | 1 << 3 = 8 |
DEG | 1 << 4 = 16 |