00001 #ifndef BesRootIO_h 00002 #define BesRootIO_h 1 00003 00004 00005 #include "RootEventData/TMcHitTof.h" 00006 #include "RootEventData/TMcHitMdc.h" 00007 #include "RootEventData/TMcHitEvent.h" 00008 #include "RootEventData/TDigiEvent.h" 00009 #include "RootEventData/TEmcDigi.h" 00010 #include "G4Event.hh" 00011 #include "TFile.h" 00012 #include "TTree.h" 00013 00014 class BesEventAction; 00015 class G4DigiManager; 00016 00017 class BesRootIO 00018 { 00019 public: 00020 BesRootIO(G4int, G4int, G4int, G4int, 00021 G4int, G4int ,G4int, G4int, G4String); 00022 00023 TFile *f; 00024 TTree *HitTree; 00025 00026 ~BesRootIO(); 00027 00028 public: 00029 void SetMdcDigiFlag(G4int flag) {m_mdcDigiFlag=flag;} 00030 00031 void SaveEmcDigiRootEvent(); 00032 void SaveHitRootEvent(G4int, const G4Event*); 00033 void SaveMdcHitRoot(); 00034 void SaveTofHitRoot(); 00035 private: 00036 G4int m_mdcTruFlag; 00037 G4int m_mdcDigiFlag; 00038 G4int m_tofTruFlag; 00039 G4int m_tofDigiFlag; 00040 G4int m_emcTruFlag; 00041 G4int m_emcDigiFlag; 00042 G4int m_mucTruFlag; 00043 G4int m_mucDigiFlag; 00044 G4String m_rootFile; 00045 00046 00047 Int_t m_trackIndex; 00048 00049 TMcHitEvent* m_TMcHitEvent; 00050 TMcHitTof* m_TMcHitTof; 00051 TMcHitMdc* m_TMcHitMdc; 00052 TEmcDigi* m_TMmcDigi; 00053 00054 G4DigiManager* m_DigiMan; 00055 }; 00056 00057 #endif