CLHEP 2.4.7.1
C++ Class Library for High Energy Physics
RandGamma.icc
Go to the documentation of this file.
1// $Id: RandGamma.icc,v 1.3 2010/06/16 17:24:53 garren Exp $
2// -*- C++ -*-
3//
4// -----------------------------------------------------------------------
5// HEP Random
6// --- RandGamma ---
7// inlined functions implementation file
8// -----------------------------------------------------------------------
9
10// =======================================================================
11// Gabriele Cosmo - Created: 19th August 1998
12// =======================================================================
13
14namespace CLHEP {
15
16inline RandGamma::RandGamma(HepRandomEngine & anEngine, double k,
17 double lambda )
18: HepRandom(), localEngine(&anEngine, do_nothing_deleter()),
19 defaultK(k), defaultLambda(lambda) {}
20
21inline RandGamma::RandGamma(HepRandomEngine * anEngine, double k,
22 double lambda )
23: HepRandom(), localEngine(anEngine),
24 defaultK(k), defaultLambda(lambda) {}
25
26inline double RandGamma::shoot() {
27 return shoot( 1.0, 1.0 );
28}
29
30inline double RandGamma::shoot( HepRandomEngine* anEngine ) {
31 return shoot( anEngine, 1.0, 1.0 );
32}
33
34inline double RandGamma::operator()() {
35 return fire( defaultK, defaultLambda );
36}
37
38inline double RandGamma::operator()( double k, double lambda ) {
39 return fire( k, lambda );
40}
41
42inline double RandGamma::fire() {
43 return fire( defaultK, defaultLambda );
44}
45
46} // namespace CLHEP
RandGamma(HepRandomEngine &anEngine, double k=1.0, double lambda=1.0)
Definition RandGamma.icc:16
double operator()()
Definition RandGamma.icc:34
static double shoot()
Definition RandGamma.icc:26