Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SymDockingHiRes.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 // This file is made available under the Rosetta Commons license.
5 // See http://www.rosettacommons.org/license
6 // (C) 199x-2007 University of Washington
7 // (C) 199x-2007 University of California Santa Cruz
8 // (C) 199x-2007 University of California San Francisco
9 // (C) 199x-2007 Johns Hopkins University
10 // (C) 199x-2007 University of North Carolina, Chapel Hill
11 // (C) 199x-2007 Vanderbilt University
12 
13 /// @file docking_initialization_protocols
14 /// @brief initialization protocols for docking
15 /// @detailed
16 /// @author Ingemar Andre
17 
18 
19 #ifndef INCLUDED_protocols_symmetric_docking_SymDockingHiRes_hh
20 #define INCLUDED_protocols_symmetric_docking_SymDockingHiRes_hh
21 
22 // Package headers
26 #include <core/pose/Pose.fwd.hh>
27 #include <core/types.hh>
29 
30 #include <protocols/moves/Mover.hh>
36 // AUTO-REMOVED #include <protocols/loops/Loops.fwd.hh>
37 
38 // For symmetry
41 
42 #include <string>
43 
44 #include <utility/vector1.hh>
45 
46 
47 namespace protocols {
48 namespace symmetric_docking {
49 
51 {
52  typedef core::Real Real;
55 
56 
57 public:
58 
59  // default constructor
61 
62  /* // constructor with arguments
63  SymDockingHiRes(
64  core::scoring::ScoreFunctionOP scorefxn_in
65  ); */
66 
67  // constructor with arguments
70  core::scoring::ScoreFunctionOP scorefxn_pack_in
71  );
72 
73  moves::MoverOP clone() const;
74 
75  virtual ~SymDockingHiRes();
76 
77  void set_default( core::pose::Pose & pose );
79  void set_min_type( std::string min_type_in );
80  void set_repack( bool repack_switch);
81  void set_protocol( core::pose::Pose & pose );
82 
83  void set_dock_min_protocol();
86 
87  //void define_loops( core::pose::Pose const & pose, loops::Loops & loop_set, Real & interface_dist );
88 
90 
91  // @brief turns on design of partner2 during docking. Experimental!
92  void design( bool const des );
93  bool design() const;
94 
95  // protocol functions
96  virtual void apply( core::pose::Pose & pose );
97  virtual std::string get_name() const;
98 
99  //void call_pack(); // Undefined function, commenting out to make python bindginds
100 
101  //void dock_mcm_protocol( core::pose::Pose & pose );
102 
103  /*void classic_mcm_protocol(
104  core::pose::Pose & pose,
105  core::scoring::ScoreFunctionCOP scorefxn,
106  protocols::moves::MonteCarloOP monteCarlo,
107  core::Size num_cycles,
108  core::Size repack_every_Nth
109  ); */
110 
113 
114 private:
115  // protocol stuff
124 
125  // docking
127  bool chi_, bb_;
128  bool repack_switch_; // master switch to turn repacking during docking on/off. Only makes sense if repack_period > 0
129  bool design_;
130  bool rtmin_, scmin_;
131 
132  // packing
133  /// @brief utility function to set up packer options for internal task factory
134  void setup_packing( core::pose::Pose & pose );
135  /// @brief tf_ will be used internally by dockinghires. It will be initialized through the init_task_factory_ below
137  /// @brief task_factory_ is used by outside movers to set the internal taskfactory. Does not actually override internal TF!
138  /// init_task_factory_ instead acts as a starting point and the docking mover masks over init_task_factory
142 
143  // minimization
145  bool nb_list_;
147 
148 };
149 
150 } // symmetrical_docking
151 } // protocols
152 
153 #endif