Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PocketConstraint.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 protocols/pockets/constraints/PocketConstraint.hh
14 ///
15 /// @brief
16 /// @author David Johnson
17 
18 
19 #ifndef INCLUDED_protocols_pockets_PocketConstraint_hh
20 #define INCLUDED_protocols_pockets_PocketConstraint_hh
21 
24 // AUTO-REMOVED #include <protocols/pockets/PocketGrid.hh>
25 
26 // AUTO-REMOVED #include <math.h>
27 #include <core/id/AtomID.hh>
28 #include <core/pose/Pose.fwd.hh>
29 #include <utility/vector1.hh>
30 #include <utility/pointer/owning_ptr.hh>
31 #include <utility/pointer/ReferenceCount.hh>
32 // AUTO-REMOVED #include <list>
33 
36 
37 
38 namespace protocols {
39 namespace pockets {
40 
41 ///@brief This constraint favors creating a pocket suitable for a small-molecule
42 ///
44 {
45 public:
46  virtual std::string type() const {
47  return "Pocket";
48  }
49 
51  PocketConstraint( core::pose::Pose const & pose );
52  PocketConstraint( const PocketConstraint& old );
53 
54  void init(core::pose::Pose const & pose);
55 
56  core::Size target_res() const { return seqpos_; }
57  virtual ~PocketConstraint();
58 
59  virtual core::Size natoms() const { return atom_ids_.size(); };
60 
61  virtual core::id::AtomID const & atom( core::Size const index ) const { return atom_ids_[index]; };
62 
63  void show_def( std::ostream& out, core::pose::Pose const & pose ) const;
64  void read_def( std::istream& in, core::pose::Pose const & pose, core::scoring::constraints::FuncFactory const & func_factory );
65 
66  virtual
67  void score( core::scoring::constraints::XYZ_Func const & xyz_func, core::scoring::EnergyMap const & weights, core::scoring::EnergyMap & emap ) const;
68 
69  virtual
70  void
71  fill_f1_f2(
72  core::id::AtomID const & ,
74  core::Vector & ,
75  core::Vector & ,
76  core::scoring::EnergyMap const & weights
77  ) const;
78 
79  virtual
81 
82  void set_target_res( core::pose::Pose const & pose, core::Size new_seqpos );
83  void set_target_res_pdb(core::pose::Pose const & pose, std::string resid );
84 
85 private:
86 
93  bool dumppdb_;
94  std::vector< core::conformation::ResidueOP > residues_;
95 
96 }; // PocketConstraint
97 
98 
99 } // namespace constraints_additional
100 } // namespace protocols
101 
102 
103 #endif // INCLUDED_protocols_pockets_PocketConstraint_HH