CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_1/src/CalibFormats/CastorObjects/interface/CastorCoderDb.h

Go to the documentation of this file.
00001 #ifndef CASTOR_CODER_DB_H
00002 #define CASTOR_CODER_DB_H
00003 
00004 #include "CalibFormats/CastorObjects/interface/CastorChannelCoder.h"
00005 #include "CalibFormats/CastorObjects/interface/CastorCoder.h"
00006 
00013 class CastorQIECoder;
00014 class CastorQIEShape;
00015 
00016 class CastorCoderDb : public CastorCoder {
00017 public:
00018   CastorCoderDb (const CastorQIECoder& fCoder, const CastorQIEShape& fShape);
00019 
00020   virtual void adc2fC(const CastorDataFrame& df, CaloSamples& lf) const;
00021  
00022   virtual void fC2adc(const CaloSamples& clf, CastorDataFrame& df, int fCapIdOffset) const;
00023  
00024  private:
00025   template <class Digi> void adc2fC_ (const Digi& df, CaloSamples& clf) const;
00026   template <class Digi> void fC2adc_ (const CaloSamples& clf, Digi& df, int fCapIdOffset) const;
00027 
00028   const CastorQIECoder* mCoder;
00029   const CastorQIEShape* mShape;
00030 };
00031 
00032 #endif