// ---------------------------------------------------------------------------- // $Id: LCDCalHit.h,v 1.7 2001/06/21 04:09:32 toshi Exp $ // ---------------------------------------------------------------------------- // // $Log: LCDCalHit.h,v $ // Revision 1.7 2001/06/21 04:09:32 toshi // A bug fix. Double_t GetMCEPartAt(Int_t i) -> Int_t GetMCEPartAt(Int_t i). // // Revision 1.6 2001/06/21 03:25:38 toshi // Remove GetEscale(), GetThetaSeg(), GetPhiSeg(), GetEtot(), GetTheta(), // GetPhi(), GetR(), and GetRcyl() to suite windows... // // Revision 1.5 2001/06/20 22:32:35 toshi // Force to set m_iMCE[] and m_eMCE[] to be zero when a LCDCalHit is initialized. // // Revision 1.4 2001/06/20 03:35:17 toshi // Changes to prevent windows compilar error. // // Revision 1.3 2001/06/19 16:54:34 toshi // Just add $ID: $ in the top of this file. // // Revision 1.2 2001/04/28 21:51:08 toshi // Start to use CVS. // // // LCDCalHit.h // Apr 13,2001 Toshi, Add GetEtotMCE // Apr 06,2001 Toshi, major changes // Feb 02,1999 Rob Shanks Creation: In an attempt to speed up the reading // of the Event structure. #ifndef LCDCALHIT_H #define LCDCALHIT_H #include "TObject.h" #include "LCDtowerID.h" class LCDCalHit: public TObject { public: LCDCalHit() : m_Etot(0), m_tower(0) , m_nMCE(0) {Init();} LCDCalHit(UInt_t towerID) : m_Etot(0), m_tower(towerID), m_nMCE(0) {Init();} LCDCalHit(UInt_t towerID, Float_t hitE) : m_Etot(hitE), m_tower(towerID), m_nMCE(0) {Init();} LCDCalHit(UInt_t towerID, Double_t hitE) : m_Etot(hitE), m_tower(towerID), m_nMCE(0) {Init();} ~LCDCalHit() {} void AddHit(Int_t mcindex, Double_t edep); void Clean() { m_Etot=0; m_nMCE=0; } // -- Getters Double_t GetEtotRaw() { return m_Etot ; } // Etot Raw LCDtowerID* GetTower() { return &m_tower ; } // tower info. Int_t GetMCEEntries() { return m_nMCE ; } // # of MCs Int_t GetMCEPartAt(Int_t i) { return m_iMCE[i]; } // MC index Double_t GetMCEEnergyAt(Int_t i){ return m_eMCE[i]; } // MC energy contrib. Double_t GetEtotMCE(); // Etot MCE void SetEtot(Double_t a) { m_Etot = a; } private: Float_t m_Etot ; // Total energy deposited in calorimeter tower LCDtowerID m_tower ; // TowerID tag Int_t m_nMCE ; // N of MC particles which contribute to this hit. Int_t m_iMCE[50]; // particles index Float_t m_eMCE[50]; // energy contributions of particles void Init(); public: ClassDef(LCDCalHit,4) // Calorimeter tower hit information }; #endif