4 // -----------------------------------------------------------------------
7 // inlined functions implementation file
8 // -----------------------------------------------------------------------
10 // =======================================================================
11 // Gabriele Cosmo - Created: 19th August 1998
12 // =======================================================================
16 inline RandGamma::RandGamma(HepRandomEngine & anEngine, double k,
18 : HepRandom(), localEngine(&anEngine, do_nothing_deleter()),
19 defaultK(k), defaultLambda(lambda) {}
21 inline RandGamma::RandGamma(HepRandomEngine * anEngine, double k,
23 : HepRandom(), localEngine(anEngine),
24 defaultK(k), defaultLambda(lambda) {}
26 inline double RandGamma::shoot() {
27 return shoot( 1.0, 1.0 );
30 inline double RandGamma::shoot( HepRandomEngine* anEngine ) {
31 return shoot( anEngine, 1.0, 1.0 );
34 inline double RandGamma::operator()() {
35 return fire( defaultK, defaultLambda );
38 inline double RandGamma::operator()( double k, double lambda ) {
39 return fire( k, lambda );
42 inline double RandGamma::fire() {
43 return fire( defaultK, defaultLambda );