#include <BesTDSWriter.hh>
Public Member Functions | |
BesTDSWriter () | |
BesTDSWriter () | |
void | SaveAll (const G4Event *, int) |
void | SaveAll (const G4Event *, int) |
~BesTDSWriter () | |
~BesTDSWriter () | |
Private Attributes | |
BesMcTruthWriter * | m_mcWriter |
BesMcTruthWriter * | m_mcWriter |
BesRawDataWriter * | m_rawWriter |
BesRawDataWriter * | m_rawWriter |
|
00023 { 00024 m_rawWriter = new BesRawDataWriter; 00025 m_mcWriter = new BesMcTruthWriter; 00026 }
|
|
00029 { 00030 if(m_rawWriter) 00031 delete m_rawWriter; 00032 if(m_mcWriter) 00033 delete m_mcWriter; 00034 }
|
|
|
|
|
|
|
|
00037 { 00038 //interface to event data service 00039 ISvcLocator* svcLocator = Gaudi::svcLocator(); 00040 IDataProviderSvc* evtSvc; 00041 StatusCode sc=svcLocator->service("EventDataSvc", evtSvc); 00042 if (sc.isFailure()) 00043 G4cout<<"Could not accesss EventDataSvc!"<<G4endl; 00044 00045 //save event head 00046 /* 00047 SmartDataPtr<Event::EventHeader> eventHeader(evtSvc,"/Event/EventHeader"); 00048 if (!eventHeader) { 00049 //G4cout<< "Could not find Event Header" << G4endl; 00050 Event::EventHeader *eventHeader = new Event::EventHeader; 00051 StatusCode sc = evtSvc->registerObject("/Event/EventHeader",eventHeader); 00052 } 00053 eventHeader->setEventNumber( evt->GetEventID() ); 00054 eventHeader->setRunNumber( runNumber ); 00055 */ 00056 //retrieve 00057 SmartDataPtr<Event::EventHeader> aEventHeader(evtSvc,"/Event/EventHeader"); 00058 G4int run=aEventHeader->runNumber(); 00059 G4int event=aEventHeader->eventNumber(); 00060 //G4cout<<"BesTDSWriter: runNumber: "<<run<<" eventNumber:"<<event<<G4endl; 00061 00062 00063 //save raw data 00064 m_rawWriter->SaveDigits(); 00065 00066 //save MC Truth 00067 m_mcWriter->SaveMcTruth(); 00068 00069 }
|
|
|
|
|
|
|
|
|