]> git.donarmstrong.com Git - mothur.git/blob - sracommand.h
added mothurgetpid function. fixed bug with align.seqs related to g++ 4.8 change...
[mothur.git] / sracommand.h
1 //
2 //  sracommand.h
3 //  Mothur
4 //
5 //  Created by SarahsWork on 10/28/13.
6 //  Copyright (c) 2013 Schloss Lab. All rights reserved.
7 //
8
9 #ifndef Mothur_sracommand_h
10 #define Mothur_sracommand_h
11
12 #include "command.hpp"
13 #include "trimoligos.h"
14
15 /**************************************************************************************************/
16
17 class SRACommand : public Command {
18 public:
19     SRACommand(string);
20     SRACommand();
21     ~SRACommand(){}
22     
23     vector<string> setParameters();
24     string getCommandName()                     { return "sra";                 }
25     string getCommandCategory()         { return "Sequence Processing";         }
26     
27     string getOutputPattern(string);
28     
29         string getHelpString();
30     string getCitation() { return "http://www.mothur.org/wiki/sra"; }
31     string getDescription()             { return "create a Sequence Read Archive / SRA"; }
32     
33     int execute();
34     void help() { m->mothurOut(getHelpString()); }
35     
36 private:
37     bool abort, isSFF, pairedOligos;
38     int tdiffs, bdiffs, pdiffs, sdiffs, ldiffs;
39     string sfffile, fastqfile, outputDir, groupfile, file, oligosfile, contactfile, inputfile;
40     string libStrategy, libSource, libSelection, libLayout, platform, instrumentModel, fileType;
41     string submissionName, lastName, firstName, email, centerName, centerType, description;
42     vector<string> outputNames, Groups, revPrimer;
43     vector<string> primerNameVector;
44     vector<string> barcodeNameVector;
45     map<string, string> Group2Barcode;
46     map<int, oligosPair> pairedBarcodes;
47     map<int, oligosPair> pairedPrimers;
48         map<string, int> barcodes;
49         map<string, int> primers;
50     vector<string>  linker;
51     vector<string>  spacer;
52
53     bool checkCasesInstrumentModels(string&);
54     bool checkCasesPlatforms(string&);
55     bool checkCasesLibStrategy(string&);
56     bool checkCasesLibSource(string&);
57     bool checkCasesLibSelection(string&);
58     int readFile(map<string, vector<string> >&);
59     int readContactFile();
60     int readOligos();
61     int parseSffFile(map<string, vector<string> >&);
62     int parseFastqFile(map<string, vector<string> >&);
63     int checkGroups(map<string, vector<string> >&);
64     int mapGroupToFile(map<string, vector<string> >&, vector<string>);
65     string reverseOligo(string oligo);
66     
67 };
68
69 /**************************************************************************************************/
70
71
72
73 #endif