Geant4 Cross Reference |
1 // -*- C++ -*- 2 // 3 // ----------------------------------------------------------------------- 4 // HEP Random 5 // --- RandLandau --- 6 // inlined functions implementation file 7 // ----------------------------------------------------------------------- 8 // This file is part of Geant4 (simulation toolkit for HEP). 9 10 // ======================================================================= 11 // Gabriele Cosmo - Created: 19th August 1998 12 // M Fischler - Added some inline methods that had been in the .cc file, 13 // which are shells for calls to transform(r): 30 Sep 1999 14 // ======================================================================= 15 16 // Constructors 17 // ------------ 18 19 namespace CLHEP { 20 21 RandLandau::RandLandau(HepRandomEngine & anEngine ) 22 : HepRandom(), localEngine(&anEngine, do_nothing_deleter()) 23 {} 24 25 RandLandau::RandLandau(HepRandomEngine * anEngine ) 26 : HepRandom(), localEngine(anEngine) 27 {} 28 29 // Getting a Landau deviate - static methods 30 // ------------------------------------------- 31 32 double RandLandau::shoot() 33 { 34 HepRandomEngine* anEngine = HepRandom::getTheEngine(); 35 return transform (anEngine->flat()); 36 } 37 38 double RandLandau::shoot( HepRandomEngine* anotherEngine ) 39 { 40 return transform (anotherEngine->flat()); 41 } 42 43 // Getting a Landau deviate - instance methods 44 // --------------------------------------------- 45 46 double RandLandau::fire() { 47 return transform(localEngine->flat()); 48 } 49 50 double RandLandau::operator()() { 51 return transform(localEngine->flat()); 52 } 53 54 } // namespace CLHEP 55