ATLAS Offline Software
Loading...
Searching...
No Matches
TrackProcessorUserActionPassBack.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_GEANT4TOOLS_TRACKPROCESSORUSERACTIONPASSBACK_H
6#define ISF_GEANT4TOOLS_TRACKPROCESSORUSERACTIONPASSBACK_H
7
9
11#include "GaudiKernel/ServiceHandle.h"
12
15
16#include <string>
17
18// forward declarations
19
20// Geant4
21class G4LogicalVolume;
22
23namespace ISF {
24 class ISFParticle;
25 class ITruthBinding;
26}
27
29
30namespace G4UA{
31
32 namespace iGeant4{
33
35 {
36
37 public:
38
48
50 private:
53 void ISFSteppingAction(const G4Step*, ISF::ISFParticle *curISP) override final;
54
56
58 ISF::TruthBinding* newTruthBinding(const G4Track* aTrack, HepMC::GenParticlePtr currentGenParticle) const;
59
60 ISF::ISFParticle* newISFParticle(G4Track* aTrack,
61 const ISF::ISFParticle* parent,
62 HepMC::GenParticlePtr currentGenParticle,
64
66 void returnParticleToISF( G4Track *aTrack,
67 const ISF::ISFParticle *parentISP,
68 HepMC::GenParticlePtr currentGenParticle,
70
73
74 }; // class TrackProcessorUserActionPassBack
75
76 }// iGeant4
77
78}// G4UA
79
80#endif // ISF_GEANT4TOOLS_TRACKPROCESSORUSERACTIONPASSBACK_H
ISF::IParticleBroker * m_particleBrokerQuick
quick access avoiding gaudi overhead
ISF::ISFParticle * newISFParticle(G4Track *aTrack, const ISF::ISFParticle *parent, HepMC::GenParticlePtr currentGenParticle, AtlasDetDescr::AtlasRegion nextGeoID)
ISF::TruthBinding * newTruthBinding(const G4Track *aTrack, HepMC::GenParticlePtr currentGenParticle) const
create a new TruthBinding object for the given G4Track (may return 0 if unable)
void ISFSteppingAction(const G4Step *, ISF::ISFParticle *curISP) override final
Called by the base class after the G4Track->ISFParticle association has been established.
ISF::IGeoIDSvc * m_geoIDSvcQuick
quick access avoiding gaudi overhead
void returnParticleToISF(G4Track *aTrack, const ISF::ISFParticle *parentISP, HepMC::GenParticlePtr currentGenParticle, AtlasDetDescr::AtlasRegion nextGeoID)
kills the given G4Track, converts it into an ISFParticle and returns it to the ISF particle broker
The interface to chose between the sub geometry services, realized as an AlgTool since it does not ha...
Definition IGeoIDSvc.h:41
@ class IParticleBroker
The generic ISF particle definition,.
Definition ISFParticle.h:42
AtlasRegion
A simple enum of ATLAS regions and sub-detectors.
Definition AtlasRegion.h:21
GenParticle * GenParticlePtr
Definition GenParticle.h:37
ISFParticleOrderedQueue.
double passBackEkinThreshold
properties to define which particles are returned to ISF