5#ifndef G4RUNMANAGEMENT_AtlasG4SyncEventUserInfo_H
6#define G4RUNMANAGEMENT_AtlasG4SyncEventUserInfo_H
11#include <condition_variable>
13#include "GaudiKernel/EventContext.h"
20 class HepRandomEngine;
48 std::condition_variable
m_cv;
55 using EventFactoryFunction = std::function<StatusCode(G4Event&, std::unique_ptr<AtlasG4SyncEventUserInfo>)>;
EventIDBase::event_number_t event_number_t
AtlasG4EventUserInfo(const EventContext &ctx)
const EventContext & GetEventContext() const
std::function< StatusCode(G4Event &, std::unique_ptr< AtlasG4SyncEventUserInfo >)> EventFactoryFunction
AtlasG4SyncEventUserInfo(CLHEP::HepRandomEngine *, EventFactoryFunction &&, const EventContext &)
SPSyncInterface SyncInterface() const
event_number_t AthenaEventID() const
std::shared_ptr< G4EventSynchronizationInterface > SPSyncInterface
EventFactoryFunction EventFactory() const
EventFactoryFunction m_event_factory
CLHEP::HepRandomEngine * m_rng_engine
CLHEP::HepRandomEngine * HepRandomEngine()
SPSyncInterface m_sync_interface
std::condition_variable m_cv
bool EventAborted() const
void EventAborted(bool aborted)
EventStatus Status() const
void SetStatus(const EventStatus &)
void WaitStatus(const EventStatus &)