/* * ProcessDeriv.hh * * Created on: Dec 12, 2012 * Author: f.casimir */ #ifndef PROCESSDeriv_HH_ #define PROCESSDeriv_HH_ #include "SingleParamProcess.hh" namespace AMDA { namespace Parameters { /** * @class ProcessDeriv * @brief Data deriv process. * @details This class represents the process that must deriv the data type of an unknown ParamData, of 3 point Lagrangian interpolation derivation. * To do this it implements the Process interface and delegates the data deriv to an output ParamData to a Deriv class. * This class is builded from the DerivCreator visitor. */ class ProcessDeriv : public AMDA::Parameters::SingleParamProcess_CRTP { public: /** * @brief Constructor. */ ProcessDeriv(Parameter ¶meter); /** * @brief Copy Constructor. */ ProcessDeriv(const ProcessDeriv& pProcess, Parameter &pParameter) ; /** * @brief Destructor. */ ~ProcessDeriv(); // Overload Process methods /** * @overload Process::init() */ TimeStamp init(); }; } /* namespace Parameters */ } /* namespace AMDA */ #endif /* PROCESSDeriv_HH_ */