Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
LigandMotifSearch.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 LigandMotifSearch.hh
11 /// @brief Class declaration for ligand motif searching protocol
12 /// @author mdsmith (mdwsmith@u.washington.edu)
13 
14 #ifndef INCLUDED_protocols_motifs_LigandMotifSearch_HH
15 #define INCLUDED_protocols_motifs_LigandMotifSearch_HH
16 
17 // Unit Headers
19 
20 // Package Headers
25 
26 // Project Headers
28 // AUTO-REMOVED #include <core/chemical/ResidueType.fwd.hh>
29 // AUTO-REMOVED #include <protocols/toolbox/rotamer_set_operations/SpecialRotamerRotSetOps.fwd.hh>
31 // AUTO-REMOVED #include <core/pack/task/operation/TaskOperation.hh>
32 #include <core/pose/Pose.fwd.hh>
33 #include <core/types.hh>
34 
35 // Utility Headers
36 #include <utility/pointer/ReferenceCount.hh>
37 #include <utility/vector1.hh>
38 
39 // C++ Headers
40 #include <map>
41 #include <set>
42 #include <string>
43 
45 
46 
47 namespace protocols {
48 namespace motifs {
49 
51 {
52 
53 public:
54 
55  typedef core::Real Real;
56  typedef core::Size Size;
62 
63  // Constructor
65 
66  // Destructor
67  virtual ~LigandMotifSearch();
68 
69  // Copy constructor
71  LigandMotifSearch const & src
72  );
73 
74  LigandMotifSearch const &
76  LigandMotifSearch const & src
77  );
78 
79  //
80  void run(
81  Pose const & pose,
82  utility::vector1< Size > & input_BPs
83  );
84 
85  void run(
86  Pose const & pose,
87  PackerTask & task
88  );
89 
90 void run(
91  Pose const & pose,
92  core::Real & ligand_motif_sphere
93 );
94 
95  void initialize(
96  Pose const & pose
97  );
98 
99  void initialize(
100  Pose const & pose,
101  utility::vector1< Size > & input_BPs
102  );
103 
104  void
106  Pose const & pose
107  );
108 
110  bp_rotamers(
111  Size const seqpos
112  );
113 
115  get_rotamers();
116 
117  bool
119 
120  void
122  Pose const & pose
123  );
124 
125  void
127  Pose const & pose,
128  Sizes & build_positions
129  );
130 
133  Pose const & pose,
134  core::Real cut1
135  );
136 
137  /*void
138  fill_bp_allowed_types(
139  Pose const & pose,
140  Size const spos,
141  std::set< std::string > & allowed_types
142  );*/
143 
145  Pose const & pose
146  );
147 
148  void
150  Pose const & pose,
151  Size const input_BP
152  );
153 
154  void
156  Pose const & pose,
158  );
159 
160  void
162  Pose const & pose,
164  );
165 
168  std::map< Size, std::set< std::string > > mappositions
169  );
170 
173  Pose const & pose,
174  Size const bp,
175  Sizes & full_tl
176  );
177 
178  void
180  Pose const & pose,
181  Sizes & build_positions,
183  );
184 
185  void
187  Pose const & pose,
188  Sizes & build_positions,
190  Sizes & short_tl
191  );
192 
193  void
195  Real const & r1,
196  Real const & z1,
197  Real const & r2,
198  Real const & z2,
199  Real const & d1,
200  Size const & rlevel
201  );
202 
203  void
205 
206  void
208  MotifLibrary & motiflibrary
209  );
210 
211  // Accessors
212  MotifCOPs const & motif_library() const { return motif_library_; }
213  Sizes const & dna_positions() const { return dna_positions_; }
214  Sizes const & protein_positions() const { return protein_positions_; }
215  std::map< Size, std::set< std::string > > const & target_positions() const { return target_positions_; }
217  std::map< std::string, core::conformation::ResidueOPs > const & target_conformers_map() const { return target_conformers_map_; }
218  Real const & ztest_cutoff_1() const { return ztest_cutoff_1_;}
219  Real const & ztest_cutoff_2() const { return ztest_cutoff_2_;}
220  Real const & rmsd_cutoff_1() const { return rmsd_cutoff_1_;}
221  Real const & rmsd_cutoff_2() const { return rmsd_cutoff_2_;}
222  Real const & dtest_cutoff() const { return dtest_cutoff_;}
223  Size const & rot_level() const { return rot_level_;}
224  bool const & minimize() const { return minimize_;}
225 
226 private:
227  void init_options();
228 
229 private:
233  std::map< Size, std::set< std::string > > target_positions_;
235  std::map< std::string, core::conformation::ResidueOPs > target_conformers_map_;
236 
237  // inputs used for scoring motif, 1s are broader first limit and 2s are a tighter cutoff for final selection
243 
244  // input rotamer level (4 = all chis explosion, 8 is extra deviations of explosion on all 4 chis)
246 
247  bool minimize_;
248 
249  // options set in init_options
250  bool bpdata_;
252  bool output_;
254  bool data_;
260 
261 };
262 
263 } // namespace motifs
264 } // namespace protocols
265 
266 #endif // INCLUDED_protocols_motifs_LigandMotifSearch