00001 00020 #ifndef __PYCONSTRAINT_H 00021 #define __PYCONSTRAINT_H 00022 00023 #include "jbltools/kinfit/ParticleConstraint.h" 00024 00025 class ParticleFitObject; 00026 00027 // Class PyConstraint: 00029 00035 class PyConstraint : public ParticleConstraint { 00036 public: 00037 PyConstraint (); 00038 virtual ~PyConstraint(); 00040 virtual double getValue() const = 0; 00041 00044 virtual void getDerivatives (int idim, 00045 double der[] 00046 ) const = 0; 00048 virtual void add1stDerivativesToMatrix (int idim, 00049 double *M 00050 ) const; 00052 virtual void add2ndDerivativesToMatrix (int idim, 00053 double *M, 00054 double lambda 00055 ) const; 00056 00057 protected: 00058 00059 }; 00060 00061 #endif // __PYCONSTRAINT_H