Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-30 10:03:30

0001 // $Id: RandLandau.icc,v 1.3 2010/06/16 17:24:53 garren Exp $
0002 // -*- C++ -*-
0003 //
0004 // -----------------------------------------------------------------------
0005 //                             HEP Random
0006 //                         --- RandLandau ---
0007 //                 inlined functions implementation file
0008 // -----------------------------------------------------------------------
0009 // This file is part of Geant4 (simulation toolkit for HEP).
0010  
0011 // =======================================================================
0012 // Gabriele Cosmo - Created: 19th August 1998
0013 // M Fischler     - Added some inline methods that had been in the .cc file,
0014 //          which are shells for calls to transform(r): 30 Sep 1999
0015 // =======================================================================
0016 
0017 // Constructors
0018 // ------------
0019 
0020 namespace CLHEP {
0021 
0022 RandLandau::RandLandau(HepRandomEngine & anEngine )
0023 : HepRandom(), localEngine(&anEngine, do_nothing_deleter())
0024 {}
0025 
0026 RandLandau::RandLandau(HepRandomEngine * anEngine ) 
0027 : HepRandom(), localEngine(anEngine) 
0028 {}
0029 
0030 // Getting a Landau deviate - static methods
0031 // -------------------------------------------
0032 
0033 double RandLandau::shoot()
0034 {
0035   HepRandomEngine* anEngine = HepRandom::getTheEngine();
0036   return transform (anEngine->flat());
0037 }
0038 
0039 double RandLandau::shoot( HepRandomEngine* anotherEngine )
0040 { 
0041   return transform  (anotherEngine->flat());
0042 }
0043 
0044 // Getting a Landau deviate - instance methods
0045 // ---------------------------------------------
0046 
0047 double RandLandau::fire() {
0048   return transform(localEngine->flat());
0049 }
0050 
0051 double RandLandau::operator()() {
0052   return transform(localEngine->flat());
0053 }
0054 
0055 }  // namespace CLHEP