CMS 3D CMS Logo

CaloTPGTranscoder.h
Go to the documentation of this file.
1 #ifndef CALIBFORMATS_CALOTPG_CALOTPGTRANSCODER_H
2 #define CALIBFORMATS_CALOTPG_CALOTPGTRANSCODER_H 1
3 
4 #include <boost/shared_ptr.hpp>
9 
10 class HcalTPGCompressor;
11 class EcalTPGCompressor;
12 
13 namespace edm {
14  class EventSetup;
15 }
16 
25 public:
27  virtual ~CaloTPGTranscoder();
28 
29  enum Mode { All=0, RCT=1, HcalTPG=2, EcalTPG=3 };
31  virtual HcalTriggerPrimitiveSample hcalCompress(const HcalTrigTowerDetId& id, unsigned int sample, int fineGrain) const = 0;
33  virtual EcalTriggerPrimitiveSample ecalCompress(const EcalTrigTowerDetId& id, unsigned int sample, bool fineGrain) const = 0;
35  virtual void rctEGammaUncompress(const HcalTrigTowerDetId& hid, const HcalTriggerPrimitiveSample& hc,
37  unsigned int& et, bool& egVeto, bool& activity) const = 0;
39  virtual void rctJetUncompress(const HcalTrigTowerDetId& hid, const HcalTriggerPrimitiveSample& hc,
40  const EcalTrigTowerDetId& eid, const EcalTriggerPrimitiveSample& ec,
41  unsigned int& et) const = 0;
42 
43  virtual double hcaletValue(const int& ieta, const int& iphi, const int& version, const int& compressedValue) const = 0;
44  virtual double hcaletValue(const HcalTrigTowerDetId& hid, const HcalTriggerPrimitiveSample& hc) const = 0;
45  boost::shared_ptr<const HcalTPGCompressor> getHcalCompressor() const { return hccompress_; }
46  boost::shared_ptr<const EcalTPGCompressor> getEcalCompressor() const { return eccompress_; }
47 private:
48  boost::shared_ptr<const HcalTPGCompressor> hccompress_;
49  boost::shared_ptr<const EcalTPGCompressor> eccompress_;
50 };
51 
52 #endif
boost::shared_ptr< const HcalTPGCompressor > getHcalCompressor() const
boost::shared_ptr< const EcalTPGCompressor > getEcalCompressor() const
boost::shared_ptr< const EcalTPGCompressor > eccompress_
boost::shared_ptr< const HcalTPGCompressor > hccompress_
et
define resolution functions of each parameter
HLT enums.
susybsm::HSCParticleCollection hc
Definition: classes.h:25