1 #include "Alignment.h"
2 #include "Parameters.h"
3 #include "Debug.h"
4 #include "Util.h"
5 #include "MMseqsMPI.h"
6
7 #ifdef OPENMP
8 #include <omp.h>
9 #endif
10
11
align(int argc,const char ** argv,const Command & command)12 int align(int argc, const char **argv, const Command& command) {
13 MMseqsMPI::init(argc, argv);
14
15 Parameters& par = Parameters::getInstance();
16 par.overrideParameterDescription(par.PARAM_ALIGNMENT_MODE, "How to compute the alignment:\n0: automatic\n1: only score and end_pos\n2: also start_pos and cov\n3: also seq.id", NULL, 0);
17 par.parseParameters(argc, argv, command, true, 0, MMseqsParameter::COMMAND_ALIGN);
18
19 Alignment aln(par.db1, par.db2,
20 par.db3, par.db3Index,
21 par.db4, par.db4Index, par, false);
22
23 Debug(Debug::INFO) << "Calculation of alignments\n";
24
25 #ifdef HAVE_MPI
26 aln.run(MMseqsMPI::rank, MMseqsMPI::numProc);
27 #else
28 aln.run();
29 #endif
30
31 return EXIT_SUCCESS;
32 }
33
lcaalign(int argc,const char ** argv,const Command & command)34 int lcaalign(int argc, const char **argv, const Command& command) {
35 MMseqsMPI::init(argc, argv);
36
37 Parameters& par = Parameters::getInstance();
38 par.overrideParameterDescription(par.PARAM_ALIGNMENT_MODE, "How to compute the alignment:\n0: automatic\n1: only score and end_pos\n2: also start_pos and cov\n3: also seq.id", NULL, 0);
39 par.parseParameters(argc, argv, command, true, 0, MMseqsParameter::COMMAND_ALIGN);
40
41 Alignment aln(par.db1, par.db2,
42 par.db3, par.db3Index,
43 par.db4, par.db4Index, par, true);
44
45 #ifdef HAVE_MPI
46 aln.run(MMseqsMPI::rank, MMseqsMPI::numProc);
47 #else
48 aln.run();
49 #endif
50
51 return EXIT_SUCCESS;
52 }
53
54
55