ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Simulation
G4Utilities
G4FastSimulation
src
FastCaloSimTool.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 G4FASTSIMULATION_FASTCALOSIMTOOL_H
6
#define G4FASTSIMULATION_FASTCALOSIMTOOL_H
7
8
/* Fast simulation base include */
9
#include "
G4AtlasTools/FastSimulationBase.h
"
10
/* FastCaloSim parametrization service include */
11
#include "
ISF_FastCaloSimInterfaces/IFastCaloSimParamSvc.h
"
12
/* FastCaloSim calorimeter transportation include */
13
#include "
ISF_FastCaloSimParametrization/IFastCaloSimCaloTransportation.h
"
14
/* FastCaloSim calorimeter extrapolation include */
15
#include "
ISF_FastCaloSimParametrization/IFastCaloSimCaloExtrapolation.h
"
16
/* Geant4 transportation tool */
17
#include "
G4AtlasInterfaces/IG4CaloTransportTool.h
"
18
// Geant4 Punchthrough G4 Tool
19
#include "
G4AtlasInterfaces/IPunchThroughSimWrapper.h
"
20
21
class
G4VFastSimulationModel;
22
23
class
FastCaloSimTool
:
public
FastSimulationBase
24
{
25
public
:
26
27
FastCaloSimTool
(
const
std::string&
type
,
const
std::string& name,
const
IInterface *parent);
28
29
protected
:
33
virtual
G4VFastSimulationModel*
makeFastSimModel
()
override
final
;
34
35
private
:
36
37
// FastCaloSim service
38
ServiceHandle<ISF::IFastCaloSimParamSvc>
m_FastCaloSimSvc
{
this
,
"ISF_FastCaloSimV2ParamSvc"
,
"ISF_FastCaloSimV2ParamSvc"
};
39
// FastCaloSim transportation tool
40
PublicToolHandle<IFastCaloSimCaloTransportation>
m_FastCaloSimCaloTransportation
{
this
,
"FastCaloSimCaloTransportation"
,
"FastCaloSimCaloTransportation"
,
""
};
41
// FastCaloSim extrapolation tool
42
PublicToolHandle<IFastCaloSimCaloExtrapolation>
m_FastCaloSimCaloExtrapolation
{
this
,
"FastCaloSimCaloExtrapolation"
,
"FastCaloSimCaloExtrapolation"
,
""
};
43
// Geant4 transportation tool
44
PublicToolHandle<IG4CaloTransportTool>
m_G4CaloTransportTool
{
this
,
"G4CaloTransportTool"
,
"G4CaloTransportTool"
,
""
};
45
// Geant4 Punchthrough G4 Tool
46
PublicToolHandle<IPunchThroughSimWrapper>
m_PunchThroughSimWrapper
{
this
,
"PunchThroughSimWrapper"
,
"PunchThroughSimWrapper"
,
""
};
47
48
// Name of associated CaloCellContainerSD
49
Gaudi::Property<std::string>
m_CaloCellContainerSDName
{
this
,
"CaloCellContainerSDName"
,
""
,
"Name of the associated CaloCellContainerSD"
};
50
// Flag to enable G4 transportation
51
Gaudi::Property<bool>
m_doG4Transport
{
this
,
"doG4Transport"
,
false
,
"Flag to enable G4 transportation"
};
52
// Flag to enable punch-through simulation
53
Gaudi::Property<bool>
m_doPunchThrough
{
this
,
"doPunchThrough"
,
true
,
"Run punchthrough simulation for particle entering Calo-MS boundary"
};
54
};
55
56
#endif
//G4FASTSIMULATION_FASTCALOSIMTOOL_H
FastSimulationBase.h
IFastCaloSimCaloExtrapolation.h
IFastCaloSimCaloTransportation.h
IFastCaloSimParamSvc.h
IG4CaloTransportTool.h
IPunchThroughSimWrapper.h
FastCaloSimTool::FastCaloSimTool
FastCaloSimTool(const std::string &type, const std::string &name, const IInterface *parent)
Default constructor.
Definition
FastCaloSimTool.cxx:9
FastCaloSimTool::m_doPunchThrough
Gaudi::Property< bool > m_doPunchThrough
Definition
FastCaloSimTool.h:53
FastCaloSimTool::m_FastCaloSimCaloTransportation
PublicToolHandle< IFastCaloSimCaloTransportation > m_FastCaloSimCaloTransportation
Definition
FastCaloSimTool.h:40
FastCaloSimTool::makeFastSimModel
virtual G4VFastSimulationModel * makeFastSimModel() override final
Method to make the actual fast simulation model itself, which will be owned by the tool.
Definition
FastCaloSimTool.cxx:14
FastCaloSimTool::m_doG4Transport
Gaudi::Property< bool > m_doG4Transport
Definition
FastCaloSimTool.h:51
FastCaloSimTool::m_PunchThroughSimWrapper
PublicToolHandle< IPunchThroughSimWrapper > m_PunchThroughSimWrapper
Definition
FastCaloSimTool.h:46
FastCaloSimTool::m_G4CaloTransportTool
PublicToolHandle< IG4CaloTransportTool > m_G4CaloTransportTool
Definition
FastCaloSimTool.h:44
FastCaloSimTool::m_FastCaloSimCaloExtrapolation
PublicToolHandle< IFastCaloSimCaloExtrapolation > m_FastCaloSimCaloExtrapolation
Definition
FastCaloSimTool.h:42
FastCaloSimTool::m_CaloCellContainerSDName
Gaudi::Property< std::string > m_CaloCellContainerSDName
Definition
FastCaloSimTool.h:49
FastCaloSimTool::m_FastCaloSimSvc
ServiceHandle< ISF::IFastCaloSimParamSvc > m_FastCaloSimSvc
Definition
FastCaloSimTool.h:38
FastSimulationBase::FastSimulationBase
FastSimulationBase(const std::string &type, const std::string &name, const IInterface *parent)
Definition
FastSimulationBase.cxx:13
ServiceHandle
Definition
ClusterMakerTool.h:36
type
Generated on
for ATLAS Offline Software by
1.17.0