ATLAS Offline Software
Loading...
Searching...
No Matches
Simulation
ISF
ISF_Geant4
ISF_Geant4Tools
src
TrackProcessorUserActionFullG4.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
6
#ifndef ISF_GEANT4TOOLS_TRACKPROCESSORUSERACTIONFULLG4_H
7
#define ISF_GEANT4TOOLS_TRACKPROCESSORUSERACTIONFULLG4_H
8
9
#include "
TrackProcessorUserActionBase.h
"
10
11
#include "
AthenaBaseComps/AthAlgTool.h
"
12
13
#include "
AtlasDetDescr/AtlasRegion.h
"
14
15
#include "
ISF_Interfaces/IEntryLayerTool.h
"
16
#include "
ISF_Interfaces/IGeoIDSvc.h
"
17
18
#include "
ISF_Event/EntryLayer.h
"
19
20
#include "GaudiKernel/ToolHandle.h"
21
#include "GaudiKernel/ServiceHandle.h"
22
23
#include <string>
24
25
// forward declarations
26
27
// Geant4
28
class
G4LogicalVolume;
29
30
namespace
G4UA
{
31
32
namespace
iGeant4
{
33
34
class
TrackProcessorUserActionFullG4
final:
public
::G4UA::iGeant4::TrackProcessorUserActionBase
{
35
public
:
36
struct
Config
37
{
38
Config
() =
delete
;
39
Config
(
const
std::string& name):
40
entryLayerTool
(
""
),
41
geoIDSvc
(
""
,name)
42
{}
43
44
ToolHandle<ISF::IEntryLayerTool>
entryLayerTool
;
46
ServiceHandle<ISF::IGeoIDSvc>
geoIDSvc
;
47
int
truthVolLevel
{1};
48
unsigned
int
verboseLevel
=0;
49
bool
isITkGeometry
{};
50
};
51
52
TrackProcessorUserActionFullG4
(
const
Config
&
config
);
53
virtual
~TrackProcessorUserActionFullG4
() {}
54
55
virtual
void
PreUserTrackingAction
(
const
G4Track*)
override
final
;
56
private
:
59
void
ISFSteppingAction
(
const
G4Step*,
ISF::ISFParticle
*curISP)
override
final
;
60
61
Config
m_config
;
62
63
ISF::EntryLayer
entryLayer
(
const
G4Step* aStep);
64
66
ISF::IEntryLayerTool
*
m_entryLayerToolQuick
;
67
69
ISF::IGeoIDSvc
*
m_geoIDSvcQuick
;
70
71
72
std::map<std::string, int, std::less<std::string> >
m_entryLayerMap
;
73
74
AtlasDetDescr::AtlasRegion
m_nextGeoID
;
75
const
G4Track*
m_currentTrack
;
76
77
};
// class TrackProcessorUserActionFullG4
78
79
}
// iGeant4
80
81
}
// G4UA
82
83
#endif
// ISF_GEANT4TOOLS_TRACKPROCESSORUSERACTIONFULLG4_H
AthAlgTool.h
AtlasRegion.h
EntryLayer.h
IEntryLayerTool.h
IGeoIDSvc.h
TrackProcessorUserActionBase.h
G4UA::iGeant4::TrackProcessorUserActionBase
Definition
TrackProcessorUserActionBase.h:33
G4UA::iGeant4::TrackProcessorUserActionFullG4::~TrackProcessorUserActionFullG4
virtual ~TrackProcessorUserActionFullG4()
Definition
TrackProcessorUserActionFullG4.h:53
G4UA::iGeant4::TrackProcessorUserActionFullG4::entryLayer
ISF::EntryLayer entryLayer(const G4Step *aStep)
Definition
TrackProcessorUserActionFullG4.cxx:169
G4UA::iGeant4::TrackProcessorUserActionFullG4::m_nextGeoID
AtlasDetDescr::AtlasRegion m_nextGeoID
Definition
TrackProcessorUserActionFullG4.h:74
G4UA::iGeant4::TrackProcessorUserActionFullG4::m_currentTrack
const G4Track * m_currentTrack
Definition
TrackProcessorUserActionFullG4.h:75
G4UA::iGeant4::TrackProcessorUserActionFullG4::m_entryLayerMap
std::map< std::string, int, std::less< std::string > > m_entryLayerMap
Definition
TrackProcessorUserActionFullG4.h:72
G4UA::iGeant4::TrackProcessorUserActionFullG4::m_entryLayerToolQuick
ISF::IEntryLayerTool * m_entryLayerToolQuick
access to the ISF Entry Layer tool which is used to record entry-layer collections
Definition
TrackProcessorUserActionFullG4.h:66
G4UA::iGeant4::TrackProcessorUserActionFullG4::TrackProcessorUserActionFullG4
TrackProcessorUserActionFullG4(const Config &config)
Definition
TrackProcessorUserActionFullG4.cxx:39
G4UA::iGeant4::TrackProcessorUserActionFullG4::m_geoIDSvcQuick
ISF::IGeoIDSvc * m_geoIDSvcQuick
access to the central ISF GeoID serice
Definition
TrackProcessorUserActionFullG4.h:69
G4UA::iGeant4::TrackProcessorUserActionFullG4::m_config
Config m_config
Definition
TrackProcessorUserActionFullG4.h:61
G4UA::iGeant4::TrackProcessorUserActionFullG4::ISFSteppingAction
void ISFSteppingAction(const G4Step *, ISF::ISFParticle *curISP) override final
Called by the base class after the G4Track->ISFParticle association has been established.
Definition
TrackProcessorUserActionFullG4.cxx:80
G4UA::iGeant4::TrackProcessorUserActionFullG4::PreUserTrackingAction
virtual void PreUserTrackingAction(const G4Track *) override final
Definition
TrackProcessorUserActionFullG4.cxx:221
ISF::IEntryLayerTool
Definition
IEntryLayerTool.h:26
ISF::IGeoIDSvc
The interface to chose between the sub geometry services, realized as an AlgTool since it does not ha...
Definition
IGeoIDSvc.h:41
ISF::ISFParticle
The generic ISF particle definition,.
Definition
ISFParticle.h:42
ServiceHandle
Definition
ClusterMakerTool.h:36
AtlasDetDescr::AtlasRegion
AtlasRegion
A simple enum of ATLAS regions and sub-detectors.
Definition
AtlasRegion.h:21
G4UA::iGeant4
Definition
MCTruthUserAction.cxx:36
G4UA
for nSW
Definition
CalibrationDefaultProcessing.h:19
ISF::EntryLayer
EntryLayer
Identifiers for the TrackRecordCollections on the boundaries between CaloEntry: Inner Detector - Calo...
Definition
EntryLayer.h:31
config
Definition
PhysicsAnalysis/AnalysisCommon/AssociationUtils/python/config.py:1
Config
Definition
dumpNPs.cxx:47
G4UA::iGeant4::TrackProcessorUserActionFullG4::Config
Definition
TrackProcessorUserActionFullG4.h:37
G4UA::iGeant4::TrackProcessorUserActionFullG4::Config::verboseLevel
unsigned int verboseLevel
Definition
TrackProcessorUserActionFullG4.h:48
G4UA::iGeant4::TrackProcessorUserActionFullG4::Config::entryLayerTool
ToolHandle< ISF::IEntryLayerTool > entryLayerTool
access to the ISF Entry Layer tool which is used to record entry-layer collections
Definition
TrackProcessorUserActionFullG4.h:44
G4UA::iGeant4::TrackProcessorUserActionFullG4::Config::Config
Config()=delete
G4UA::iGeant4::TrackProcessorUserActionFullG4::Config::truthVolLevel
int truthVolLevel
Definition
TrackProcessorUserActionFullG4.h:47
G4UA::iGeant4::TrackProcessorUserActionFullG4::Config::geoIDSvc
ServiceHandle< ISF::IGeoIDSvc > geoIDSvc
access to the central ISF GeoID service
Definition
TrackProcessorUserActionFullG4.h:46
G4UA::iGeant4::TrackProcessorUserActionFullG4::Config::Config
Config(const std::string &name)
Definition
TrackProcessorUserActionFullG4.h:39
G4UA::iGeant4::TrackProcessorUserActionFullG4::Config::isITkGeometry
bool isITkGeometry
Definition
TrackProcessorUserActionFullG4.h:49
Generated on
for ATLAS Offline Software by
1.14.0