* to set and get these values for the other classes where they are needed. *
*
*/
-using namespace std;
#include "mothur.h"
-
+#include "mothurout.h"
/**************************************************************************************************/
Sequence();
Sequence(string, string);
Sequence(ifstream&);
+ Sequence(istringstream&);
+
+ //these constructors just set the unaligned string to save space
+ Sequence(string, string, string);
+ Sequence(ifstream&, string);
+ Sequence(istringstream&, string);
void setName(string);
void setUnaligned(string);
void setPairwise(string);
void setAligned(string);
void setLength();
+ void reverseComplement();
+ void trim(int);
string convert2ints();
string getName();
string getAligned();
string getPairwise();
string getUnaligned();
- int getLength(); //the greater of the lengths of unaligned and aligned
- int getUnalignLength();
+ int getNumBases();
+ int getStartPos();
+ int getEndPos();
int getAlignLength();
+ int getAmbigBases();
+ void removeAmbigBases();
+ int getLongHomoPolymer();
+ bool getIsAligned();
void printSequence(ostream&);
private:
+ MothurOut* m;
+ void initialize();
+ string getSequenceString(ifstream&);
+ string getCommentString(ifstream&);
+ string getSequenceString(istringstream&);
+ string getCommentString(istringstream&);
string name;
string unaligned;
string aligned;
string pairwise;
- int length;
- int lengthAligned;
+ int numBases;
+ int alignmentLength;
+ bool isAligned;
+ int longHomoPolymer;
+ int ambigBases;
+ int startPos, endPos;
};
/**************************************************************************************************/