ATLAS Offline Software
Loading...
Searching...
No Matches
IInputConverter.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ISF_INTERFACES_IINPUTCONVERTER_H
6#define ISF_INTERFACES_IINPUTCONVERTER_H 1
7
8// Gaudi
9#include "GaudiKernel/IInterface.h"
10
11//GeneratorObjects
13
14// StoreGate
17
18// Simulation includes
20
21// forward declarations
23class G4Event;
25
26namespace ISF {
27
28 class ISFParticle;
29
38
39 class IInputConverter : virtual public IInterface {
40 public:
41
43 virtual ~IInputConverter(){}
44
47
50 virtual StatusCode convert(McEventCollection& inputGenEvents,
51 ISFParticleContainer& simParticles) const = 0;
52
55 virtual StatusCode convertHepMCToG4Event(
56 McEventCollection& inputGenEvents, G4Event& outputG4Event,
57 McEventCollection& shadowGenEvents) const = 0;
58
61 virtual StatusCode convertHepMCToG4EventLegacy(
62 McEventCollection& inputGenEvents, G4Event& outputG4Event) const = 0;
63
65 virtual void ISF_to_G4Event(G4Event& event,
66 const std::vector<ISF::ISFParticle*>& isp,
67 HepMC::GenEvent* genEvent,
68 HepMC::GenEvent* shadowGenEvent = nullptr,
69 bool useHepMC = false) const = 0;
70 };
71
72} // end of ISF namespace
73
74#endif // ISF_INTERFACES_IINPUTCONVERTER_H
Handle class for reading from StoreGate.
Handle class for recording to StoreGate.
Interface to Athena service that converts an input McEventCollection into a container of ISFParticles...
virtual ~IInputConverter()
Virtual destructor.
virtual StatusCode convertHepMCToG4Event(McEventCollection &inputGenEvents, G4Event &outputG4Event, McEventCollection &shadowGenEvents) const =0
Convert selected particles from the given McEventCollection into G4PrimaryParticles and push them int...
virtual void ISF_to_G4Event(G4Event &event, const std::vector< ISF::ISFParticle * > &isp, HepMC::GenEvent *genEvent, HepMC::GenEvent *shadowGenEvent=nullptr, bool useHepMC=false) const =0
Converts vector of ISF::ISFParticles to G4Event.
virtual StatusCode convert(McEventCollection &inputGenEvents, ISFParticleContainer &simParticles) const =0
Convert selected particles from the given McEventCollection into ISFParticles and push them into the ...
DeclareInterfaceID(ISF::IInputConverter, 1, 0)
Tell Gaudi which InterfaceID we have.
virtual StatusCode convertHepMCToG4EventLegacy(McEventCollection &inputGenEvents, G4Event &outputG4Event) const =0
Convert selected particles from the given McEventCollection into G4PrimaryParticles and push them int...
The generic ISF particle definition,.
Definition ISFParticle.h:42
This defines the McEventCollection, which is really just an ObjectVector of McEvent objectsFile: Gene...
ISFParticleOrderedQueue.
std::list< ISF::ISFParticle * > ISFParticleContainer
generic ISFParticle container (not necessarily a std::list!)