ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArG4
LArG4EC
src
LArEndcapPresamplerCalculator.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
// LArEndcapPresamplerCalculator.hh
6
// Prepared 27-Dec-2002 Bill Seligman
7
8
// This is a separate "calculator" class for the endcap presampler.
9
// For more information about what a "calculator" class does, see the
10
// documentation: LArG4/doc/LArG4.ps.
11
12
#ifndef LARG4EC_LARENDCAPPRESAMPLERCALCULATOR_H
13
#define LARG4EC_LARENDCAPPRESAMPLERCALCULATOR_H
14
15
#include "globals.hh"
16
#include "G4ThreeVector.hh"
17
#include "
LArG4Code/LArG4BirksLaw.h
"
18
#include "
LArG4Code/LArG4Identifier.h
"
19
#include "
LArG4Code/LArCalculatorSvcImp.h
"
20
#include "
LArG4Code/LArVG4DetectorParameters.h
"
21
#include <stdexcept>
22
// Forward declarations.
23
class
G4Step;
24
class
LArG4BirksLaw
;
25
26
namespace
LArG4
{
27
class
IECPresamplerGeometry
;
28
}
29
30
class
LArEndcapPresamplerCalculator
:
public
LArCalculatorSvcImp
{
31
public
:
32
33
LArEndcapPresamplerCalculator
(
const
std::string& name, ISvcLocator *pSvcLocator);
34
LArEndcapPresamplerCalculator
(
const
LArEndcapPresamplerCalculator
&) =
delete
;
35
LArEndcapPresamplerCalculator
&
operator=
(
const
LArEndcapPresamplerCalculator
&) =
delete
;
36
virtual
StatusCode
initialize
() override final;
37
39
40
virtual G4float
OOTcut
()
const
override final {
return
m_OOTcut
; }
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
virtual
G4bool
Process
(
const
G4Step*, std::vector<LArHitData>&)
const
override
final
;
49
50
51
private
:
52
// Pointer to geometry routine.
53
ServiceHandle<LArG4::IECPresamplerGeometry>
m_geometry
{
this
,
"GeometryCalculator"
,
"EMECPresamplerGeometry"
};
54
55
std::unique_ptr<LArG4BirksLaw>
m_birksLaw
{};
56
};
57
58
#endif
hitTime
float hitTime(const AFP_SIDSimHit &hit)
Definition
AFP_SIDSimHit.h:39
LArCalculatorSvcImp.h
LArG4BirksLaw.h
LArG4Identifier.h
LArVG4DetectorParameters.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
LArEndcapPresamplerCalculator::m_birksLaw
std::unique_ptr< LArG4BirksLaw > m_birksLaw
Definition
LArEndcapPresamplerCalculator.h:55
LArEndcapPresamplerCalculator::OOTcut
virtual G4float OOTcut() const override final
Definition
LArEndcapPresamplerCalculator.h:40
LArEndcapPresamplerCalculator::isInTime
virtual G4bool isInTime(G4double hitTime) const override final
Definition
LArEndcapPresamplerCalculator.h:43
LArEndcapPresamplerCalculator::Process
virtual G4bool Process(const G4Step *, std::vector< LArHitData > &) const override final
LArEndcapPresamplerCalculator::LArEndcapPresamplerCalculator
LArEndcapPresamplerCalculator(const std::string &name, ISvcLocator *pSvcLocator)
LArEndcapPresamplerCalculator::operator=
LArEndcapPresamplerCalculator & operator=(const LArEndcapPresamplerCalculator &)=delete
LArEndcapPresamplerCalculator::initialize
virtual StatusCode initialize() override final
LArEndcapPresamplerCalculator::m_geometry
ServiceHandle< LArG4::IECPresamplerGeometry > m_geometry
Definition
LArEndcapPresamplerCalculator.h:53
LArEndcapPresamplerCalculator::LArEndcapPresamplerCalculator
LArEndcapPresamplerCalculator(const LArEndcapPresamplerCalculator &)=delete
LArG4BirksLaw
Definition
LArG4BirksLaw.h:8
LArG4::IECPresamplerGeometry
Definition
IECPresamplerGeometry.h:20
ServiceHandle
Definition
ClusterMakerTool.h:36
const
LArG4
Definition
LArWheelCalculatorEnums.h:8
Generated on
for ATLAS Offline Software by
1.17.0