]> git.donarmstrong.com Git - mothur.git/blob - seqsummarycommand.h
added citation function to commands
[mothur.git] / seqsummarycommand.h
1 #ifndef SEQSUMMARYCOMMAND_H
2 #define SEQSUMMARYCOMMAND_H
3
4 /*
5  *  seqcoordcommand.h
6  *  Mothur
7  *
8  *  Created by Pat Schloss on 5/30/09.
9  *  Copyright 2009 Patrick D. Schloss. All rights reserved.
10  *
11  */
12
13 #include "mothur.h"
14 #include "command.hpp"
15
16 class SeqSummaryCommand : public Command {
17 public:
18         SeqSummaryCommand(string);
19         SeqSummaryCommand();
20         ~SeqSummaryCommand(){}
21         
22         vector<string> setParameters();
23         string getCommandName()                 { return "summary.seqs";                        }
24         string getCommandCategory()             { return "Sequence Processing";         }
25         string getHelpString(); 
26         string getCitation() { return "http://www.mothur.org/wiki/Summary.seqs"; }
27         
28         int execute(); 
29         void help() { m->mothurOut(getHelpString()); }          
30 private:
31         bool abort;
32         string fastafile, outputDir, namefile;
33         int processors;
34         vector<string> outputNames;
35         map<string, int> nameMap;
36         
37         struct linePair {
38                 unsigned long int start;
39                 unsigned long int end;
40                 linePair(unsigned long int i, unsigned long int j) : start(i), end(j) {}
41         };
42
43         vector<linePair*> lines;
44         vector<int> processIDS;
45         
46         int createProcessesCreateSummary(vector<int>&, vector<int>&, vector<int>&, vector<int>&, vector<int>&, string, string);
47         int driverCreateSummary(vector<int>&, vector<int>&, vector<int>&, vector<int>&, vector<int>&, string, string, linePair*);       
48
49         #ifdef USE_MPI
50         int MPICreateSummary(int, int, vector<int>&, vector<int>&, vector<int>&, vector<int>&, vector<int>&, MPI_File&, MPI_File&, vector<unsigned long int>&); 
51         #endif
52
53
54 };
55
56 #endif