#ifndef Integrator_H #define Integrator_H #include "oo/Function.h" namespace integrators { /** * This abstract class declares the Integrator interface. */ class Integrator { public: virtual ~ Integrator () { } /** * Sets the function, which will be evaluated by the integration algorithm. */ virtual void setFunction (functions::Function * function_to_integrate) = 0; /** * Returns integration result. */ virtual double integrate (double lowBound, double upBound, int count) = 0; }; } #endif // Integrator_H