44 #ifndef CEXMC_RUN_MANAGER_HH
45 #define CEXMC_RUN_MANAGER_HH
49 #ifdef CEXMC_USE_PERSISTENCY
50 #include <boost/archive/binary_oarchive.hpp>
59 class CexmcEventFastSObject;
60 #ifdef CEXMC_USE_CUSTOM_FILTER
61 class CexmcCustomFilterEval;
73 G4bool overrideExistingProject =
false );
95 #ifdef CEXMC_USE_PERSISTENCY
96 void ReadProject(
void );
98 void SaveProject(
void );
100 void PrintReadRunData(
void )
const;
102 void ReadAndPrintEventsData(
void )
const;
108 void SeekTo(
G4int eventNmb = 1 );
110 void SkipInteractionsWithoutEDTonWrite(
G4bool on =
true );
112 #ifdef CEXMC_USE_CUSTOM_FILTER
113 void SetCustomFilter(
const G4String & cfFileName_ );
140 #ifdef CEXMC_USE_PERSISTENCY
141 boost::archive::binary_oarchive * GetEventsArchive(
void )
const;
143 boost::archive::binary_oarchive * GetFastEventsArchive(
void )
const;
156 #ifdef CEXMC_USE_PERSISTENCY
157 void DoReadEventLoop(
G4int nEvent );
159 void SaveCurrentTPTEvent(
const CexmcEventFastSObject & evFastSObject,
203 #ifdef CEXMC_USE_PERSISTENCY
205 boost::archive::binary_oarchive * eventsArchive;
207 boost::archive::binary_oarchive * fastEventsArchive;
209 CexmcRunSObject sObject;
211 #ifdef CEXMC_USE_CUSTOM_FILTER
212 CexmcCustomFilterEval * customFilter;
337 #ifdef CEXMC_USE_PERSISTENCY
339 inline boost::archive::binary_oarchive * CexmcRunManager::GetEventsArchive(
342 return eventsArchive;
346 inline boost::archive::binary_oarchive * CexmcRunManager::GetFastEventsArchive(
349 return fastEventsArchive;
353 inline void CexmcRunManager::ReplayEvents(
G4int nEvents )
365 inline void CexmcRunManager::SeekTo(
G4int eventNmb )
374 inline void CexmcRunManager::SkipInteractionsWithoutEDTonWrite(
G4bool on )