9 #ifndef IMPKERNEL_SCORE_STATE_MACROS_H
10 #define IMPKERNEL_SCORE_STATE_MACROS_H
11 #include <IMP/kernel/kernel_config.h>
18 #define IMP_SCORE_STATE(Name) \
19 IMPKERNEL_DEPRECATED_MACRO(2.1, "Declare the needed functions directly."); \
22 virtual void do_before_evaluate() IMP_OVERRIDE; \
23 virtual void do_after_evaluate(DerivativeAccumulator *da) IMP_OVERRIDE; \
24 IMP_MODEL_OBJECT_BACKWARDS_MACRO_INPUTS; \
25 IMP_MODEL_OBJECT_BACKWARDS_MACRO_OUTPUTS; \
26 IMP_OBJECT_NO_WARNING(Name)
29 #define IMP_CONSTRAINT(Name) \
30 IMPKERNEL_DEPRECATED_MACRO(2.1, "Declare the needed functions directly."); \
33 virtual void do_update_attributes() IMP_OVERRIDE; \
34 virtual void do_update_derivatives(DerivativeAccumulator *da) IMP_OVERRIDE; \
35 IMP_MODEL_OBJECT_BACKWARDS_MACRO_INPUTS; \
36 IMP_MODEL_OBJECT_BACKWARDS_MACRO_OUTPUTS; \
37 IMP_OBJECT_NO_WARNING(Name)
40 #define IMP_SCORE_STATE_2(Name) \
41 IMPKERNEL_DEPRECATED_MACRO(2.1, "Declare the needed functions directly."); \
44 virtual void do_before_evaluate() IMP_OVERRIDE; \
45 virtual void do_after_evaluate(DerivativeAccumulator *da) IMP_OVERRIDE; \
46 virtual ModelObjectsTemp do_get_inputs() const IMP_OVERRIDE; \
47 virtual ModelObjectsTemp do_get_outputs() const IMP_OVERRIDE; \
48 IMP_OBJECT_NO_WARNING(Name)
51 #define IMP_CONSTRAINT_2(Name) \
52 IMPKERNEL_DEPRECATED_MACRO(2.1, "Declare the needed functions directly."); \
55 void do_update_attributes(); \
56 void do_update_derivatives(DerivativeAccumulator *da); \
57 virtual ModelObjectsTemp do_get_inputs() const; \
58 virtual ModelObjectsTemp do_get_outputs() const; \
59 IMP_OBJECT_NO_WARNING(Name)
Abstract base class for containers of particles.
Various general useful macros for IMP.