00001 //--------------------------------------------------------------- 00002 // Go4 Release Package v2.10-5 (build 21005) 00003 // 03-Nov-2005 00004 //--------------------------------------------------------------- 00005 // The GSI Online Offline Object Oriented (Go4) Project 00006 // Experiment Data Processing at DVEE department, GSI 00007 //--------------------------------------------------------------- 00008 // 00009 //Copyright (C) 2000- Gesellschaft f. Schwerionenforschung, GSI 00010 // Planckstr. 1, 64291 Darmstadt, Germany 00011 //Contact: http://go4.gsi.de 00012 //---------------------------------------------------------------- 00013 //This software can be used under the license agreements as stated 00014 //in Go4License.txt file which is part of the distribution. 00015 //---------------------------------------------------------------- 00016 #ifndef TGO4MBSRANDOM_H 00017 #define TGO4MBSRANDOM_H 00018 00019 #include "Go4EventServer/TGo4MbsSource.h" 00020 #include "Go4Event/TGo4EventSource.h" 00021 00022 #define NUM_PEAK 5 00023 00024 class TGo4MbsRandomParameter; 00025 00032 class TGo4MbsRandom : public TGo4MbsSource { 00033 public: 00034 00035 TGo4MbsRandom(const char* name); 00036 00037 TGo4MbsRandom(); 00038 00039 TGo4MbsRandom(TGo4MbsRandomParameter* par); 00040 00041 virtual ~TGo4MbsRandom(); 00042 00044 virtual Int_t Close(); 00045 00047 virtual Int_t Open(); 00048 00051 virtual Int_t NextEvent(); 00052 00054 virtual s_bufhe * GetBufferHeader(); 00055 00056 private: 00057 00059 Int_t fiDLen; 00060 00062 Int_t fiNumSub; 00063 00065 Int_t fiNumDat; 00066 00068 Short_t* fxEventMem; 00069 00070 UInt_t fuSeed; 00071 00073 void get_rand_seed(); 00074 00075 double gauss_rnd(double mean, double sigma); 00076 00077 double get_int(double low, double high); 00078 00079 long rand_event(long choice); 00080 00081 static double fgdPeak[]; 00082 static double fgdSigma[]; 00083 static double fgdPeak2[]; 00084 static double fgdSigma2[]; 00085 00086 ClassDef(TGo4MbsRandom,1) 00087 }; 00088 00089 #endif //TGO4MBSRANDOM_H 00090 00091 //----------------------------END OF GO4 SOURCE FILE ---------------------