File indexing completed on 2024-04-06 12:04:38
0001 #ifndef DataFormats_L1Trigger_CaloSpare_h
0002 #define DataFormats_L1Trigger_CaloSpare_h
0003
0004 #include "DataFormats/L1Trigger/interface/L1Candidate.h"
0005 #include "DataFormats/L1Trigger/interface/BXVector.h"
0006
0007 namespace l1t {
0008
0009 class CaloSpare;
0010 typedef BXVector<CaloSpare> CaloSpareBxCollection;
0011
0012 class CaloSpare : public L1Candidate {
0013 public:
0014 enum CaloSpareType { HFBitCount, HFRingSum, Tau, Centrality, V2 };
0015
0016 CaloSpare() {}
0017 CaloSpare(const LorentzVector& p4, CaloSpareType type, int pt = 0, int eta = 0, int phi = 0, int qual = 0);
0018
0019 CaloSpare(const PolarLorentzVector& p4, CaloSpareType type, int pt = 0, int eta = 0, int phi = 0, int qual = 0);
0020
0021 ~CaloSpare() override;
0022
0023 void setType(CaloSpareType type);
0024
0025 int GetRing(unsigned index) const;
0026 void SetRing(unsigned index, int value);
0027
0028 CaloSpareType getType() const;
0029
0030 private:
0031
0032 CaloSpareType type_;
0033
0034
0035
0036 };
0037
0038 }
0039
0040 #endif