1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
#ifndef DataFormats_L1Trigger_CaloSpare_h
#define DataFormats_L1Trigger_CaloSpare_h
#include "DataFormats/L1Trigger/interface/L1Candidate.h"
#include "DataFormats/L1Trigger/interface/BXVector.h"
namespace l1t {
class CaloSpare;
typedef BXVector<CaloSpare> CaloSpareBxCollection;
class CaloSpare : public L1Candidate {
public:
enum CaloSpareType { HFBitCount, HFRingSum, Tau, Centrality, V2 };
CaloSpare() {}
CaloSpare(const LorentzVector& p4, CaloSpareType type, int pt = 0, int eta = 0, int phi = 0, int qual = 0);
CaloSpare(const PolarLorentzVector& p4, CaloSpareType type, int pt = 0, int eta = 0, int phi = 0, int qual = 0);
~CaloSpare() override;
void setType(CaloSpareType type);
int GetRing(unsigned index) const;
void SetRing(unsigned index, int value);
CaloSpareType getType() const;
private:
// type of CaloSpare
CaloSpareType type_;
// additional hardware quantities common to L1 global CaloSpare
// there are currently none
};
} // namespace l1t
#endif
|