ATLAS Offline Software
Loading...
Searching...
No Matches
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
10
12
14
17
19
20#include "GaudiKernel/ToolHandle.h"
21#include "GaudiKernel/ServiceHandle.h"
22
23#include <string>
24
25// forward declarations
26
27// Geant4
28class G4LogicalVolume;
29
30namespace G4UA{
31
32 namespace iGeant4{
33
35 public:
36 struct Config
37 {
38 Config() = delete;
39 Config(const std::string& name):
41 geoIDSvc("",name)
42 {}
43
44 ToolHandle<ISF::IEntryLayerTool> entryLayerTool;
48 unsigned int verboseLevel=0;
50 };
51
54
55 virtual void PreUserTrackingAction(const G4Track*) override final;
56 private:
59 void ISFSteppingAction(const G4Step*, ISF::ISFParticle *curISP) override final;
60
62
63 ISF::EntryLayer entryLayer(const G4Step* aStep);
64
67
70
71
72 std::map<std::string, int, std::less<std::string> > m_entryLayerMap;
73
75 const G4Track* m_currentTrack;
76
77 }; // class TrackProcessorUserActionFullG4
78
79 }// iGeant4
80
81} // G4UA
82
83#endif // ISF_GEANT4TOOLS_TRACKPROCESSORUSERACTIONFULLG4_H
std::map< std::string, int, std::less< std::string > > m_entryLayerMap
ISF::IEntryLayerTool * m_entryLayerToolQuick
access to the ISF Entry Layer tool which is used to record entry-layer collections
ISF::IGeoIDSvc * m_geoIDSvcQuick
access to the central ISF GeoID serice
void ISFSteppingAction(const G4Step *, ISF::ISFParticle *curISP) override final
Called by the base class after the G4Track->ISFParticle association has been established.
virtual void PreUserTrackingAction(const G4Track *) override final
The interface to chose between the sub geometry services, realized as an AlgTool since it does not ha...
Definition IGeoIDSvc.h:41
The generic ISF particle definition,.
Definition ISFParticle.h:42
AtlasRegion
A simple enum of ATLAS regions and sub-detectors.
Definition AtlasRegion.h:21
EntryLayer
Identifiers for the TrackRecordCollections on the boundaries between CaloEntry: Inner Detector - Calo...
Definition EntryLayer.h:31
ToolHandle< ISF::IEntryLayerTool > entryLayerTool
access to the ISF Entry Layer tool which is used to record entry-layer collections
ServiceHandle< ISF::IGeoIDSvc > geoIDSvc
access to the central ISF GeoID service