00001 #ifndef CALIBFORMATS_CALOTPG_ECALTPGCOMPRESSOR_H 00002 #define CALIBFORMATS_CALOTPG_ECALTPGCOMPRESSOR_H 1 00003 00004 #include "CalibFormats/CaloObjects/interface/IntegerCaloSamples.h" 00005 #include "DataFormats/EcalDigi/interface/EcalTriggerPrimitiveDigi.h" 00006 class CaloTPGTranscoder; 00007 00014 class EcalTPGCompressor { 00015 public: 00016 EcalTPGCompressor(const CaloTPGTranscoder* coder); 00017 void compress(const IntegerCaloSamples& ics, const std::vector<bool>& fineGrain, EcalTriggerPrimitiveDigi& digi) const; 00018 EcalTriggerPrimitiveSample compress(const EcalTrigTowerDetId& id, unsigned int sample, bool fineGrain) const; 00019 private: 00020 const CaloTPGTranscoder* coder_; 00021 }; 00022 00023 #endif