CMS 3D CMS Logo

HcalCoderDb.h
Go to the documentation of this file.
1 #ifndef HCAL_CODER_DB_H
2 #define HCAL_CODER_DB_H
3 
5 
12 class HcalQIECoder;
13 class HcalQIEShape;
14 
15 class HcalCoderDb : public HcalCoder {
16 public:
17  HcalCoderDb (const HcalQIECoder& fCoder, const HcalQIEShape& fShape);
18 
19  //these need to be overloads instead of templates to avoid linking issues when calling private member function templates
20  void adc2fC(const HBHEDataFrame& df, CaloSamples& lf) const override;
21  void adc2fC(const HODataFrame& df, CaloSamples& lf) const override;
22  void adc2fC(const HFDataFrame& df, CaloSamples& lf) const override;
23  void adc2fC(const ZDCDataFrame& df, CaloSamples& lf) const override;
24  void adc2fC(const HcalCalibDataFrame& df, CaloSamples& lf) const override;
25  void adc2fC(const QIE10DataFrame& df, CaloSamples& lf) const override;
26  void adc2fC(const QIE11DataFrame& df, CaloSamples& lf) const override;
27 
28  void fC2adc(const CaloSamples& clf, HBHEDataFrame& df, int fCapIdOffset) const override;
29  void fC2adc(const CaloSamples& clf, HFDataFrame& df, int fCapIdOffset) const override;
30  void fC2adc(const CaloSamples& clf, HODataFrame& df, int fCapIdOffset) const override;
31  void fC2adc(const CaloSamples& clf, ZDCDataFrame& df, int fCapIdOffset) const override;
32  void fC2adc(const CaloSamples& clf, HcalCalibDataFrame& df, int fCapIdOffset) const override;
33  void fC2adc(const CaloSamples& clf, QIE10DataFrame& df, int fCapIdOffset) const override;
34  void fC2adc(const CaloSamples& clf, QIE11DataFrame& df, int fCapIdOffset) const override;
35 
36 private:
37  template <class Digi> void adc2fC_ (const Digi& df, CaloSamples& clf) const;
38  template <class Digi> void fC2adc_ (const CaloSamples& clf, Digi& df, int fCapIdOffset) const;
39 
42 };
43 
44 #endif
void adc2fC_(const Digi &df, CaloSamples &clf) const
Definition: HcalCoderDb.cc:15
void fC2adc(const CaloSamples &clf, HBHEDataFrame &df, int fCapIdOffset) const override
Definition: HcalCoderDb.cc:76
std::tuple< unsigned int, int, int, DigiType, int, int, int, float > Digi
Definition: GenericDigi.h:30
void adc2fC(const HBHEDataFrame &df, CaloSamples &lf) const override
Definition: HcalCoderDb.cc:68
HcalCoderDb(const HcalQIECoder &fCoder, const HcalQIEShape &fShape)
Definition: HcalCoderDb.cc:10
void fC2adc_(const CaloSamples &clf, Digi &df, int fCapIdOffset) const
Definition: HcalCoderDb.cc:39
const HcalQIEShape * mShape
Definition: HcalCoderDb.h:41
const HcalQIECoder * mCoder
Definition: HcalCoderDb.h:40