ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Simulation
ISF
ISF_Core
ISF_Interfaces
ISF_Interfaces
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
12
#include "
GeneratorObjects/HepMcParticleLink.h
"
13
14
// StoreGate
15
#include "
StoreGate/ReadHandle.h
"
16
#include "
StoreGate/WriteHandle.h
"
17
18
// Simulation includes
19
#include "
ISF_Event/ISFParticleContainer.h
"
20
21
// forward declarations
22
class
McEventCollection
;
23
class
G4Event;
24
#include "
AtlasHepMC/GenEvent_fwd.h
"
25
26
namespace
ISF
{
27
28
class
ISFParticle
;
29
38
39
class
IInputConverter
:
virtual
public
IInterface {
40
public
:
41
43
virtual
~IInputConverter
(){}
44
46
DeclareInterfaceID
(
ISF::IInputConverter
, 1, 0 );
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
GenEvent_fwd.h
HepMcParticleLink.h
ISFParticleContainer.h
ReadHandle.h
Handle class for reading from StoreGate.
WriteHandle.h
Handle class for recording to StoreGate.
ISF::IInputConverter
Interface to Athena service that converts an input McEventCollection into a container of ISFParticles...
Definition
IInputConverter.h:39
ISF::IInputConverter::~IInputConverter
virtual ~IInputConverter()
Virtual destructor.
Definition
IInputConverter.h:43
ISF::IInputConverter::convertHepMCToG4Event
virtual StatusCode convertHepMCToG4Event(McEventCollection &inputGenEvents, G4Event &outputG4Event, McEventCollection &shadowGenEvents) const =0
Convert selected particles from the given McEventCollection into G4PrimaryParticles and push them int...
ISF::IInputConverter::ISF_to_G4Event
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.
ISF::IInputConverter::convert
virtual StatusCode convert(McEventCollection &inputGenEvents, ISFParticleContainer &simParticles) const =0
Convert selected particles from the given McEventCollection into ISFParticles and push them into the ...
ISF::IInputConverter::DeclareInterfaceID
DeclareInterfaceID(ISF::IInputConverter, 1, 0)
Tell Gaudi which InterfaceID we have.
ISF::IInputConverter::convertHepMCToG4EventLegacy
virtual StatusCode convertHepMCToG4EventLegacy(McEventCollection &inputGenEvents, G4Event &outputG4Event) const =0
Convert selected particles from the given McEventCollection into G4PrimaryParticles and push them int...
ISF::ISFParticle
The generic ISF particle definition,.
Definition
ISFParticle.h:42
McEventCollection
This defines the McEventCollection, which is really just an ObjectVector of McEvent objectsFile: Gene...
Definition
McEventCollection.h:31
HepMC::GenEvent
HepMC3::GenEvent GenEvent
Definition
GenEvent.h:39
ISF
ISFParticleOrderedQueue.
Definition
PrimaryParticleInformation.h:13
ISF::ISFParticleContainer
std::list< ISF::ISFParticle * > ISFParticleContainer
generic ISFParticle container (not necessarily a std::list!)
Definition
ISFParticleContainer.h:23
Generated on
for ATLAS Offline Software by
1.17.0