9 #ifndef IMPKERNEL_GENERIC_H
10 #define IMPKERNEL_GENERIC_H
12 #include <IMP/kernel/kernel_config.h>
13 #include "internal/scoring_functions.h"
14 #include "internal/TupleRestraint.h"
15 #include "internal/TupleConstraint.h"
17 IMPKERNEL_BEGIN_NAMESPACE
23 template <
class Restra
intType>
36 template <
class Score>
38 const typename Score::Argument &t,
39 std::string name= std::string()) {
40 return internal::create_tuple_restraint(s,
41 IMP::kernel::internal::get_model(t),
46 template <
class Score>
48 const typename Score::Argument &t,
49 std::string name= std::string()) {
50 return internal::create_tuple_restraint(const_cast<Score*>(s),
51 IMP::kernel::internal::get_model(t),
62 template <
class Before,
class After>
64 const typename Before::Argument &t,
65 std::string name=std::string()) {
66 return internal::create_tuple_constraint(b,a,t, name);
70 IMPKERNEL_END_NAMESPACE