//----------------------------------------------------------- // File and Version Information: // $Id$ // // Description: // Pulseshape from an CR2RC-Shaper // //----------------------------------------------------------- #ifndef EMCCR2RCPULSESHAPE_HH #define EMCCR2RCPULSESHAPE_HH // Base Class Headers ---------------- #include "EmcAbsPulseshape.h" // Collaborating Class Headers ------- #include class EmcCR2RCPulseshape : public EmcAbsPulseshape { public: // Constructors/Destructors --------- EmcCR2RCPulseshape(){;} EmcCR2RCPulseshape(double Tint, double Tdif, double Tsig); virtual ~EmcCR2RCPulseshape(){;} // Operators // Accessors ----------------------- // Modifiers ----------------------- // Operations ---------------------- virtual double operator() (const double t, const double amp, const double toffset) const; private: // Private Data Members ------------ double _Tint; double _Tdif; double _Tsig; // Private Methods ----------------- double general_solution(const double t, const double amp, const double toffset) const; double degenerate_solution(const double t, // for Tdif=Tint const double amp, const double toffset) const; ClassDef(EmcCR2RCPulseshape,1) }; #endif