defines.h File Reference

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
}
 

Macro Definition Documentation

◆ AUTHORS

#define AUTHORS   "2009-2019. Víctor Fernández-Rodríguez, Salvador Capella-Gutierrez and Toni Gabaldón."

Definition at line 36 of file defines.h.

◆ BUILD

#define BUILD   "2019-05-08"

Definition at line 33 of file defines.h.

◆ DELIMITERS

#define DELIMITERS   " \t\n"

Definition at line 41 of file defines.h.

◆ GAPPYOUT

#define GAPPYOUT   1

Definition at line 38 of file defines.h.

◆ HTMLBLOCKS

#define HTMLBLOCKS   120

Definition at line 45 of file defines.h.

◆ OTH2DELIMITERS

#define OTH2DELIMITERS   " \n,:;"

Definition at line 43 of file defines.h.

◆ OTHDELIMITERS

#define OTHDELIMITERS   " \t\n,:"

Definition at line 42 of file defines.h.

◆ PHYLIPDISTANCE

#define PHYLIPDISTANCE   10

Definition at line 46 of file defines.h.

◆ REVISION

#define REVISION   "0"

Definition at line 35 of file defines.h.

◆ STRICT

#define STRICT   2

Definition at line 39 of file defines.h.

◆ VERSION

#define VERSION   "2"

Definition at line 34 of file defines.h.

Enumeration Type Documentation

◆ 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

Definition at line 72 of file defines.h.