]> git.donarmstrong.com Git - mothur.git/blob - chimerapintailcommand.h
added citation function to commands
[mothur.git] / chimerapintailcommand.h
1 #ifndef CHIMERAPINTAILCOMMAND_H
2 #define CHIMERAPINTAILCOMMAND_H
3
4 /*
5  *  chimerapintailcommand.h
6  *  Mothur
7  *
8  *  Created by westcott on 4/1/10.
9  *  Copyright 2010 Schloss Lab. All rights reserved.
10  *
11  */
12
13 #include "mothur.h"
14 #include "command.hpp"
15 #include "chimera.h"
16
17
18 /***********************************************************/
19
20 class ChimeraPintailCommand : public Command {
21
22 public:
23
24         ChimeraPintailCommand(string);
25         ChimeraPintailCommand();
26         ~ChimeraPintailCommand(){}
27         
28         vector<string> setParameters();
29         string getCommandName()                 { return "chimera.pintail";             }
30         string getCommandCategory()             { return "Sequence Processing"; }
31         string getHelpString(); 
32         string getCitation() { return "At Least 1 in 20 16S rRNA Sequence Records Currently Held in the Public Repositories is Estimated To Contain Substantial Anomalies' paper by Kevin E. Ashelford 1, Nadia A. Chuzhanova 3, John C. Fry 1, Antonia J. Jones 2 and Andrew J. Weightman 1. http://www.mothur.org/wiki/Chimera.pintail"; }
33
34         
35         int execute(); 
36         void help() { m->mothurOut(getHelpString()); }          
37 private:
38
39         struct linePair {
40                 unsigned long int start;
41                 unsigned long int end;
42                 linePair(unsigned long int i, unsigned long int j) : start(i), end(j) {}
43         };
44
45         vector<int> processIDS;   //processid
46         vector<linePair*> lines;
47         
48         int driver(linePair*, string, string, string);
49         int createProcesses(string, string, string);
50         
51         #ifdef USE_MPI
52         int driverMPI(int, int, MPI_File&, MPI_File&, MPI_File&, vector<unsigned long int>&);
53         #endif
54
55         bool abort, filter;
56         string fastafile, templatefile, consfile, quanfile, maskfile, outputDir, inputDir;
57         int processors, window, increment, numSeqs, templateSeqsLength;
58         Chimera* chimera;
59         vector<string> outputNames;
60         vector<string> fastaFileNames;
61 };
62
63 /***********************************************************/
64
65 #endif
66
67