Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Class Members | File Members

MJOutputLANLClover.hh

Go to the documentation of this file.
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 // --------------------------------------------------------------------------//
00059 // --------------------------------------------------------------------------//
00060 
00061 #ifndef _MJOUTPUTLANLCLOVER_HH
00062 #define _MJOUTPUTLANLCLOVER_HH
00063 
00064 //---------------------------------------------------------------------------//
00065 
00066 #include "TMath.h"
00067 #include "TObject.h"
00068 
00069 #include "globals.hh"
00070  
00071 #include "io/MJOutputRoot.hh"
00072 #include "io/MJOutputLANLCloverDataNoPS.hh"
00073 
00074 //---------------------------------------------------------------------------//
00075 
00080 class MJOutputLANLClover: public MJOutputRoot
00081 {
00082 public:
00083 
00084   //default constructor
00085   MJOutputLANLClover(G4String serNum, G4bool isMother);
00086 
00087   //destructor
00088   ~MJOutputLANLClover();
00089 
00090   //public interface
00091   //MJOutputRoot inherited virtual functions.
00092   void DefineSchema();
00093   void BeginOfEventAction(const G4Event *event);
00094   void BeginOfRunAction();
00095   void EndOfEventAction(const G4Event *event);
00096   void EndOfRunAction();
00097   void RootSteppingAction(const G4Step *step);
00098 
00099   //protected members
00100 protected:
00101 
00102 
00103   //private  members
00104 private:
00105 
00106   // X coordinates of planes that separate L, M, and R segments.
00107   G4double fMRPlaneX;
00108   G4double fLMPlaneX;
00109 
00110   // Accumulator for energy deposits. 
00111   // Use G4double for this, since we will accumulate many small
00112   // contributions and do not want round-off errors to accumulate. 
00113   // Typecast when saved. 
00114   G4double fE1_MC, fE2_MC, fE3_MC, fE4_MC, fPl_MC, fPm_MC, fPr_MC;
00115   
00116   G4double fInverseCalibrationA[7], fCalibrationB[7];
00117   G4double fStandardDeviationA[7], fStandardDeviationB[7];
00118 
00119   G4String fSerialNumber;  // Serial number of detector being simulated. 
00120   MJOutputLANLCloverDataNoPS    *fTreePointer; // Pointer to Root tree
00121   size_t fSensitiveMaterialIndex; 
00122     // Material in which to perform stepping action.
00123 
00128   Float_t  ConvertEnergyToBin(Float_t edep, const Int_t channel);
00129 
00130 };
00131 
00132 #endif

Generated on Mon Nov 29 16:58:52 2004 for Majorana Simulation by  doxygen 1.3.9.1