#define Mothur_sracommand_h
#include "command.hpp"
-
+#include "trimoligos.h"
+#include "oligos.h"
/**************************************************************************************************/
void help() { m->mothurOut(getHelpString()); }
private:
- bool abort;
+ bool abort, isSFF, pairedOligos;
int tdiffs, bdiffs, pdiffs, sdiffs, ldiffs;
- string sfffile, fastqfile, platform, outputDir, groupfile, file, oligosfile;
- vector<string> outputNames;
-
- int readFile(vector<string>&);
- int parseSffFile(vector<string>&);
- int parseFastqFile(vector<string>&);
+ string sfffile, fastqfile, outputDir, file, oligosfile, contactfile, inputfile, mimarksfile;
+ string libStrategy, libSource, libSelection, libLayout, platform, instrumentModel, fileType, dataType, checkorient;
+ string submissionName, lastName, firstName, email, centerName, centerType, description, website, orientation, packageType;
+ string projectName, grantId, grantTitle, grantAgency, projectTitle, inputDir;
+ vector<string> outputNames, Groups;
+ map<string, vector<string> > Group2Barcode;
+ map<string, vector<string> > Group2Primer;
+ map<string, string> Group2Organism;
+ map<string, map<string, string> > mimarks; //group -> <field -> valueForGroup> ex. F003D001 -> <lat_lon -> 42.282026 -83.733850>
+ set<string> uniqueNames;
+
+ bool checkCasesInstrumentModels(string&);
+ bool checkCasesPlatforms(string&);
+ bool checkCasesLibStrategy(string&);
+ bool checkCasesLibSource(string&);
+ bool checkCasesLibSelection(string&);
+ bool checkCasesDataType(string&);
+ bool sanityCheckMiMarksGroups();
+ int readFile(map<string, vector<string> >&);
+ int readContactFile();
+ int readMIMarksFile();
+ int readOligos();
+ int parseSffFile(map<string, vector<string> >&);
+ int parseFastqFile(map<string, vector<string> >&);
+ int checkGroups(map<string, vector<string> >&);
+ int mapGroupToFile(map<string, vector<string> >&, vector<string>);
+ string reverseOligo(string oligo);
};