1 #ifndef PAIRWISESEQSCOMMAND_H
2 #define PAIRWISESEQSCOMMAND_H
5 * pairwiseseqscommand.h
8 * Created by westcott on 10/20/10.
9 * Copyright 2010 Schloss Lab. All rights reserved.
14 #include "command.hpp"
15 #include "database.hpp"
16 #include "alignment.hpp"
17 #include "validcalculator.h"
19 #include "sequencedb.h"
21 class PairwiseSeqsCommand : public Command {
24 PairwiseSeqsCommand(string);
25 PairwiseSeqsCommand();
26 ~PairwiseSeqsCommand();
27 vector<string> getRequiredParameters();
28 vector<string> getValidParameters();
29 vector<string> getRequiredFiles();
30 map<string, vector<string> > getOutputFiles() { return outputTypes; }
39 map<int, int> processIDS; //end line, processid
40 vector<linePair*> lines;
41 map<string, vector<string> > outputTypes;
47 void createProcesses(string);
48 int driver(int, int, string, float);
49 int driver(int, int, string, string);
52 int driverMPI(int, int, MPI_File&, float);
53 int driverMPI(int, int, string, unsigned long int&);
54 int driverMPI(int, int, string, unsigned long int&, string);
57 string fastaFileName, align, calc, outputDir, output;
58 float match, misMatch, gapOpen, gapExtend, cutoff;
60 vector<string> fastaFileNames, Estimators;
61 vector<string> outputNames;
63 bool abort, countends, compress;