#ifndef __JFUNCTION1D_T__ #define __JFUNCTION1D_T__ #include "JTools/JFunctional.hh" #include "JTools/JElement.hh" #include "JTools/JVector.hh" #include "JTools/JGrid.hh" #include "JTools/JSpline.hh" #include "JTools/JPolint.hh" namespace JTOOLS { /** * Type definition of a lookup table based on a JGrid with result type double. */ class JGridFunction1D_t : public JGridFunction1D {}; /** * Type definition of a spline interpolation method based on JVector implementation with double result type. */ template class JVectorSplineFunction1D : public JSplineFunction1D {}; /** * Type definition of a spline interpolation method based on JVector implementation with double result type. */ class JSplineFunction1D_t : public JSplineFunction1D {}; /** * Type definition of a spline interpolation method based on JVector implementation with JFunctionValuePDF result type. */ class JSplineFunction1S_t : public JSplineFunction1D > {}; /** * Type definition of a spline interpolation based on a JGrid with result type double. */ class JGridSplineFunction1D_t : public JSplineFunction1D {}; /** * Type definition of a spline interpolation based on a JGrid with result type double. */ class JGridSplineFunction1S_t : public JSplineFunction1D > {}; /** * Polynomial interpolation method based on JVector implementation with result type double. */ template class JPolintFunction1D_t : public JPolintFunction1D {}; /** * Type definition of a zero degree polynomial interpolation. */ template class JContainer_t> class JPolint0Function1D : public JPolintFunction1D<0, JElement_t, JContainer_t> {}; /** * Type definition of a 1st degree polynomial interpolation. */ template class JContainer_t> class JPolint1Function1D : public JPolintFunction1D<1, JElement_t, JContainer_t> {}; /** * Type definition of a 1st degree polynomial interpolation. */ template class JContainer_t> class JPolint2Function1D : public JPolintFunction1D<2, JElement_t, JContainer_t> {}; /** * Type definition of a 1st degree polynomial interpolation. */ template class JContainer_t> class JPolint3Function1D : public JPolintFunction1D<3, JElement_t, JContainer_t> {}; /** * Type definition of a zero degree polynomial interpolation based on a JVector with result type double. */ class JPolint0Function1D_t : public JPolintFunction1D<0, JPolintElement2D_t, JVector> {}; /** * Type definition of a 1st degree polynomial interpolation based on a JVector with result type double. */ class JPolint1Function1D_t : public JPolintFunction1D<1, JPolintElement2D_t, JVector> {}; /** * Type definition of a 2nd degree polynomial interpolation based on a JVector with result type double. */ class JPolint2Function1D_t : public JPolintFunction1D<2, JPolintElement2D_t, JVector> {}; /** * Type definition of a 3rd degree polynomial interpolation based on a JVector with result type double. */ class JPolint3Function1D_t : public JPolintFunction1D<3, JPolintElement2D_t, JVector> {}; /** * Polynomial interpolation method based on a JGrid with result type double. */ template class JGridPolintFunction1D_t : public JPolintFunction1D {}; /** * Type definition of a zero degree polynomial interpolation based on a JGrid with result type double. */ class JGridPolint0Function1D_t : public JGridPolintFunction1D_t<0> {}; /** * Type definition of a 1st degree polynomial interpolation based on a JGrid with result type double. */ class JGridPolint1Function1D_t : public JGridPolintFunction1D_t<1> {}; /** * Type definition of a 2nd degree polynomial interpolation based on a JGrid with result type double. */ class JGridPolint2Function1D_t : public JGridPolintFunction1D_t<2> {}; /** * Type definition of a 3rd degree polynomial interpolation based on a JGrid with result type double. */ class JGridPolint3Function1D_t : public JGridPolintFunction1D_t<3> {}; /** * Type definition of a spline interpolation based on a JGrid. */ template class JGridSplineFunction1D : public JSplineFunction1D {}; } #endif