#include "command.hpp"
#include "trimoligos.h"
+#include "oligos.h"
/**************************************************************************************************/
private:
bool abort, isSFF, pairedOligos;
int tdiffs, bdiffs, pdiffs, sdiffs, ldiffs;
- string sfffile, fastqfile, outputDir, groupfile, file, oligosfile, contactfile, inputfile;
- string libStrategy, libSource, libSelection, libLayout, platform, instrumentModel, fileType;
- string submissionName, lastName, firstName, email, centerName, centerType, description;
- vector<string> outputNames, Groups, revPrimer;
- vector<string> primerNameVector;
- vector<string> barcodeNameVector;
- map<string, string> Group2Barcode;
- map<int, oligosPair> pairedBarcodes;
- map<int, oligosPair> pairedPrimers;
- map<string, int> barcodes;
- map<string, int> primers;
- vector<string> linker;
- vector<string> spacer;
+ 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> >&);