ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArG4
LArG4HEC
src
LArHECLocalCalculator.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
// LArG4HECLocalCalculator.hh
6
7
// Revision history:
8
9
// 17-Feb-2006 : Pavol Strizenec
10
11
#ifndef LARG4HEC_LARG4HECLOCALCALCULATOR_H
12
#define LARG4HEC_LARG4HECLOCALCALCULATOR_H
13
14
#include "
LArG4Code/LArCalculatorSvcImp.h
"
15
#include "CLHEP/Units/SystemOfUnits.h"
16
17
// Forward declarations.
18
class
G4Step;
19
class
LArG4BirksLaw
;
20
21
namespace
LArG4
{
22
namespace
HEC
{
23
class
ILocalGeometry
;
24
}
25
}
26
27
class
LArHECLocalCalculator
:
virtual
public
LArCalculatorSvcImp
{
28
29
public
:
30
LArHECLocalCalculator
(
const
std::string& name, ISvcLocator * pSvcLocator);
31
LArHECLocalCalculator
(
const
LArHECLocalCalculator
&) =
delete
;
32
LArHECLocalCalculator
operator=
(
const
LArHECLocalCalculator
&) =
delete
;
33
virtual
~LArHECLocalCalculator
() =
default
;
34
virtual
StatusCode
initialize
() override final;
35
virtual StatusCode
finalize
() override final;
36
37
virtual G4float
OOTcut
()
const
override final {
return
m_OOTcut
; }
38
39
virtual
G4bool
Process
(
const
G4Step* a_step, std::vector<LArHitData>& hdata)
const
override
final
{
return
this->
Process
(a_step,0, 4.*CLHEP::mm, hdata);}
40
virtual
G4bool
Process
(
const
G4Step* a_step,
int
depthadd,
double
deadzone, std::vector<LArHitData>& hdata)
const
final
;
//FIXME not part of interface...
41
42
// Check if the current hitTime is in-time
43
virtual
G4bool
isInTime
(G4double
hitTime
)
const
override
final
44
{
45
return
!(
hitTime
>
m_OOTcut
);
//FIXME should we be checking the absolute value of hitTime here?
46
}
47
48
private
:
49
ServiceHandle<LArG4::HEC::ILocalGeometry>
m_Geometry
{
this
,
"GeometryCalculator"
,
"LocalHECGeometry"
};
50
Gaudi::Property<G4bool>
m_isX
{
this
,
"IsX"
,
false
};
51
LArG4BirksLaw
*
m_birksLaw
{
nullptr
};
52
};
53
54
#endif
hitTime
float hitTime(const AFP_SIDSimHit &hit)
Definition
AFP_SIDSimHit.h:39
LArCalculatorSvcImp.h
LArCalculatorSvcImp::LArCalculatorSvcImp
LArCalculatorSvcImp(const std::string &name, ISvcLocator *pSvcLocator)
Definition
LArCalculatorSvcImp.h:15
LArCalculatorSvcImp::m_OOTcut
Gaudi::Property< double > m_OOTcut
Definition
LArCalculatorSvcImp.h:30
LArG4BirksLaw
Definition
LArG4BirksLaw.h:8
LArG4::HEC::ILocalGeometry
Definition
ILocalGeometry.h:24
LArHECLocalCalculator::initialize
virtual StatusCode initialize() override final
LArHECLocalCalculator::operator=
LArHECLocalCalculator operator=(const LArHECLocalCalculator &)=delete
LArHECLocalCalculator::~LArHECLocalCalculator
virtual ~LArHECLocalCalculator()=default
LArHECLocalCalculator::m_Geometry
ServiceHandle< LArG4::HEC::ILocalGeometry > m_Geometry
Definition
LArHECLocalCalculator.h:49
LArHECLocalCalculator::m_birksLaw
LArG4BirksLaw * m_birksLaw
Definition
LArHECLocalCalculator.h:51
LArHECLocalCalculator::m_isX
Gaudi::Property< G4bool > m_isX
Definition
LArHECLocalCalculator.h:50
LArHECLocalCalculator::Process
virtual G4bool Process(const G4Step *a_step, int depthadd, double deadzone, std::vector< LArHitData > &hdata) const final
LArHECLocalCalculator::Process
virtual G4bool Process(const G4Step *a_step, std::vector< LArHitData > &hdata) const override final
Definition
LArHECLocalCalculator.h:39
LArHECLocalCalculator::LArHECLocalCalculator
LArHECLocalCalculator(const LArHECLocalCalculator &)=delete
LArHECLocalCalculator::isInTime
virtual G4bool isInTime(G4double hitTime) const override final
Definition
LArHECLocalCalculator.h:43
LArHECLocalCalculator::LArHECLocalCalculator
LArHECLocalCalculator(const std::string &name, ISvcLocator *pSvcLocator)
LArHECLocalCalculator::OOTcut
virtual G4float OOTcut() const override final
Definition
LArHECLocalCalculator.h:37
LArHECLocalCalculator::finalize
virtual StatusCode finalize() override final
ServiceHandle
Definition
ClusterMakerTool.h:36
const
LArG4::HEC
Definition
IHECGeometry.h:21
LArG4
Definition
LArWheelCalculatorEnums.h:8
Generated on
for ATLAS Offline Software by
1.17.0