Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
CcdLoopClosureMover.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 src/protocols/loops/loop_closure/ccd/CcdLoopClosureMover.hh
11 /// @brief header file for CcdLoopClosureMover protocol
12 /// @detailed
13 /// Contains currently: Classic Abinitio
14 ///
15 ///
16 /// @author Oliver Lange
17 
18 
19 #ifndef INCLUDED_protocols_loops_loop_closure_ccd_CcdLoopClosureMover_hh
20 #define INCLUDED_protocols_loops_loop_closure_ccd_CcdLoopClosureMover_hh
21 
22 // Unit Headers
24 
25 // Package Headers
26 // AUTO-REMOVED #include <protocols/loops/Loops.hh>
27 
28 // Project Headers
29 #include <core/pose/Pose.fwd.hh>
31 #include <protocols/moves/Mover.hh>
32 
33 // ObjexxFCL Headers
34 
35 // Utility headers
36 #include <core/types.hh>
37 #include <utility/pointer/ReferenceCount.hh>
38 
39 //// C++ headers
40 // AUTO-REMOVED #include <cstdlib>
41 #include <string>
42 // AUTO-REMOVED #include <vector>
43 
44 #include <protocols/loops/Loop.hh>
45 #include <utility/vector1.hh>
46 
47 
48 namespace protocols {
49 namespace loops {
50 namespace loop_closure {
51 namespace ccd {
52 
53 /// Move these forward declarations to CcdLoopClosureMover.fwd.hh
54 class CcdLoopClosureMover;
57 
58 //wrapper for fast_ccd_loop_closure
60 public:
62  Loop const& loop_def,
64  );
65 
67 
68  void set_max_rama_score_increase( core::Real input_max_rama_score_increase );
69 
71  core::Real input_max_delta_helix,
72  core::Real input_max_delta_strand,
73  core::Real input_max_delta_loop );
74 
75  void set_tolerance( core::Real input_tolerance );
76 
77  void set_ccd_cycles( core::Size input_ccd_cycles );
78 
79  void set_bRama_check( bool input_bRama_check );
80 
81  virtual void apply( core::pose::Pose &pose );
82  virtual std::string get_name() const;
83 
85  return forward_deviation_;
86  }
87 
89  return backward_deviation_;
90  }
91 
92  bool success() const {
94  }
95 
96  Loop get_loop() const { return loop_ ;}
97  core::Size get_loop_start() const { return loop_.start(); }
98  core::Size get_loop_stop() const { return loop_.stop(); }
99  core::Size get_loop_cut() const { return loop_.cut(); }
100  core::Size get_loop_size() const { return loop_.size(); }
102  std::string get_loop_extended() const { return ( (loop_.is_extended()) ? ("True") : ("False") );}
104  core::Real get_tolerance() const;
107  std::string bRama_check() const { return ( (bRama_check_) ? ("True") : ("False") ); }
109  friend std::ostream &operator<< ( std::ostream &os, CcdLoopClosureMover const &mover );
110 
111 private:
119 
122 
127 
129 };
130 
131 class CcdMover;
134 
135 class CcdMover : public moves::Mover {
136 public:
137  CcdMover(
138  Loop const& loop_def,
140  );
141 
142  ~CcdMover();
143 
144  virtual void apply( core::pose::Pose &pose );
145  virtual std::string get_name() const;
146 
147 private:
151 };
152 
153 } // namespace ccd
154 } // namespace loop_closure
155 } // namespace loops
156 } // namespace protocols
157 
158 #endif //INCLUDED_protocols_loops_loop_closure_ccd_CcdLoopClosureMover_hh