Back to home page

EIC code displayed by LXR

 
 

    


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

0001 // $Id: RandGamma.icc,v 1.3 2010/06/16 17:24:53 garren Exp $
0002 // -*- C++ -*-
0003 // 
0004 // -----------------------------------------------------------------------
0005 //                            HEP Random
0006 //                         --- RandGamma ---
0007 //                 inlined functions implementation file
0008 // -----------------------------------------------------------------------
0009  
0010 // =======================================================================
0011 // Gabriele Cosmo - Created: 19th August 1998
0012 // =======================================================================
0013 
0014 namespace CLHEP {
0015 
0016 inline RandGamma::RandGamma(HepRandomEngine & anEngine, double k,
0017                                                         double lambda )
0018 : HepRandom(), localEngine(&anEngine, do_nothing_deleter()),
0019   defaultK(k), defaultLambda(lambda) {}
0020 
0021 inline RandGamma::RandGamma(HepRandomEngine * anEngine, double k,
0022                                                         double lambda )
0023 : HepRandom(), localEngine(anEngine),
0024   defaultK(k), defaultLambda(lambda) {}
0025 
0026 inline double RandGamma::shoot() {
0027   return shoot( 1.0, 1.0 );
0028 }
0029 
0030 inline double RandGamma::shoot( HepRandomEngine* anEngine ) {
0031   return shoot( anEngine, 1.0, 1.0 );
0032 }
0033 
0034 inline double RandGamma::operator()() {
0035   return fire( defaultK, defaultLambda );
0036 }
0037 
0038 inline double RandGamma::operator()( double k, double lambda ) {
0039   return fire( k, lambda );
0040 }
0041 
0042 inline double RandGamma::fire() {
0043   return fire( defaultK, defaultLambda );
0044 }
0045 
0046 }  // namespace CLHEP