00001 // This code implementation is the intellectual property of 00002 // the RD44 GEANT4 collaboration. 00003 // 00004 // By copying, distributing or modifying the Program (or any work 00005 // based on the Program) you indicate your acceptance of this statement, 00006 // and all its terms. 00007 // 00008 // $Id: MJGeneratorPNNLCascadeEvent.cc,v 1.2 2004/11/09 13:42:39 xliu Exp $ 00009 // GEANT4 tag $Name: $ 00010 // 00011 00012 #include "generators/MJGeneratorPNNLCascadeEvent.hh" 00013 #include <iostream.h> 00014 #include <fstream.h> 00015 00017 MJGeneratorPNNLCascadeEvent:: 00018 MJGeneratorPNNLCascadeEvent(G4int index_cascade, 00019 G4double E_charged_particle, G4int num_gammas, 00020 G4double* pGammaList) : 00021 fIndex_cascade(index_cascade), 00022 fE_charged_particle(E_charged_particle), 00023 fNum_gammas(num_gammas), 00024 f_pGammaList(pGammaList) 00025 { 00026 00027 } 00028 00030 MJGeneratorPNNLCascadeEvent:: 00031 MJGeneratorPNNLCascadeEvent() 00032 { 00033 fIndex_cascade = 0; 00034 fE_charged_particle = 0.0; 00035 fNum_gammas = 0; 00036 f_pGammaList = NULL; 00037 } 00038 00040 MJGeneratorPNNLCascadeEvent:: 00041 MJGeneratorPNNLCascadeEvent(const MJGeneratorPNNLCascadeEvent& CascadeEvent) 00042 { 00043 // N.B. The CascadeEvent class isn't responsible for dynamically allocating 00044 // memory (even the GammaList pointer just points to memory previously 00045 // allocated by the Cascade class), so the copy constructor and the 00046 // assignment operator are trivial. 00047 00048 fIndex_cascade = CascadeEvent.fIndex_cascade; 00049 fE_charged_particle = CascadeEvent.fE_charged_particle; 00050 fNum_gammas = CascadeEvent.fNum_gammas; 00051 f_pGammaList = CascadeEvent.f_pGammaList; 00052 00053 } 00054 00056 MJGeneratorPNNLCascadeEvent:: 00057 ~MJGeneratorPNNLCascadeEvent() 00058 { 00059 00060 } 00061 00063 void MJGeneratorPNNLCascadeEvent:: 00064 operator=(const MJGeneratorPNNLCascadeEvent& CascadeEvent) 00065 { 00066 // N.B. The CascadeEvent class isn't responsible for dynamically allocating 00067 // memory (even the GammaList pointer just points to memory previously 00068 // allocated by the Cascade class), so the assignment operator is trivial. 00069 00070 fIndex_cascade = CascadeEvent.fIndex_cascade; 00071 fE_charged_particle = CascadeEvent.fE_charged_particle; 00072 fNum_gammas = CascadeEvent.fNum_gammas; 00073 f_pGammaList = CascadeEvent.f_pGammaList; 00074 }