00001 #ifndef EcalSimAlgos_EcalTDigitizer_h 00002 #define EcalSimAlgos_EcalTDigitizer_h 00003 00009 #include "SimDataFormats/CrossingFrame/interface/MixCollection.h" 00010 #include "SimDataFormats/CaloHit/interface/PCaloHit.h" 00011 #include "DataFormats/DetId/interface/DetId.h" 00012 00013 class CaloHitRespoNew ; 00014 00015 template< class Traits > 00016 class EcalTDigitizer 00017 { 00018 public: 00022 typedef typename Traits::ElectronicsSim ElectronicsSim ; 00023 typedef typename Traits::Digi Digi ; 00024 typedef typename Traits::DigiCollection DigiCollection ; 00025 00026 typedef CaloHitRespoNew CaloHitResponse ; 00027 00028 EcalTDigitizer< Traits >( CaloHitResponse* hitResponse , 00029 ElectronicsSim* electronicsSim , 00030 bool addNoise ) ; 00031 00032 ~EcalTDigitizer< Traits >() ; 00033 00034 void run( MixCollection<PCaloHit>& input , 00035 DigiCollection& output ) ; 00036 00037 private: 00038 00039 CaloHitResponse* m_hitResponse ; 00040 ElectronicsSim* m_electronicsSim ; 00041 bool m_addNoise ; 00042 }; 00043 00044 #endif 00045