ATLAS Offline Software
LArG4H6COLDTCMod0Calculator.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 // LArG4H6COLDTCMod0Calculator
6 // Prepared 8-March-2004: Mohsen Khakzad
7 // Updated for GeoModelize simulations 27-May-2007: P. Strizenec
8 
9 // Defines constants specific to a single FCAL module.
10 
11 #ifndef LArG4H6COLDTCMod0Calculator_H
12 #define LArG4H6COLDTCMod0Calculator_H
13 
16 #include "AthenaKernel/Units.h"
17 
18 #include "globals.hh"
19 
21 
22 namespace Units = Athena::Units;
23 
25 {
26 public:
27 
28  LArG4H6COLDTCMod0Calculator(const std::string& name, ISvcLocator* pSvcLocator);
29  virtual StatusCode initialize() override final;
30  // destructor
32 
33  virtual G4float OOTcut() const override final { return m_OOTcut; }
34 
35  virtual G4bool Process(const G4Step*, std::vector<LArHitData>&) const override final;
36 
37  virtual G4bool isInTime(G4double hitTime) const override final
38  {
39  return !(hitTime > m_OOTcut);
40  }
41 
42 private:
43  // private datamember handling the hit
44  Gaudi::Property<G4int> m_FCalSampling {this, "FCalSampling", 3};
45 
46  // geometry of ColdTC: overall
47  Gaudi::Property<G4double> m_phiModuleStart {this, "phiModuleStart", 90.*Units::deg};
48  Gaudi::Property<G4double> m_phiModuleEnd {this, "phiModuleEnd", 180.*Units::deg};
49  Gaudi::Property<G4double> m_fullModuleDepth {this, "fullModuleDepth", 3.5*8*Units::cm};
50 
51  // geometry of ColdTC: active argon
52  Gaudi::Property<G4double> m_fullActiveDepth {this, "fullActiveDepth", 0.2*Units::cm};
53  Gaudi::Property<G4double> m_innerActiveRadius {this, "innerActiveRadius", 8.6*Units::cm};
54  Gaudi::Property<G4double> m_outerActiveRadius {this, "outerActiveRadius", 45.05*Units::cm};
55  Gaudi::Property<G4double> m_areaActive {this, "areaActive", 95.994*Units::cm2};
56 
57  // Channel map
59 };
60 #endif
LArG4H6COLDTCMod0Calculator::m_channelMap
LArG4H6COLDTCMod0ChannelMap m_channelMap
Definition: LArG4H6COLDTCMod0Calculator.h:58
LArG4H6COLDTCMod0Calculator::isInTime
virtual G4bool isInTime(G4double hitTime) const override final
Definition: LArG4H6COLDTCMod0Calculator.h:37
LArG4H6COLDTCMod0Calculator::LArG4H6COLDTCMod0Calculator
LArG4H6COLDTCMod0Calculator(const std::string &name, ISvcLocator *pSvcLocator)
LArG4H6COLDTCMod0Calculator::m_innerActiveRadius
Gaudi::Property< G4double > m_innerActiveRadius
Definition: LArG4H6COLDTCMod0Calculator.h:53
LArG4H6COLDTCMod0Calculator::m_fullActiveDepth
Gaudi::Property< G4double > m_fullActiveDepth
Definition: LArG4H6COLDTCMod0Calculator.h:52
deg
#define deg
Definition: SbPolyhedron.cxx:17
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
LArG4H6COLDTCMod0Calculator::m_areaActive
Gaudi::Property< G4double > m_areaActive
Definition: LArG4H6COLDTCMod0Calculator.h:55
cm
const double cm
Definition: Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimParametrization/tools/FCAL_ChannelMap.cxx:25
LArG4H6COLDTCMod0ChannelMap
Definition: LArG4H6COLDTCMod0ChannelMap.h:13
LArG4H6COLDTCMod0Calculator::Process
virtual G4bool Process(const G4Step *, std::vector< LArHitData > &) const override final
LArG4H6COLDTCMod0Calculator::m_outerActiveRadius
Gaudi::Property< G4double > m_outerActiveRadius
Definition: LArG4H6COLDTCMod0Calculator.h:54
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
LArG4H6COLDTCMod0Calculator
Definition: LArG4H6COLDTCMod0Calculator.h:25
LArG4Identifier.h
LArCalculatorSvcImp
Definition: LArCalculatorSvcImp.h:13
LArG4H6COLDTCMod0Calculator::OOTcut
virtual G4float OOTcut() const override final
Definition: LArG4H6COLDTCMod0Calculator.h:33
columnar::final
CM final
Definition: ColumnAccessor.h:106
LArCalculatorSvcImp.h
Athena::Units
Definition: Units.h:45
LArG4H6COLDTCMod0Calculator::m_fullModuleDepth
Gaudi::Property< G4double > m_fullModuleDepth
Definition: LArG4H6COLDTCMod0Calculator.h:49
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
Units.h
Wrapper to avoid constant divisions when using units.
LArG4H6COLDTCMod0Calculator::m_phiModuleEnd
Gaudi::Property< G4double > m_phiModuleEnd
Definition: LArG4H6COLDTCMod0Calculator.h:48
LArG4H6COLDTCMod0Calculator::initialize
virtual StatusCode initialize() override final
LArG4H6COLDTCMod0ChannelMap.h
python.CaloAddPedShiftConfig.default
default
Definition: CaloAddPedShiftConfig.py:43
LArG4H6COLDTCMod0Calculator::m_FCalSampling
Gaudi::Property< G4int > m_FCalSampling
Definition: LArG4H6COLDTCMod0Calculator.h:44
hitTime
float hitTime(const AFP_SIDSimHit &hit)
Definition: AFP_SIDSimHit.h:39
python.SystemOfUnits.cm2
float cm2
Definition: SystemOfUnits.py:103
LArCalculatorSvcImp::m_OOTcut
Gaudi::Property< double > m_OOTcut
Definition: LArCalculatorSvcImp.h:30
LArG4H6COLDTCMod0Calculator::m_phiModuleStart
Gaudi::Property< G4double > m_phiModuleStart
Definition: LArG4H6COLDTCMod0Calculator.h:47