Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SemiExplicitWaterUnsatisfiedPolarsCalculator.hh
Go to the documentation of this file.
1 // (c) Copyright Rosetta Commons Member Institutions.
2 // (c) This file is part of the Rosetta software suite and is made available under license.
3 // (c) The Rosetta software is developed by the contributing members of the Rosetta Commons.
4 // (c) For more information, see http://www.rosettacommons.org. Questions about this can be
5 // (c) addressed to University of Washington UW TechTransfer, email: license@u.washington.edu.
6 
7 /// @file /src/protocols/toolbox/PoseMetricCalculators/SemiExplicitWaterUnsatisfiedPolarsCalculator.hh
8 /// @brief
9 /// @author Chris King, templated from BuriedUnsatisfiedPolarsCalulator by Florian Richter
10 
11 
12 #ifndef INCLUDED_protocols_toolbox_pose_metric_calculators_SemiExplicitWaterUnsatisfiedPolarsCalculator_hh
13 #define INCLUDED_protocols_toolbox_pose_metric_calculators_SemiExplicitWaterUnsatisfiedPolarsCalculator_hh
14 
16 #include <core/pose/Pose.fwd.hh>
17 #include <core/types.hh>
18 #include <basic/MetricValue.fwd.hh>
19 #include <core/id/AtomID_Map.hh>
23 
24 
25 #include <basic/options/option.hh>
26 
27 #include <utility/vector1.hh>
28 
29 #include <set>
30 
31 
32 // option key includes
33 
34 #include <basic/options/keys/pose_metrics.OptionKeys.gen.hh>
35 
36 
37 namespace protocols{
38 namespace toolbox {
39 namespace pose_metric_calculators {
40 
42 
43 public:
44 
46  std::string hbond_calc,
48  core::Real semiexpl_water_cutoff = basic::options::option[basic::options::OptionKeys::pose_metrics::semiex_water_burial_cutoff]
49  );
50 
51 
53  std::string hbond_calc,
55  std::set< core::Size > const & special_region,
56  core::Real semiexpl_water_cutoff = basic::options::option[basic::options::OptionKeys::pose_metrics::semiex_water_burial_cutoff]
57  );
58 
59 
62  core::pose::Pose pose,
64  core::Size seqpos,
65  core::Size atomno,
67  core::Size new_atomno
68  );
69 
72 
74 
75 protected:
76 
77  virtual void lookup( std::string const & key, basic::MetricValueBase * valptr ) const;
78  virtual std::string print( std::string const & key ) const;
79  virtual void recompute( core::pose::Pose const & this_pose );
80 
81 
82 private:
83 
84  void assert_calculators();
85 
86  static
88 
89 
98 
99  //holds the atom hbonds calculators necessary for this calculator
102 
103  std::set< core::Size > special_region_;
104 
105 };
106 
107 
108 } // namespace pose_metric_calculators
109 } // namespace toolbox
110 } // namespace protocols
111 
112 #endif