Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:58:11

0001 #ifndef HCALCODER_H
0002 #define HCALCODER_H 1
0003 
0004 #include "DataFormats/HcalDigi/interface/HBHEDataFrame.h"
0005 #include "DataFormats/HcalDigi/interface/HFDataFrame.h"
0006 #include "DataFormats/HcalDigi/interface/HODataFrame.h"
0007 #include "DataFormats/HcalDigi/interface/HcalCalibDataFrame.h"
0008 #include "DataFormats/HcalDigi/interface/ZDCDataFrame.h"
0009 #include "DataFormats/HcalDigi/interface/QIE10DataFrame.h"
0010 #include "DataFormats/HcalDigi/interface/QIE11DataFrame.h"
0011 #include "CalibFormats/CaloObjects/interface/CaloSamples.h"
0012 
0013 /** \class HcalCoder
0014     
0015     Abstract interface of a coder/decoder which converts ADC values to
0016     and from femtocolumbs of collected charge.
0017 
0018 */
0019 class HcalCoder {
0020 public:
0021   virtual void adc2fC(const HBHEDataFrame& df, CaloSamples& lf) const = 0;
0022   virtual void adc2fC(const HODataFrame& df, CaloSamples& lf) const = 0;
0023   virtual void adc2fC(const HFDataFrame& df, CaloSamples& lf) const = 0;
0024   virtual void adc2fC(const ZDCDataFrame& df, CaloSamples& lf) const = 0;
0025   virtual void adc2fC(const HcalCalibDataFrame& df, CaloSamples& lf) const = 0;
0026   virtual void adc2fC(const QIE10DataFrame& df, CaloSamples& lf) const = 0;
0027   virtual void adc2fC(const QIE11DataFrame& df, CaloSamples& lf) const = 0;
0028   virtual void fC2adc(const CaloSamples& clf, HBHEDataFrame& df, int fCapIdOffset) const = 0;
0029   virtual void fC2adc(const CaloSamples& clf, HFDataFrame& df, int fCapIdOffset) const = 0;
0030   virtual void fC2adc(const CaloSamples& clf, HODataFrame& df, int fCapIdOffset) const = 0;
0031   virtual void fC2adc(const CaloSamples& clf, ZDCDataFrame& df, int fCapIdOffset) const = 0;
0032   virtual void fC2adc(const CaloSamples& clf, HcalCalibDataFrame& df, int fCapIdOffset) const = 0;
0033   virtual void fC2adc(const CaloSamples& clf, QIE10DataFrame& df, int fCapIdOffset) const = 0;
0034   virtual void fC2adc(const CaloSamples& clf, QIE11DataFrame& df, int fCapIdOffset) const = 0;
0035   virtual ~HcalCoder() = default;
0036 };
0037 
0038 #endif