#ifndef LGEventAction_h #define LGEventAction_h 1 #include "G4UserEventAction.hh" #include "TTree.h" #include "globals.hh" class G4Event; class LGDetectorConstruction; class LGPrimaryGeneratorAction; class TTree; class LGEventAction : public G4UserEventAction { public: LGEventAction(LGDetectorConstruction* , LGPrimaryGeneratorAction* , G4int , TTree*); ~LGEventAction(); void BeginOfEventAction(const G4Event*); // the definiton of a pure virtual method, BeginOfEventAction void EndOfEventAction(const G4Event*); // it is not, actually, required to add the keyword 'virtual' void countPhotons(G4double, G4double); // the method to count the number of the Photons void countHits(G4int ); // the method to count the number of the Hits void addEnergy(G4double , G4int ); // the method to add energy void addEnergyDeposit(G4double , G4int ); // the method to add energy deposited void addEnergyAttenuate(G4double , G4int); void resetCounters(); // the method to reset // the methode to store the start location of the shower void recordShowerStart(Float_t , Float_t , Float_t , Float_t , Float_t , Float_t ); // save initial photon energy void recordPhotonEnergy(Float_t); G4int gettotalPhotons(G4int) { return 0; } // return the value currently contained in the total_Photons when the method is invoked. G4int getdetectedPhotons(G4int) { return 0; } // return the value currenly contained in the detected_Photons when the method is invoked. G4double gettotalPhotonEnergy(G4int) { return 0; } G4double gettotalDepositEnergy(G4int) { return 0; } G4double gettotalAttenuateEnergy(G4int) { return 0; } private: LGDetectorConstruction* detector_Construction; LGPrimaryGeneratorAction* generator_Action; G4int Interactive; Int_t event_ID; TTree* LG_Tree; }; #endif /*LGEventAction_h*/