CMS 3D CMS Logo

EcalLaserDbService.h
Go to the documentation of this file.
1 //
2 // Toyoko Orimoto (Caltech), 10 July 2007
3 // Fabrice Couderc (Saclay), 16 March 2020 : add protection if t > t3 +deltat : t = t3 + deltat
4 //
5 
6 #ifndef EcalLaserDbService_h
7 #define EcalLaserDbService_h
8 
9 #include <memory>
10 #include <tbb/concurrent_unordered_set.h>
11 
16 
19 
24 
26 public:
28 
29  const EcalLaserAlphas* getAlphas() const;
31  const EcalLaserAPDPNRatios* getAPDPNRatios() const;
33  float getLaserCorrection(DetId const& xid, edm::Timestamp const& iTime) const;
34 
35  void setAlphaData(const EcalLaserAlphas* fItem) { mAlphas_ = fItem; }
37  void setAPDPNData(const EcalLaserAPDPNRatios* fItem) { mAPDPNRatios_ = fItem; }
39 
40  void setMaxExtrapolationTimeInSec(int deltaT) { maxExtrapolationTime_ = ((unsigned long long)deltaT) << 32; }
41 
42 private:
47  unsigned long long maxExtrapolationTime_;
48 
49  typedef tbb::concurrent_unordered_set<uint32_t> ErrorMapT;
51 };
52 
53 #endif
EcalLaserDbService::setAPDPNData
void setAPDPNData(const EcalLaserAPDPNRatios *fItem)
Definition: EcalLaserDbService.h:37
EcalLaserDbService::setAlphaData
void setAlphaData(const EcalLaserAlphas *fItem)
Definition: EcalLaserDbService.h:35
EcalLaserAPDPNRatiosRef.h
EcalLaserDbService::getAPDPNRatios
const EcalLaserAPDPNRatios * getAPDPNRatios() const
Definition: EcalLaserDbService.cc:26
EBDetId.h
EEDetId.h
ESProducer.h
EcalLinearCorrections.h
EcalLaserDbService::mAlphas_
const EcalLaserAlphas * mAlphas_
Definition: EcalLaserDbService.h:43
EcalLaserDbService::mLinearCorrections_
const EcalLinearCorrections * mLinearCorrections_
Definition: EcalLaserDbService.h:46
EcalCondObjectContainer
Definition: EcalCondObjectContainer.h:13
EcalLaserDbService::setLinearCorrectionsData
void setLinearCorrectionsData(const EcalLinearCorrections *fItem)
Definition: EcalLaserDbService.h:38
EcalLaserDbService::setMaxExtrapolationTimeInSec
void setMaxExtrapolationTimeInSec(int deltaT)
Definition: EcalLaserDbService.h:40
EcalLaserDbService::setAPDPNRefData
void setAPDPNRefData(const EcalLaserAPDPNRatiosRef *fItem)
Definition: EcalLaserDbService.h:36
DetId
Definition: DetId.h:17
EcalLaserDbService
Definition: EcalLaserDbService.h:25
EcalLaserDbService::EcalLaserDbService
EcalLaserDbService()
Definition: EcalLaserDbService.cc:15
EcalLaserDbService::ErrorMapT
tbb::concurrent_unordered_set< uint32_t > ErrorMapT
Definition: EcalLaserDbService.h:49
Timestamp.h
EcalLaserAlphas.h
EcalLaserDbService::mAPDPNRatiosRef_
const EcalLaserAPDPNRatiosRef * mAPDPNRatiosRef_
Definition: EcalLaserDbService.h:44
EcalLaserDbService::getLinearCorrections
const EcalLinearCorrections * getLinearCorrections() const
Definition: EcalLaserDbService.cc:28
EcalLaserAPDPNRatios.h
EcalLaserDbService::channelsWithInvalidCorrection_
ErrorMapT channelsWithInvalidCorrection_
Definition: EcalLaserDbService.h:50
EcalLaserDbService::maxExtrapolationTime_
unsigned long long maxExtrapolationTime_
Definition: EcalLaserDbService.h:47
EcalLaserDbService::getLaserCorrection
float getLaserCorrection(DetId const &xid, edm::Timestamp const &iTime) const
Definition: EcalLaserDbService.cc:30
ModuleFactory.h
DetId.h
EcalLaserDbService::getAPDPNRatiosRef
const EcalLaserAPDPNRatiosRef * getAPDPNRatiosRef() const
Definition: EcalLaserDbService.cc:24
EcalLaserDbService::mAPDPNRatios_
const EcalLaserAPDPNRatios * mAPDPNRatios_
Definition: EcalLaserDbService.h:45
EcalLaserAPDPNRatios
Definition: EcalLaserAPDPNRatios.h:14
EcalLaserDbService::getAlphas
const EcalLaserAlphas * getAlphas() const
Definition: EcalLaserDbService.cc:22
EcalTimeDependentCorrections
Definition: EcalTimeDependentCorrections.h:14
edm::Timestamp
Definition: Timestamp.h:30