8 * Created by Pat Schloss on 12/15/08.
9 * Copyright 2008 Patrick D. Schloss. All rights reserved.
11 * A sequence object has three components: i) an accession number / name, ii) the unaligned primary sequence, iii) a
12 * pairwise aligned sequence, and iv) a sequence that is aligned to a reference alignment. This class has methods
13 * to set and get these values for the other classes where they are needed. *
18 //Data Structure for a fasta file.
21 #include "mothurout.h"
23 /**************************************************************************************************/
28 Sequence(string, string);
30 Sequence(istringstream&);
31 //these constructors just set the unaligned string to save space
32 Sequence(string, string, string);
33 Sequence(ifstream&, string);
34 Sequence(istringstream&, string);
37 void setUnaligned(string);
38 void setPairwise(string);
39 void setAligned(string);
41 void reverseComplement();
44 string convert2ints();
48 string getUnaligned();
49 string getInlineSeq();
57 void removeAmbigBases();
58 int getLongHomoPolymer();
60 void printSequence(ostream&);
65 string getSequenceString(ifstream&, int&);
66 string getCommentString(ifstream&);
67 string getSequenceString(istringstream&, int&);
68 string getCommentString(istringstream&);
81 /**************************************************************************************************/