]> git.donarmstrong.com Git - mothur.git/blob - seqsummarycommand.h
added namefile to summary.seqs
[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         vector<string> getRequiredParameters();
22         vector<string> getValidParameters();
23         vector<string> getRequiredFiles();
24         map<string, vector<string> > getOutputFiles() { return outputTypes; }
25         int execute();
26         void help();
27         
28 private:
29         bool abort;
30         string fastafile, outputDir, namefile;
31         int processors;
32         vector<string> outputNames;
33         map<string, vector<string> > outputTypes;
34         map<string, int> nameMap;
35         
36         struct linePair {
37                 unsigned long int start;
38                 unsigned long int end;
39                 linePair(unsigned long int i, unsigned long int j) : start(i), end(j) {}
40         };
41
42         vector<linePair*> lines;
43         vector<int> processIDS;
44         
45         int createProcessesCreateSummary(vector<int>&, vector<int>&, vector<int>&, vector<int>&, vector<int>&, string, string);
46         int driverCreateSummary(vector<int>&, vector<int>&, vector<int>&, vector<int>&, vector<int>&, string, string, linePair*);       
47         int readNames();
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