ATLAS Offline Software
Loading...
Searching...
No Matches
LArCalculatorSvcImp.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#ifndef LARG4CODE_LARCALCULATORSVCIMP_H
6#define LARG4CODE_LARCALCULATORSVCIMP_H
7
8#include "ILArCalculatorSvc.h"
10#include "CLHEP/Units/SystemOfUnits.h"
11
12class LArCalculatorSvcImp: public extends<AthService, ILArCalculatorSvc>
13{
14public:
15 LArCalculatorSvcImp(const std::string& name, ISvcLocator * pSvcLocator)
16 : base_class(name, pSvcLocator) {};
17
18 // Give this method an empty default since it's mostly not used
19 virtual void initializeForSDCreation() override {};
20
21protected:
22 // Birks' law
23 Gaudi::Property<bool> m_BirksLaw{this, "BirksLaw", true};
24
25 // Birks' law, constant k
26 // value updated for G4 10.6.p03 - 1.2 times the previous value of 0.0486 used in all campaigns before MC21.
27 Gaudi::Property<double> m_Birksk{this, "Birksk", 0.05832};
28
29 // OOTcut
30 Gaudi::Property<double> m_OOTcut{this, "OOTcut", 300*CLHEP::ns};
31};
32
33#endif
virtual void initializeForSDCreation() override
Gaudi::Property< bool > m_BirksLaw
LArCalculatorSvcImp(const std::string &name, ISvcLocator *pSvcLocator)
Gaudi::Property< double > m_OOTcut
Gaudi::Property< double > m_Birksk