20 #include "Randomize.h"
27 static void setSeed(
long s);
30 static double flat(
double w);
31 static double flat(
double a,
double b);
33 static long flatInt(
long n);
34 static long flatInt(
long m,
long n);
36 static double exponential();
37 static double exponential(
double mean);
39 static double gauss();
40 static double gauss(
double mean,
double stdDev);
42 static long poisson(
double mean);
44 static double breitWigner(
double a=1.0,
double b=0.2);
45 static double breitWigner(
double a,
double b,
double c);
46 static double breitWignerM2(
double a=1.0,
double b=0.2);
47 static double breitWignerM2(
double a,
double b,
double c);
58 inline void StRandom::setSeed(
long s) { mEngine.setSeed(s); }
59 inline double StRandom::flat() {
return mFlat.shoot(); }
60 inline double StRandom::flat(
double w) {
return mFlat.shoot(w); }
61 inline double StRandom::flat(
double a,
double b) {
return mFlat.shoot(a, b); }
62 inline long StRandom::flatInt(
long n) {
return mFlat.shootInt(n); }
63 inline long StRandom::flatInt(
long m,
long n) {
return mFlat.shootInt(m,n); }
64 inline double StRandom::exponential() {
return mExponential.shoot(); }
65 inline double StRandom::exponential(
double mean) {
return mExponential.shoot(mean); }
66 inline double StRandom::gauss() {
return mGauss.shoot(0, 1); }
67 inline double StRandom::gauss(
double mean,
double stdDev) {
return mGauss.shoot(mean, stdDev); }
68 inline long StRandom::poisson(
double mean) {
return mPoisson.shoot(mean); }
69 inline double StRandom::breitWigner(
double a,
double b) {
return mBreitWigner.shoot(a, b); }
70 inline double StRandom::breitWigner(
double a,
double b,
double c) {
return mBreitWigner.shoot(a, b, c); }
71 inline double StRandom::breitWignerM2(
double a,
double b) {
return mBreitWigner.shootM2(a, b); }
72 inline double StRandom::breitWignerM2(
double a,
double b,
double c) {
return mBreitWigner.shootM2(a, b, c); }