ATLAS Offline Software
TrackProcessorUserActionFullG4Tool.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 namespace G4UA
8 {
9 
10  namespace iGeant4
11  {
12 
14  TrackProcessorUserActionFullG4Tool(const std::string& type,
15  const std::string& name,
16  const IInterface* parent)
18  m_config(name)
19  {
20  declareProperty("EntryLayerTool", m_config.entryLayerTool, "ISF Entry Layer Tool");
21  declareProperty("GeoIDSvc", m_config.geoIDSvc, "ISF GeoIDService" );
22  declareProperty("TruthVolumeLevel", m_config.truthVolLevel, "Level in geo hierarchy for the truth volumes");
23  declareProperty("IsITkGeometry", m_config.isITkGeometry, "toggle for ITk");
24  }
25 
26  std::unique_ptr<TrackProcessorUserActionFullG4>
28  {
29  ATH_MSG_DEBUG("Constructing a TrackProcessorUserActionFullG4");
30  if(msgLvl(MSG::VERBOSE)) { m_config.verboseLevel = 10; }
31  else if(msgLvl(MSG::DEBUG)) { m_config.verboseLevel = 5; }
32  auto action = std::make_unique<TrackProcessorUserActionFullG4>(m_config);
33  actionList.eventActions.push_back( action.get() );
34  actionList.trackingActions.push_back( action.get() );
35  actionList.steppingActions.push_back( action.get() );
36  return action;
37  }
38 
39  } // iGeant4
40 
41 } // namespace G4UA
G4UA::iGeant4::TrackProcessorUserActionFullG4Tool::m_config
TrackProcessorUserActionFullG4::Config m_config
Configuration parameters.
Definition: TrackProcessorUserActionFullG4Tool.h:37
G4UA::G4AtlasUserActions
Struct for passing around user actions.
Definition: IUserActionTool.h:32
G4UA::iGeant4::TrackProcessorUserActionFullG4::Config::truthVolLevel
int truthVolLevel
Definition: TrackProcessorUserActionFullG4.h:47
G4UA
for nSW
Definition: CalibrationDefaultProcessing.h:19
G4UA::iGeant4::TrackProcessorUserActionFullG4Tool::makeAndFillAction
virtual std::unique_ptr< TrackProcessorUserActionFullG4 > makeAndFillAction(G4AtlasUserActions &) override final
Create an action for this thread.
Definition: TrackProcessorUserActionFullG4Tool.cxx:27
G4UA::G4AtlasUserActions::trackingActions
std::vector< G4UserTrackingAction * > trackingActions
Definition: IUserActionTool.h:35
G4UA::iGeant4::TrackProcessorUserActionFullG4Tool::TrackProcessorUserActionFullG4Tool
TrackProcessorUserActionFullG4Tool(const std::string &type, const std::string &name, const IInterface *parent)
Standard constructor.
Definition: TrackProcessorUserActionFullG4Tool.cxx:14
G4UA::iGeant4::TrackProcessorUserActionFullG4::Config::verboseLevel
unsigned int verboseLevel
Definition: TrackProcessorUserActionFullG4.h:48
G4UA::iGeant4::TrackProcessorUserActionFullG4::Config::geoIDSvc
ServiceHandle< ISF::IGeoIDSvc > geoIDSvc
access to the central ISF GeoID service
Definition: TrackProcessorUserActionFullG4.h:46
G4UA::iGeant4::TrackProcessorUserActionFullG4::Config::isITkGeometry
bool isITkGeometry
Definition: TrackProcessorUserActionFullG4.h:49
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
test_pyathena.parent
parent
Definition: test_pyathena.py:15
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
G4UA::UserActionToolBase
abstract template utility base-class for G4 user-action tools.
Definition: UserActionToolBase.h:33
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
python.CaloScaleNoiseConfig.action
action
Definition: CaloScaleNoiseConfig.py:77
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TrackProcessorUserActionFullG4Tool.h
DEBUG
#define DEBUG
Definition: page_access.h:11
G4UA::G4AtlasUserActions::eventActions
std::vector< G4UserEventAction * > eventActions
Definition: IUserActionTool.h:34
declareProperty
#define declareProperty(n, p, h)
Definition: BaseFakeBkgTool.cxx:15
python.Constants.VERBOSE
int VERBOSE
Definition: Control/AthenaCommon/python/Constants.py:14
G4UA::G4AtlasUserActions::steppingActions
std::vector< G4UserSteppingAction * > steppingActions
Definition: IUserActionTool.h:36
G4UA::iGeant4::TrackProcessorUserActionFullG4
Definition: TrackProcessorUserActionFullG4.h:34
iGeant4
Definition: Geant4TruthIncident.h:35