ATLAS Offline Software
LArCalorimeter
LArG4
LArG4Barrel
src
LArG4Barrel/src/PresamplerCalibrationCalculator.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
// LArG4::BarrelPreampler::CalibrationCalculator
6
7
// This class calculates the values needed for calibration hits in the
8
// simulation.
9
10
#ifndef LArG4_BarrelPresampler_CalibrationCalculator_H
11
#define LArG4_BarrelPresampler_CalibrationCalculator_H
12
13
#include "
LArG4Code/LArCalibCalculatorSvcImp.h
"
14
#include "
LArG4Code/LArG4Identifier.h
"
15
#include "
ILArBarrelPresamplerGeometry.h
"
16
17
#include "
CaloG4Sim/SimulationEnergies.h
"
18
19
#include "globals.hh"
20
21
#include <vector>
22
23
// Forward declaractions:
24
class
G4Step;
25
26
// Note the use of nested namespaces (mainly to prevent long names
27
// like LArG4BarrelCalibrationCalculator). This class is contained in
28
// the namespace LArG4::Barrel.
29
30
// Forward declaration for namespace CaloG4.
31
32
namespace
LArG4
{
33
34
namespace
BarrelPresampler {
35
36
// Forward declaration
37
class
Geometry
;
38
39
class
CalibrationCalculator
:
public
LArCalibCalculatorSvcImp
{
40
public
:
41
42
CalibrationCalculator
(
const
std::string&
name
, ISvcLocator *pSvcLocator);
43
StatusCode
initialize
()
override
final
;
44
virtual
~CalibrationCalculator
();
45
46
// The Process method returns a boolean value. If it's true, the
47
// hit can be used by Geant4; if it's false, there's something wrong
48
// with the energy deposit and it should be ignored.
49
50
// For calibration work, most of the time we want the calculator
51
// to determine both the energy and the identifier. However,
52
// sometimes we want it calculate only the identifier (for
53
// escaped energy), or only the energy (no known application
54
// yet, but you can never tell). Use the enum (defined in
55
// VCalibrationCalculator.h) to control any special processing.
56
57
virtual
G4bool
Process
(
const
G4Step*
step
,
LArG4Identifier
&
identifier
,
58
std::vector<G4double> & energies,
59
const
eCalculatorProcessing
process
=
kEnergyAndID
)
const
override
final
;
60
61
private
:
62
// Geometry calculator
63
ServiceHandle<ILArBarrelPresamplerGeometry>
m_geometryCalculator
;
64
65
// Energy calculator
66
CaloG4::SimulationEnergies
m_energyCalculator
;
67
68
};
69
70
}
// namespace BarrelPresampler
71
72
}
// namespace LArG4
73
74
#endif // LArG4_Barrel_CalibrationCalculator_H
LArG4::BarrelPresampler::CalibrationCalculator::CalibrationCalculator
CalibrationCalculator(const std::string &name, ISvcLocator *pSvcLocator)
Definition:
PresamplerCalibrationCalculator.cxx:68
LArG4Identifier
Definition:
LArG4Identifier.h:121
LArCalibCalculatorSvcImp
Definition:
LArCalibCalculatorSvcImp.h:12
LArG4::BarrelPresampler::CalibrationCalculator
Definition:
LArG4Barrel/src/PresamplerCalibrationCalculator.h:39
CaloG4::SimulationEnergies
Definition:
SimulationEnergies.h:47
xAOD::identifier
identifier
Definition:
UncalibratedMeasurement_v1.cxx:15
LArG4
Definition:
LArWheelCalculatorEnums.h:8
SUSY_SimplifiedModel_PostInclude.process
string process
Definition:
SUSY_SimplifiedModel_PostInclude.py:42
LArG4::BarrelPresampler::CalibrationCalculator::m_energyCalculator
CaloG4::SimulationEnergies m_energyCalculator
Definition:
LArG4Barrel/src/PresamplerCalibrationCalculator.h:66
egEnergyCorr::Geometry
Geometry
Definition:
egammaEnergyCorrectionTool.h:340
LArCalibCalculatorSvcImp.h
LArG4::BarrelPresampler::CalibrationCalculator::initialize
StatusCode initialize() override final
Definition:
PresamplerCalibrationCalculator.cxx:75
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
LArG4Identifier.h
LArG4::BarrelPresampler::CalibrationCalculator::~CalibrationCalculator
virtual ~CalibrationCalculator()
Definition:
PresamplerCalibrationCalculator.cxx:81
LArG4::BarrelPresampler::CalibrationCalculator::Process
virtual G4bool Process(const G4Step *step, LArG4Identifier &identifier, std::vector< G4double > &energies, const eCalculatorProcessing process=kEnergyAndID) const override final
Definition:
PresamplerCalibrationCalculator.cxx:85
name
std::string name
Definition:
Control/AthContainers/Root/debug.cxx:228
LArCellBinning.step
step
Definition:
LArCellBinning.py:158
LArG4::kEnergyAndID
@ kEnergyAndID
Definition:
LArG4EnumDefs.h:10
SimulationEnergies.h
LArG4::BarrelPresampler::CalibrationCalculator::m_geometryCalculator
ServiceHandle< ILArBarrelPresamplerGeometry > m_geometryCalculator
Definition:
LArG4Barrel/src/PresamplerCalibrationCalculator.h:63
LArG4::eCalculatorProcessing
eCalculatorProcessing
Definition:
LArG4EnumDefs.h:10
ServiceHandle< ILArBarrelPresamplerGeometry >
ILArBarrelPresamplerGeometry.h
Generated on Fri Jan 10 2025 21:16:19 for ATLAS Offline Software by
1.8.18