00001
00002
00003
00004
00005
00006 #ifndef BDSLWCalorimeterSD_h
00007 #define BDSLWCalorimeterSD_h 1
00008
00009 #include "G4VSensitiveDetector.hh"
00010 #include "BDSLWCalorimeterHit.hh"
00011 #include "G4Navigator.hh"
00012 #include "G4TransportationManager.hh"
00013
00014 class G4Step;
00015 class G4HCofThisEvent;
00016 class G4TouchableHistory;
00017
00018 class BDSLWCalorimeterSD : public G4VSensitiveDetector
00019 {
00020
00021 public:
00022 BDSLWCalorimeterSD(G4String name);
00023 ~BDSLWCalorimeterSD();
00024
00025 void Initialize(G4HCofThisEvent*HCE);
00026 G4bool ProcessHits(G4Step*aStep,G4TouchableHistory*ROhist);
00027 void EndOfEvent(G4HCofThisEvent*HCE);
00028 void clear();
00029 void DrawAll();
00030 void PrintAll();
00031 inline void AddEnergy(G4double anEnergy)
00032 {itsTotalEnergy+=anEnergy;}
00033
00034 G4double itsTotalEnergy;
00035 G4int itsCopyNumber;
00036
00037 private:
00038 BDSLWCalorimeterHitsCollection *LWCalorimeterCollection;
00039 G4Navigator* StepperNavigator;
00040 G4bool StoreHit;
00041
00042 };
00043
00044
00045
00046
00047 #endif
00048