File indexing completed on 2024-05-11 03:34:02
0001 #ifndef DataFormats_L1Trigger_EGamma_h
0002 #define DataFormats_L1Trigger_EGamma_h
0003
0004 #include "DataFormats/L1Trigger/interface/L1Candidate.h"
0005 #include "DataFormats/L1Trigger/interface/BXVector.h"
0006 #include "DataFormats/L1Trigger/interface/L1TObjComparison.h"
0007
0008 namespace l1t {
0009
0010 class EGamma;
0011 typedef BXVector<EGamma> EGammaBxCollection;
0012 typedef edm::Ref<EGammaBxCollection> EGammaRef;
0013 typedef edm::RefVector<EGammaBxCollection> EGammaRefVector;
0014 typedef std::vector<EGammaRef> EGammaVectorRef;
0015
0016 typedef ObjectRefBxCollection<EGamma> EGammaRefBxCollection;
0017 typedef ObjectRefPair<EGamma> EGammaRefPair;
0018 typedef ObjectRefPairBxCollection<EGamma> EGammaRefPairBxCollection;
0019
0020 class EGamma : public L1Candidate {
0021 public:
0022 EGamma() { clear_extended(); }
0023
0024
0025 EGamma(const L1Candidate& rhs) : L1Candidate(rhs) { clear_extended(); }
0026
0027 EGamma(const LorentzVector& p4, int pt = 0, int eta = 0, int phi = 0, int qual = 0, int iso = 0);
0028
0029 EGamma(const PolarLorentzVector& p4, int pt = 0, int eta = 0, int phi = 0, int qual = 0, int iso = 0);
0030
0031 ~EGamma() override;
0032
0033 void setTowerIEta(short int ieta);
0034 void setTowerIPhi(short int iphi);
0035 void setRawEt(short int pt);
0036 void setIsoEt(short int iso);
0037 void setFootprintEt(short int fp);
0038 void setNTT(short int ntt);
0039 void setShape(short int s);
0040 void setTowerHoE(short int HoE);
0041
0042 short int towerIEta() const;
0043 short int towerIPhi() const;
0044 short int rawEt() const;
0045 short int isoEt() const;
0046 short int footprintEt() const;
0047 short int nTT() const;
0048 short int shape() const;
0049 short int towerHoE() const;
0050
0051 bool operator==(const l1t::EGamma& rhs) const;
0052 inline bool operator!=(const l1t::EGamma& rhs) const { return !(operator==(rhs)); };
0053
0054 private:
0055 using L1Candidate::operator==;
0056 using L1Candidate::operator!=;
0057
0058 void clear_extended();
0059 short int towerIEta_;
0060 short int towerIPhi_;
0061 short int rawEt_;
0062 short int isoEt_;
0063 short int footprintEt_;
0064 short int nTT_;
0065 short int shape_;
0066 short int towerHoE_;
0067 };
0068
0069 }
0070
0071 #endif