// ESAF : Euso Simulation and Analysis Framework // $Id: AnalogFrontEnd.hh,v 1.5 2004/09/28 12:10:12 thea Exp $ // M. Pallavicini created Jul, 2 2002 // Base class for all analog front end electronics simulation #ifndef __ANALOGFRONTEND_HH_ #define __ANALOGFRONTEND_HH_ #include "euso.hh" #include "FrontEndChip.hh" #include "EsafConfigurable.hh" class ChipGtuData; class PmtSignal; class AnalogFrontEnd : public EsafConfigurable { public: AnalogFrontEnd(FrontEndChip*); virtual ~AnalogFrontEnd(); // parent FrontEndChip inline FrontEndChip *Dfee() {return pDfee;} // id is the same as the parent FrontEndChip inline int Id() const {return pDfee->Id();} // reset (clear internal variables and status) virtual void Reset( int ) = 0; // add a photon for one specific channel and GTU virtual void Add( const PmtSignal&, int, int ) = 0; // simulate gtu response virtual void Simulate( ChipGtuData* ) = 0; EsafConfigClass(Electronics,AnalogFrontEnd) private: FrontEndChip* pDfee; ClassDef(AnalogFrontEnd,0) }; #endif /* __ANALOGFRONTEND_HH_ */