GSLRandomEngine
      Base class for all GSL random engines,
      normally user instantiate the derived classes
      which creates internally the generator.
      The main GSL generators (see
      <A HREF="http://www.gnu.org/software/gsl/manual/html_node/Random-number-generator-algorithms.html">
      here</A>) are available as derived classes
      In addition to generate uniform numbers it provides method for
      generating numbers according to pre-defined distributions
      using the GSL functions from
      <A HREF="http://www.gnu.org/software/gsl/manual/html_node/Random-Number-Distributions.html">
      GSL random number distributions</A>.
      @ingroup Random
| virtual | ~GSLRandomEngine() | 
| unsigned int | Binomial(double p, unsigned int n) const | 
| double | Cauchy(double a) const | 
| double | ChiSquare(double nu) const | 
| void | Dir2D(double& x, double& y) const | 
| void | Dir3D(double& x, double& y, double& z) const | 
| double | Exponential(double mu) const | 
| double | FDist(double nu1, double nu2) const | 
| double | Gamma(double a, double b) const | 
| double | Gaussian(double sigma) const | 
| void | Gaussian2D(double sigmaX, double sigmaY, double rho, double& x, double& y) const | 
| double | GaussianRatio(double sigma) const | 
| double | GaussianTail(double a, double sigma) const | 
| double | GaussianZig(double sigma) const | 
| ROOT::Math::GSLRandomEngine | GSLRandomEngine() | 
| ROOT::Math::GSLRandomEngine | GSLRandomEngine(ROOT::Math::GSLRngWrapper* rng) | 
| ROOT::Math::GSLRandomEngine | GSLRandomEngine(const ROOT::Math::GSLRandomEngine&) | 
| void | Initialize() | 
| double | Landau() const | 
| double | LogNormal(double zeta, double sigma) const | 
| vector<unsigned int> | Multinomial(unsigned int ntot, const vector<double>& p) const | 
| string | Name() const | 
| double | operator()() const | 
| ROOT::Math::GSLRandomEngine& | operator=(const ROOT::Math::GSLRandomEngine&) | 
| unsigned int | Poisson(double mu) const | 
| void | RandomArray(double* begin, double* end) const | 
| unsigned int | RndmInt(unsigned int max) const | 
| void | SetSeed(unsigned int seed) const | 
| unsigned int | Size() const | 
| double | tDist(double nu) const | 
| void | Terminate() | 

         default constructor. No creation of rng is done.
         If then Initialize() is called an engine is created
         based on default GSL type (MT)
          create from an existing rng.
          User manage the rng pointer which is then deleted olny by calling Terminate()
{}
         initialize the generator
         If no rng is present the default one based on Mersenne and Twister is created
          Generate an integer number between [0,max-1] (including 0 and max-1)
          if max is larger than available range of algorithm
          an error message is printed and zero is returned
         Generate an array of random numbers.
         The iterators points to the random numbers
 @name Random Distributions
          Implemented using the
          <A HREF="http://www.gnu.org/software/gsl/manual/html_node/Random-Number-Distributions.html">
          GSL Random number Distributions</A>
@{
         Gaussian distribution - default method is Box-Muller (polar method)
         Bivariate Gaussian distribution with correlation
         generate random numbers in a 3D sphere of radious 1
         Multinomial distribution