00001 //---------------------------------------------------------------------------// 00002 //bb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nu// 00003 // // 00004 // MAJORANA Simulation // 00005 // // 00006 // This code implementation is the intellectual property of the // 00007 // MAJORANA Collaboration. It is based on Geant4, an intellectual // 00008 // property of the RD44 GEANT4 collaboration. // 00009 // // 00010 // ********************* // 00011 // // 00012 // Neither the authors of this software system, nor their employing // 00013 // institutes, nor the agencies providing financial support for this // 00014 // work make any representation or warranty, express or implied, // 00015 // regarding this software system or assume any liability for its use. // 00016 // By copying, distributing or modifying the Program (or any work based // 00017 // on on the Program) you indicate your acceptance of this statement, // 00018 // and all its terms. // 00019 // // 00020 //bb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nu// 00021 //---------------------------------------------------------------------------// 00032 // Begin description of class here 00038 // End class description 00039 // 00044 // 00045 // --------------------------------------------------------------------------// 00055 // --------------------------------------------------------------------------// 00056 00057 #ifndef _MJOUTPUTNAIBARREL_HH 00058 #define _MJOUTPUTNAIBARREL_HH 00059 00060 //---------------------------------------------------------------------------// 00061 00062 #include "io/MJOutputRoot.hh" 00063 00064 //---------------------------------------------------------------------------// 00065 00066 class G4Event; 00067 class G4Step; 00068 class MJOutputNaIBarrelData; 00069 00070 class MJOutputNaIBarrel : public MJOutputRoot 00071 { 00072 public: 00073 00074 //default constructor 00075 MJOutputNaIBarrel(G4String name, G4bool isMother); 00076 00077 //destructor 00078 ~MJOutputNaIBarrel(); 00079 00080 //public interface 00081 void BeginOfEventAction(const G4Event *event); 00082 void BeginOfRunAction(); 00083 void DefineSchema(); 00084 void EndOfEventAction(const G4Event *event); 00085 void EndOfRunAction(); 00086 void RootSteppingAction(const G4Step *step); 00087 00088 //protected members 00089 protected: 00090 00091 00092 //private members 00093 private: 00094 MJOutputNaIBarrelData *fData; 00095 G4double fTotalEnergyDeposit; 00096 G4double fSegEdep[16]; 00097 size_t fSensitiveMaterialIndex; 00098 }; 00099 #endif