Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
RigidScore.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 #ifndef INCLUDED_protocols_sic_dock_RigidScore_hh
11 #define INCLUDED_protocols_sic_dock_RigidScore_hh
12 
14 
15 #include <ObjexxFCL/FArray2D.hh>
16 #include <ObjexxFCL/FArray3D.hh>
17 #include <utility/vector1.hh>
18 #include <numeric/xyzVector.hh>
19 #include <core/id/AtomID_Map.hh>
20 #include <core/kinematics/Stub.hh>
21 #include <core/pose/Pose.fwd.hh>
22 #include <core/types.hh>
25 #include <utility/pointer/ReferenceCount.hh>
27 
28 namespace protocols {
29 namespace sic_dock {
30 
31 
33 protected:
45 public:
46 
47  virtual ~RigidScore() {}
48 
49  virtual
51  score(
52  Stub const & x1,
53  Stub const & x2
54  ) const = 0;
55 
56 };
57 
58 
59 class CBScore : public RigidScore {
60 public:
61  // Undefined, commenting out to fix PyRosetta build CBScore(Real clash_dis, Real contact_dis);
62  virtual ~CBScore(){}
63  CBScore(
64  Pose const & pose1,
65  Pose const & pose2,
66  Real clash_dis,
67  Real contact_dis
68  );
69  platform::Real score( Stub const & x1, Stub const & x2 ) const;
70 //private:
71  bool const hash_pose1_;
73  Reals const weights_;
74  Vecs const points_;
76  // Pose const & pose1_,pose2_;
77 };
78 
79 
80 class LinkerScore : public RigidScore {
81 public:
83  Pose const & pose1,
84  Pose const & pose2,
85  Size max_loop_len,
86  Size lookup_radius
87  );
88  virtual ~LinkerScore(){}
89  platform::Real score( Stub const & x1, Stub const & x2 ) const;
90  // Undefined, commenting out to fix PyRosetta build void dump_linkers( Stub const & x1, Stub const & x2 ) const;
91 private:
95  Pose const & pose1_,pose2_;
98 };
99 
100 
101 
102 class EdgeStandScore : public RigidScore {
103 public:
104  EdgeStandScore();
105  virtual ~EdgeStandScore(){}
106  // Undefined, commenting out to fix PyRosetta build platform::Real score( Stub const & x1, Stub const & x2 ) const;
107 private:
109 };
110 
111 class HelixScore : public RigidScore {
112 public:
113  HelixScore();
114  virtual ~HelixScore(){}
115  // Undefined, commenting out to fix PyRosetta build platform::Real score( Stub const & x1, Stub const & x2 ) const;
116 private:
117 };
118 
119 class BuriedPolarScore : public RigidScore {
120 public:
121  BuriedPolarScore(); // c'tor should store the buriend unsat polar coords
122  virtual ~BuriedPolarScore(){}
123  // Undefined, commenting out to fix PyRosetta build
124  // platform::Real score( Stub const & x1, Stub const & x2 ) const;
125 private:
127 };
128 
129 ////// composite scores
130 
131 class JointScore : public RigidScore {
132 public:
134  JointScore(
135  Scores scores,
136  Reals weights
137  );
138  void add_score(RigidScoreCOP score, Real weight);
139  virtual ~JointScore(){}
140  platform::Real score( Stub const & x1, Stub const & x2 ) const;
141 private:
144 
145 };
146 
147 
148 
149 // class CachedScore : public RigidScore {
150 // public:
151 // CachedScore(RigidScoreCOP score);
152 // virtual ~CachedScore(){}
153 // platform::Real score( Stub const & x1, Stub const & x2 ) const;
154 // private:
155 // RigidScoreCOP score_;
156 // // some kind of 6 dof hash
157 // };
158 
159 
160 
161 
162 
163 
164 } // namespace sic_dock
165 } // namespace protocols
166 
167 #endif