10 #ifndef IMPSCORE_FUNCTOR_DISTANCE_PAIR_SCORE_MACROS_H
11 #define IMPSCORE_FUNCTOR_DISTANCE_PAIR_SCORE_MACROS_H
15 #if defined(SWIG) || defined(IMP_DOXYGEN)
26 #define IMP_FUNCTOR_DISTANCE_PAIR_SCORE(Name, Functor, Args, PassArgs) \
27 class Name : public IMP::PairScore { \
28 typedef IMP::score_functor::DistancePairScore<Functor> P; \
32 double evaluate_index(kernel::Model *m, \
33 const kernel::ParticleIndexPair &pip, \
34 DerivativeAccumulator *da) const; \
35 kernel::ModelObjectsTemp do_get_inputs( \
36 kernel::Model *m, const kernel::ParticleIndexes &pis) const; \
37 IMP_OBJECT_METHODS(Name); \
41 #define IMP_FUNCTOR_DISTANCE_PAIR_SCORE(Name, Functor, Args, PassArgs) \
42 class Name : public IMP::score_functor::DistancePairScore<Functor> { \
43 typedef IMP::score_functor::DistancePairScore<Functor> P; \
46 Name Args : P(Functor PassArgs, name) {} \
A Score on the distance between a pair of particles.