1 #ifndef FILTERSEQSCOMMAND_H
\r
2 #define FILTERSEQSCOMMAND_H
\r
5 * filterseqscommand.h
\r
8 * Created by Thomas Ryabin on 5/4/09.
\r
9 * Copyright 2009 Schloss Lab UMASS Amherst. All rights reserved.
\r
13 #include "command.hpp"
\r
14 #include "filters.h"
\r
17 class FilterSeqsCommand : public Command {
\r
20 FilterSeqsCommand(string);
\r
21 ~FilterSeqsCommand() {};
\r
29 linePair(long int i, long int j) : start(i), num(j) {}
\r
31 vector<linePair*> lines;
\r
32 vector<int> processIDS;
\r
34 string vertical, filter, fasta, hard, outputDir, filterFileName;
\r
35 vector<string> fastafileNames;
\r
36 int alignmentLength, processors;
\r
37 vector<int> bufferSizes;
\r
38 vector<string> outputNames;
\r
45 string createFilter();
\r
46 int filterSequences();
\r
47 int createProcessesCreateFilter(Filters&, string);
\r
48 int createProcessesRunFilter(string, string);
\r
49 int driverRunFilter(string, string, string, linePair*);
\r
50 int driverCreateFilter(Filters& F, string filename, linePair* line);
\r
52 int driverMPIRun(int, int, MPI_File&, MPI_File&, vector<long>&);
\r
53 int MPICreateFilter(int, int, Filters&, MPI_File&, vector<long>&);
\r
55 int setLines(string);
\r