ATLAS Offline Software
Loading...
Searching...
No Matches
LArCellEmMiscalib.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef LARCELLREC_LARCELLEMMISCALIB_H
6#define LARCELLREC_LARCELLEMMISCALIB_H
7
16
17#include <utility>
18#include <vector>
19
22
25
27
28class LArEM_ID;
29class CaloIdManager;
30
31namespace CLHEP {
32 class HepRandomEngine;
33}
34
36
37{
38
39 public:
40
41 LArCellEmMiscalib(const std::string& type,
42 const std::string& name,
43 const IInterface* parent) ;
44
45 virtual ~LArCellEmMiscalib()=default;
46
48 virtual StatusCode initialize() override;
49
50 virtual void MakeCorrection (CaloCell* theCell,
51 const EventContext& ctx) const override;
52
53 private:
54
55 static int region(int barrelec, double eta, double phi);
56 void smearingPerRegion (CLHEP::HepRandomEngine* engine);
57
59 const CaloIdManager* m_caloIdMgr = nullptr;
61
63 { this, "RndmSvc", "AthRNGSvc", "" };
64
65 int m_seed;
68 bool m_undo;
69
70 unsigned int m_ncellem;
71 std::vector<float> m_spread1;
72 std::vector<float> m_calib;
73
74 mutable std::once_flag m_initOnce;
75 void initOnce (const EventContext& ctx);
76 SG::ReadCondHandleKey<CaloDetDescrManager> m_caloMgrKey{this,"CaloDetDescrManager", "CaloDetDescrManager"};
77};
78
79#endif // not LARCELLREC_LARCELLEMMISCALIB_H
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
Definition of CaloDetDescrManager.
defines and typedefs for IOVSvc
Data object for each calorimeter readout cell.
Definition CaloCell.h:57
This class provides the client interface for accessing the detector description information common to...
This class initializes the Calo (LAr and Tile) offline identifiers.
std::vector< float > m_spread1
std::once_flag m_initOnce
LArCellEmMiscalib(const std::string &type, const std::string &name, const IInterface *parent)
static int region(int barrelec, double eta, double phi)
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
const CaloDetDescrManager * m_calodetdescrmgr
void initOnce(const EventContext &ctx)
virtual void MakeCorrection(CaloCell *theCell, const EventContext &ctx) const override
virtual StatusCode initialize() override
Constructor.
std::vector< float > m_calib
const LArEM_ID * m_larem_id
void smearingPerRegion(CLHEP::HepRandomEngine *engine)
virtual ~LArCellEmMiscalib()=default
ServiceHandle< IAthRNGSvc > m_rngSvc
const CaloIdManager * m_caloIdMgr
Helper class for LArEM offline identifiers.
Definition LArEM_ID.h:111