00001 // @(#)root/mathcore:$Id: TRandom2.h 22866 2008-03-27 15:32:50Z rdm $ 00002 // Author: Rene Brun 04/03/99 00003 00004 /************************************************************************* 00005 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * 00006 * All rights reserved. * 00007 * * 00008 * For the licensing terms see $ROOTSYS/LICENSE. * 00009 * For the list of contributors see $ROOTSYS/README/CREDITS. * 00010 *************************************************************************/ 00011 00012 #ifndef ROOT_TRandom2 00013 #define ROOT_TRandom2 00014 00015 00016 00017 ////////////////////////////////////////////////////////////////////////// 00018 // // 00019 // TRandom2 // 00020 // // 00021 // random number generator class (periodicity > 10**26) // 00022 // // 00023 ////////////////////////////////////////////////////////////////////////// 00024 00025 #ifndef ROOT_TRandom 00026 #include "TRandom.h" 00027 #endif 00028 00029 class TRandom2 : public TRandom { 00030 00031 protected: 00032 UInt_t fSeed1; //Random number generator seed 1 00033 UInt_t fSeed2; //Random number generator seed 2 00034 00035 public: 00036 TRandom2(UInt_t seed=1); 00037 virtual ~TRandom2(); 00038 virtual Double_t Rndm(Int_t i=0); 00039 virtual void RndmArray(Int_t n, Float_t *array); 00040 virtual void RndmArray(Int_t n, Double_t *array); 00041 virtual void SetSeed(UInt_t seed=0); 00042 00043 ClassDef(TRandom2,1) //Random number generator with periodicity of 10**26 00044 }; 00045 00046 R__EXTERN TRandom *gRandom; 00047 00048 #endif