/search.css" rel="stylesheet" type="text/css"/> /search.js">
00001 00014 #ifndef LI9HE8DECAYERATOR_H 00015 #define LI9HE8DECAYERATOR_H 00016 00017 00018 #include "GenTools/IHepMCEventMutator.h" 00019 #include "GaudiAlg/GaudiTool.h" 00020 #include "TROOT.h" 00021 #include "TVector3.h" 00022 #include "HepMC/GenParticle.h" 00023 #include "Li9He8.h" 00024 00025 #include "GaudiKernel/IRndmGenSvc.h" 00026 #include "GaudiKernel/IParticlePropertySvc.h" // particle mass 00027 #include <string> 00028 00029 class Li9He8Decayerator : public GaudiTool, 00030 virtual public IHepMCEventMutator 00031 { 00032 00033 public: 00034 00035 Li9He8Decayerator(const std::string& type, 00036 const std::string& name, 00037 const IInterface* parent); 00038 virtual ~Li9He8Decayerator(); 00039 00040 virtual StatusCode initialize(); 00041 virtual StatusCode finalize(); 00042 00043 // HepMCEventMutator interface 00044 virtual StatusCode mutate(HepMC::GenEvent& event); 00045 00046 private: 00047 double m_Li9fraction; 00048 bool m_completedecay; 00049 double alpha_mass; 00050 00051 IRndmGenSvc *rgs; 00052 Rndm::Numbers m_uni; 00053 00054 IParticlePropertySvc* m_pps; 00055 00056 HepMC::GenParticle* make_particle(TVector3&, double, int); 00057 00058 }; 00059 00060 00061 #endif // LI9HE8DECAYERATOR_H