struct CommonHeader {
unsigned int magicNumber;
string version;
- unsigned long int indexOffset;
+ unsigned long long indexOffset;
unsigned int indexLength;
unsigned int numReads;
unsigned short headerLength;
public:
SffInfoCommand(string);
SffInfoCommand();
- ~SffInfoCommand();
- vector<string> getRequiredParameters();
- vector<string> getValidParameters();
- vector<string> getRequiredFiles();
- map<string, vector<string> > getOutputFiles() { return outputTypes; }
- int execute();
- void help();
+ ~SffInfoCommand(){}
+
+ vector<string> setParameters();
+ string getCommandName() { return "sffinfo"; }
+ string getCommandCategory() { return "Sequence Processing"; }
+ string getHelpString();
+ string getCitation() { return "http://www.mothur.org/wiki/Sffinfo"; }
+ string getDescription() { return "extract sequences reads from a .sff file"; }
+
+ int execute();
+ void help() { m->mothurOut(getHelpString()); }
private:
string sffFilename, sfftxtFilename, outputDir, accnosName;
bool abort, fasta, qual, trim, flow, sfftxt, hasAccnos;
int mycount;
set<string> seqNames;
- map<string, vector<string> > outputTypes;
-
+
//extract sff file functions
int extractSffInfo(string, string);
int readCommonHeader(ifstream&, CommonHeader&);
int printQualSeqData(ofstream&, seqRead&, Header&);
int readAccnosFile(string);
int parseSffTxt();
-
+ bool sanityCheck(Header&, seqRead&);
+
//parsesfftxt file functions
int parseHeaderLineToInt(ifstream&);
vector<unsigned short> parseHeaderLineToFloatVector(ifstream&, int);