00001 #ifndef L1GCTREGION_H
00002 #define L1GCTREGION_H
00003
00015 #include "DataFormats/L1CaloTrigger/interface/L1CaloRegion.h"
00016
00017 class L1GctRegion : public L1CaloRegion
00018 {
00019 public:
00020
00021 enum numberOfBits {
00022 kGctRegionNBits = 10,
00023 kGctRegionOFlowBit = 1 << kGctRegionNBits,
00024 kGctRegionMaxValue = kGctRegionOFlowBit - 1
00025 };
00026
00027 L1GctRegion(const unsigned et, const bool overFlow, const bool fineGrain, const unsigned ieta, const unsigned iphi, const int16_t bx);
00028 L1GctRegion(const unsigned et, const bool overFlow, const bool fineGrain, const unsigned ieta, const unsigned iphi);
00029 L1GctRegion(const L1CaloRegion&);
00030 L1GctRegion();
00031
00032 ~L1GctRegion();
00033
00034
00035 unsigned et() const { return overFlow() ? kGctRegionMaxValue : raw()&kGctRegionMaxValue; }
00036
00037
00038 unsigned rctEta() const { return ( empty() ? 12 : id().rctEta() ); }
00039
00040 };
00041
00042 #endif