23 unparsedArguments_.clear();
26 unique_ptr<ISequence> iSeq;
29 iSeq.reset(
new Mase());
31 else if (format ==
"Phylip")
33 bool sequential =
true, extended =
true;
36 if (order ==
"sequential")
38 else if (order ==
"interleaved")
41 throw Exception(
"BppOAlignmentReaderFormat::read. Invalid argument 'order' for phylip format: " + order);
44 if (type ==
"extended")
48 if (
split ==
"spaces")
50 else if (
split ==
"tab")
53 throw Exception(
"BppOAlignmentReaderFormat::read. Invalid argument 'split' for phylip format: " +
split);
55 else if (type ==
"classic")
58 throw Exception(
"BppOAlignmentReaderFormat::read. Invalid argument 'type' for phylip format: " + type);
60 iSeq.reset(
new Phylip(extended, sequential, 100,
split));
62 else if (format ==
"Fasta")
66 iSeq.reset(
new Fasta(100,
true, extended, strictNames));
68 else if (format ==
"Clustal")
70 unsigned int extraSpaces = ApplicationTools::getParameter<unsigned int>(
"extraSpaces", unparsedArguments_, 0,
"",
true, warningLevel_);
71 iSeq.reset(
new Clustal(
true, extraSpaces));
73 else if (format ==
"Dcse")
75 iSeq.reset(
new DCSE());
77 else if (format ==
"GenBank")
81 else if (format ==
"Nexus")
87 throw IOException(
"Sequence format '" + format +
"' unknown.");
The clustal sequence file format.
Support for the Dedicated Comparative Sequence Editor format.
The fasta sequence file format.
The GenBank sequence file format.
The mase sequence file format.
The Nexus format reader for sequences.
std::vector< std::string > split(const std::string &s, std::size_t n)
This alphabet is used to deal NumericAlphabet.