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;
00052 bool m_fieldOn;
00053 double m_barrelForwardEta;
00054 int m_randSeed;
00055 HepMC_helper::IMCselector* m_visibleToCal;
00056 HepMC_helper::IMCselector* m_visibleToAtlas;
00057 std::vector<int> m_invisibles;
00060 static GlobalEventData* m_instance;
00061
00062 };
00063 }
00064 #endif
00065
00066
00067
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079
00080
00081
00082
00083
00084