//////////////////////////////////////////////////////////////////////// /// \class RAT::CalibPMTSD /// /// \brief Collection of hit PMTs for the current event. Is a singleton. /// /// \author Phil G Jones /// \author Aksel Hallin -- contact person /// /// REVISION HISTORY:\n /// 2013-12-16 : P G Jones - New file, replaces GLG4CalibPMTSD. \n /// /// \details Each PMT hit is registered in this class. The collection is /// cleared at the start of each event. The DQXX information is applied /// here. /// //////////////////////////////////////////////////////////////////////// #ifndef __RAT_CalibPMTSD_hh__ #define __RAT_CalibPMTSD_hh__ #include namespace RAT { class CalibPMTSD : public G4VSensitiveDetector { public: CalibPMTSD( G4String name, const int lcn, const double threshold, const double efficiency ); virtual void Initialize( G4HCofThisEvent* ); virtual void EndOfEvent( G4HCofThisEvent* ); virtual G4bool ProcessHits( G4Step* step, G4TouchableHistory* ); protected: double fTotalEnergyDeposited; ///< The total deposited energy in the event double fLCN; ///< The logical channel number of this calib PMT double fThresholdEnergy; ///< The threshold energy under which photoelectrons are produced double fEfficiency; ///< The efficiency of this at detecting events above the energy threshold }; } //::RAT #endif