Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ImplicitFastClashCheck.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 src/core/scoring/ImplicitFastClashCheck.hh
11 /// @brief does implicit fast clash checking WRT the provided pose
12 /// @author Will Sheffler (will@sheffler.me)
13 
14 #ifndef INCLUDED_protocols_scoring_ImplicitFastClashCheck_hh
15 #define INCLUDED_protocols_scoring_ImplicitFastClashCheck_hh
16 
17 #include <core/types.hh>
18 // AUTO-REMOVED #include <core/kinematics/Stub.hh>
19 #include <core/pose/Pose.fwd.hh>
20 #include <numeric/xyzVector.hh>
21 #include <numeric/xyzTriple.hh>
22 #include <ObjexxFCL/FArray3D.hh>
23 #include <utility/vector1.hh>
24 // AUTO-REMOVED #include <utility/io/ozstream.hh>
25 #include <utility/pointer/ReferenceCount.hh>
26 
27 #include <platform/types.hh>
28 
30 #include <utility/io/ozstream.fwd.hh>
31 
32 
33 namespace protocols {
34 namespace scoring {
35 
37 
38 public:
39  ///@brief Automatically generated virtual destructor for class deriving directly from ReferenceCount
40  virtual ~ImplicitFastClashCheck();
41 
43  core::pose::Pose const & pose_in,
44  core::Real clash_dis
45  );
46 
48  core::pose::Pose const & pose_in,
49  core::Real clash_dis,
51  );
52 
54  utility::vector1<core::pose::Pose> const & poses_in,
55  core::Real clash_dis,
57  );
58 
59  void
62  core::Real neighbor_cutoff,
64  );
65 
66  bool
69  ) const;
70 
74  ) const;
75 
76  bool
79  core::Size resno
80  ) const;
81 
82  // bool
83  // clash_check(
84  // core::pose::Pose const & pose,
85  // core::Size refrsd
86  // ) const;
87  //
88  // bool
89  // clash_check(
90  // core::kinematics::Stub const & stub,
91  // numeric::xyzVector<core::Real> pos
92  // ) const;
93  //
94  bool
96  core::pose::Pose const & pose,
97  Size refrsd
98  ) const;
99 
100  void
102  utility::io::ozstream & out,
103  core::kinematics::Stub const & stub,
104  char chain = 'Z'
105  ) const;
106 
107  void
109  std::string const & fname,
110  core::kinematics::Stub const & stub,
111  char chain = 'Z'
112  ) const;
113 
114  bool
116 
118  return points_.size();
119  }
120 
121 private:
122 
124 
126 
128 
130 
131  ObjexxFCL::FArray3D< utility::vector1<unsigned int> > cubes_;
132 
134 
135  numeric::xyzTriple< core::Size > cube_dim_;
136 
138 
139  ObjexxFCL::FArray3D< utility::vector1<numeric::xyzVector<core::Real> > > cubes_ca_;
141  numeric::xyzTriple< core::Size > cube_dim_ca_;
143 
144 };
145 
146 } // namespace scoring {
147 } // namespace protocols {
148 
149 #endif // INCLUDED_protocols_scoring_methods_ImplicitFastClashCheck_hh