Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ParetoOptMutationMover.hh
Go to the documentation of this file.
1 // -*- mode:c++;tab-width:2;indent-tabs-mode:t;show-trailing-whitespace:t;rm-trailing-spaces:t -*-
2 // vi: set ts=2 noet:
3 //
4 // (c) Copyright Rosetta Commons Member Institutions.
5 // (c) This file is part of the Rosetta software suite and is made available under license.
6 // (c) The Rosetta software is developed by the contributing members of the Rosetta Commons.
7 // (c) For more information, see http://www.rosettacommons.org. Questions about this can be
8 // (c) addressed to University of Washington UW TechTransfer, email: license@u.washington.edu.
9 
10 /// @file protocols/design_opt/ParetoOptMutationMover.hh
11 /// @author Chris King (chrisk1@uw.edu)
12 
13 #ifndef INCLUDED_protocols_design_opt_ParetoOptMutationMover_hh
14 #define INCLUDED_protocols_design_opt_ParetoOptMutationMover_hh
17 #include <core/types.hh>
18 #include <core/pose/Pose.hh>
19 #include <utility/tag/Tag.fwd.hh>
21 #include <protocols/moves/Mover.hh>
26 
27 #include <utility/vector1.hh>
28 
30 
31 namespace protocols {
32 namespace design_opt{
33 
35 {
36 public:
38 public:
47  bool dump_pdb = false,
48  bool dump_table = false,
49  bool parallel = false,
50  bool stop_before_condition = false,
51  bool skip_best_check = false,
52  bool rtmin = false,
53  bool shuffle_order = false,
55  );
56 
57  void apply( Pose & pose );
59  virtual std::string get_name() const;
61 
63  void add_filter(
65  std::string const sample_type,
66  core::Real filter_delta
67  );
68  virtual ~ParetoOptMutationMover();
70  void task_factory( core::pack::task::TaskFactoryOP task_factory );
76  void relax_mover( protocols::moves::MoverOP relax_mover );
77  bool dump_pdb() const;
78  void dump_pdb( bool const dump_pdb );
79  bool dump_table() const;
80  void dump_table( bool const dump_table );
81  bool parallel() const;
82  void parallel( bool const parallel );
84  void sample_types( utility::vector1< std::string > const sample_types );
86  void filter_deltas( utility::vector1< core::Real > const filter_deltas );
89  bool stop_before_condition() const;
91  bool skip_best_check() const;
92  void skip_best_check( bool const skip_best_check );
95  bool rtmin() const;
96  void rtmin( bool const b );
97  bool shuffle_order() const;
98  void shuffle_order( bool const b );
99 
100 private:
106  bool dump_pdb_;
108  bool parallel_;
109  protocols::filters::FilterOP stopping_condition_; // dflt NULL ; if defined, stops greedy optimization when the filter's apply evaluates to true;
111  std::pair< core::chemical::AA, utility::vector1< core::Real > > > > > seqpos_aa_vals_vec_;
116  bool rtmin_; //dflt false; should we rtmin after packing?
117  core::Real design_shell_;//dflt -1 to only allow pointmutations, higher allows suroundings to be designed as well
119  bool shuffle_order_; //randomize the order that mutations are attempted?
120 };
121 
122 
123 } // design_opt
124 } // protocols
125 
126 
127 #endif /*INCLUDED_protocols_design_opt_ParetoOptMutationMover_HH*/