00001 //-------------------------------------------------------------------------- 00002 // File and Version Information: 00003 // 00004 // Description: 00005 // 00006 // 00007 // Copyright Information: 00008 // 00009 //------------------------------------------------------------------------ 00010 00011 #ifndef BESGENMODULE_H 00012 #define BESGENMODULE_H 00013 #include "GeneratorModule/GenModule.h" 00014 #include <string> 00015 00016 using std::string; 00017 typedef std::vector<std::string> CommandVector; 00018 00019 class IBesRndmGenSvc; 00020 00021 class BesGenModule:public GenModule { 00022 public: 00023 BesGenModule(const std::string& name, ISvcLocator* pSvcLocator); 00024 virtual ~BesGenModule(); 00025 virtual StatusCode genInitialize(); 00026 virtual StatusCode callGenerator(); 00027 virtual StatusCode genFinalize(); 00028 virtual StatusCode fillEvt(GenEvent* evt); 00029 // StatusCode writeHepevt(); 00030 00031 // Pointer On BesRndmGenSvc 00032 IBesRndmGenSvc* p_BesRndmGenSvc; 00033 static std::string besMcGen_stream; 00034 00035 protected: 00036 // Setable Properties:- 00037 00038 //BesGenModule output file 00039 int m_fortout; 00040 00041 // Event seeds 00042 std::vector<long int> m_seeds; 00043 00044 const char* cardname; 00045 std::string runname; 00046 int Nr; 00047 int mvec[10]; 00048 int nvec[10]; 00049 00050 std::vector<int> m_par; 00051 00052 // event counter 00053 int m_events ; 00054 int n; 00055 int n1; 00056 00057 int m_GenIndex; 00058 00059 int m_SuperIndex; 00060 00061 int m_SubIndex; 00062 00063 // besmcgen parameters 00064 // Ffphot m_ffphot; 00065 00066 // io (LUN-s) for besmcgen 00067 // Ffpholun m_ffpholun; 00068 00069 // Commands to setup besmcgen 00070 //yugw CommandVector m_BesMcGenCommandVector; 00071 00072 // I/O to HEPEVT 00073 // StatusCode restore_Atlas_HEPEVT (void); 00074 00075 // static Atlas_HEPEVT* atlas_HEPEVT; 00076 00077 }; 00078 00079 #endif 00080