Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SmallMinCCDTrial.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
6 // (c) under license. The Rosetta software is developed by the contributing
7 // (c) members of the Rosetta Commons. For more information, see
8 // (c) http://www.rosettacommons.org. Questions about this can be addressed to
9 // (c) University of Washington UW TechTransfer, email:license@u.washington.edu
10 
11 /// @file protocols/loops/loop_mover/refine/SmallMinCCDTrial.hh
12 /// @brief Perform a small move followed CCD closure, packing and minimization
13 /// @detailed
14 ///
15 /// @author Brian D. Weitzner ( brian.weitzner@gmail.com )
16 
17 
18 #ifndef INCLUDED_protocols_loops_loop_mover_refine_SmallMinCCDTrial_HH
19 #define INCLUDED_protocols_loops_loop_mover_refine_SmallMinCCDTrial_HH
20 
21 // Unit headers
24 
25 // Package headers
26 
27 // Project headers
31 
32 // Utility headers
33 
34 // C++ headers
35 #include <iostream>
36 
37 namespace protocols {
38 namespace loops {
39 namespace loop_mover {
40 namespace refine {
41 
43 public: // boiler plate / virtuals
44  // default constructor
46 
47  // copy constructor
48  SmallMinCCDTrial( SmallMinCCDTrial const & rhs );
49 
50  // assignment operator
52 
53  // destructor
54  virtual ~SmallMinCCDTrial();
55 
56  // constructor with arguments
62  );
63 
64  virtual void apply( Pose & );
65  virtual std::string get_name() const;
66 
67  virtual protocols::moves::MoverOP clone() const;
69 
70  ///@brief This mover retains state such that a fresh version is needed if the input Pose is about to change
71  virtual bool reinitialize_for_new_input() const;
72 
73  /// @brief Associates relevant options with the LoopRefineInnerCycle class
74  static void register_options();
75 
76 public: // printing methods
77  virtual void show( std::ostream & out=std::cout );
78  friend std::ostream & operator<<(std::ostream& out, SmallMinCCDTrial const & small_min_ccd_trial );
79 
80 public: // class-specific public methods
82  void set_number_of_moves( core::Size nmoves );
83 
86 
87 private: // methods
88  void setup_objects( Pose const & pose );
89  void init();
91  void init_options();
92 
94 
95 private: // data
99 
100 private: // Excessive debugging output
101  void debug_zero( Pose & pose );
102  void debug_one( Pose & pose );
103  void debug_two( Pose & pose );
104  void debug_three( Pose & pose );
105  void debug_four( Pose & pose );
106  void debug_five( Pose & pose );
107 
108 }; // class SmallMinCCDTrial
109 
110 } // namespace refine
111 } // namespace loop_mover
112 } // namespace loops
113 } // namespace protocols
114 
115 #endif // INCLUDED_protocols_loops_loop_mover_refine_SmallMinCCDTrial_HH