00001
00002 #ifndef _Atlfast_GlobalEventData_H
00003 #define _Atlfast_GlobalEventData_H
00004
00005
00006
00007
00008 #ifndef STD_VECTOR_H
00009 #include <vector>
00010 #define STD_VECTOR_H
00011 #endif
00012
00013
00014 namespace HepMC_helper{
00015 class IMCselector;
00016 }
00017
00018 namespace Atlfast {
00019 class GlobalEventDataMaker;
00020
00032 class GlobalEventData {
00033 public:
00034
00035 friend GlobalEventDataMaker;
00037 int lumi() {return m_lumi;}
00038 bool fieldOn() {return m_fieldOn;}
00039 double barrelForwardEta() {return m_barrelForwardEta;}
00040 int randSeed() {return m_randSeed;}
00041 HepMC_helper::IMCselector* visibleToCal() {return m_visibleToCal;}
00042 HepMC_helper::IMCselector* visibleToAtlas() {return m_visibleToAtlas;}
00044 static GlobalEventData* Instance();
00045 private:
00047 void setValues(int,bool,double,int,std::vector<int>);
00049 GlobalEventData(){};
00051 int m_lumi;
00053 bool m_fieldOn;
00055 double m_barrelForwardEta;
00057 int m_randSeed;
00059 HepMC_helper::IMCselector* m_visibleToCal;
00061 HepMC_helper::IMCselector* m_visibleToAtlas;
00063 std::vector<int> m_invisibles;
00065 static GlobalEventData* m_instance;
00066
00067 };
00068 }
00069 #endif
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079
00080
00081
00082
00083
00084
00085
00086
00087
00088
00089