source: branches/stable/PARSIMONY/pars_main.hxx

Last change on this file was 16880, checked in by westram, 6 years ago
  • reintegrates 'multicore' into 'trunk'
    • derive sequence classes able to be combined from new class AP_combinableSeq
      • elim dummy functions from rest of hierarchy
    • implements non-writing combine for add-species (speedup: 25-35%)
    • introduce type Mutations ⇒ uses long everywhere (before mostly, but not always used float)
    • allows use of futures
      • nucleotide combine is able to calculate async (disabled via define atm → NEVER_COMBINE_ASYNC; needs more work on calling algorithm)
  • adds: log:branches/multicore@16769:16879
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.5 KB
Line 
1// =============================================================== //
2//                                                                 //
3//   File      : pars_main.hxx                                     //
4//   Purpose   :                                                   //
5//                                                                 //
6//   Institute of Microbiology (Technical University Munich)       //
7//   http://www.arb-home.de/                                       //
8//                                                                 //
9// =============================================================== //
10
11#ifndef PARS_MAIN_HXX
12#define PARS_MAIN_HXX
13
14#ifndef PARS_DTREE_HXX
15#include "pars_dtree.hxx"
16#endif
17
18#define MIN_SEQUENCE_LENGTH 20
19
20class WeightedFilter;
21class AP_tree_nlen;
22
23struct KL_Settings;
24
25class ArbParsimony {
26    AWT_graphic_parsimony *tree;
27
28public:
29    ArbParsimony() : tree(NULp) {}
30
31    AWT_graphic_parsimony *get_tree() const { return tree; }
32
33    DEFINE_READ_ACCESSORS(AP_tree_nlen*, get_root_node, get_tree()->get_root_node());
34
35    void generate_tree(WeightedFilter *pars_weighted_filter);
36    void set_tree(AWT_graphic_parsimony *tree_);
37
38    void optimize_tree(AP_tree_nlen *at, const KL_Settings& settings, arb_progress& progress);
39    void kernighan_optimize_tree(AP_tree_nlen *at, const KL_Settings& settings, const Mutations *pars_global_start, bool dumpPerf);
40};
41
42void PARS_map_viewer(GBDATA *gb_species, AD_MAP_VIEWER_TYPE vtype);
43
44#else
45#error pars_main.hxx included twice
46#endif // PARS_MAIN_HXX
Note: See TracBrowser for help on using the repository browser.