CMS 3D CMS Logo

L1RCTElectronIsolationCard.h
Go to the documentation of this file.
1 #ifndef L1RCTElectronIsolationCard_h
2 #define L1RCTElectronIsolationCard_h
3 
5 #include <iostream>
6 #include <vector>
7 
9 
10 // This class handles the electron isolation card. Duh.
11 // Each card has a crate and a cardnumber to identify it when
12 // being called.
13 // The class does not actually have instances of L1RCTRegions but
14 // rather has pointers to regions that were created in L1RCTReceiverCard
15 // for efficiency purposes.
16 
17 class L1RCTLookupTables;
18 
20 public:
21  L1RCTElectronIsolationCard(int crateNumber, int cardNumber, const L1RCTLookupTables *rctLookupTables);
23 
24  int crateNumber() { return crtNo; }
25  int cardNumber() { return cardNo; }
26 
28  void setRegion(int i, const L1RCTRegion &region) { regions.at(i) = region; }
29  // Valid arguments to the following two functions are 0 or 1,
30  // corresponding to region0 or region1
31  unsigned short getIsoElectrons(int i) { return isoElectrons.at(i); }
32 
33  unsigned short getNonIsoElectrons(int i) { return nonIsoElectrons.at(i); }
34  void print();
35  void printEdges() {
36  regions.at(0).printEdges();
37  regions.at(1).printEdges();
38  }
39 
40 private:
41  std::vector<unsigned short> calcElectronCandidates(const L1RCTRegion &region, int regionNum);
42  unsigned short calcMaxSum(unsigned short primaryEt,
43  unsigned short northEt,
44  unsigned short southEt,
45  unsigned short eastEt,
46  unsigned short westEt);
47 
48  unsigned short crtNo; // changed from int
49  unsigned short cardNo; // changed from int
50 
52 
54 
55  std::vector<unsigned short> isoElectrons;
56  std::vector<unsigned short> nonIsoElectrons;
57  std::vector<L1RCTRegion> regions;
58 
59  L1RCTElectronIsolationCard() = delete;
60 };
61 
62 #endif
L1CaloEmCand.h
L1RCTElectronIsolationCard::cardNo
unsigned short cardNo
Definition: L1RCTElectronIsolationCard.h:49
mps_fire.i
i
Definition: mps_fire.py:355
L1RCTElectronIsolationCard::L1RCTElectronIsolationCard
L1RCTElectronIsolationCard()=delete
L1RCTElectronIsolationCard::printEdges
void printEdges()
Definition: L1RCTElectronIsolationCard.h:35
L1RCTElectronIsolationCard::getNonIsoElectrons
unsigned short getNonIsoElectrons(int i)
Definition: L1RCTElectronIsolationCard.h:33
L1RCTElectronIsolationCard::isoElectrons
std::vector< unsigned short > isoElectrons
Definition: L1RCTElectronIsolationCard.h:55
L1RCTElectronIsolationCard::regions
std::vector< L1RCTRegion > regions
Definition: L1RCTElectronIsolationCard.h:57
L1RCTLookupTables
Definition: L1RCTLookupTables.h:11
L1RCTElectronIsolationCard::nonIsoElectrons
std::vector< unsigned short > nonIsoElectrons
Definition: L1RCTElectronIsolationCard.h:56
L1RCTElectronIsolationCard::calcElectronCandidates
std::vector< unsigned short > calcElectronCandidates(const L1RCTRegion &region, int regionNum)
Definition: L1RCTElectronIsolationCard.cc:38
L1RCTElectronIsolationCard::fillElectronCandidates
void fillElectronCandidates()
Definition: L1RCTElectronIsolationCard.cc:23
L1RCTElectronIsolationCard::cardNumber
int cardNumber()
Definition: L1RCTElectronIsolationCard.h:25
L1RCTElectronIsolationCard::crtNo
unsigned short crtNo
Definition: L1RCTElectronIsolationCard.h:48
L1RCTElectronIsolationCard::rctLookupTables_
const L1RCTLookupTables * rctLookupTables_
Definition: L1RCTElectronIsolationCard.h:51
L1RCTElectronIsolationCard::~L1RCTElectronIsolationCard
~L1RCTElectronIsolationCard()
Definition: L1RCTElectronIsolationCard.cc:21
L1RCTElectronIsolationCard::print
void print()
Definition: L1RCTElectronIsolationCard.cc:350
L1RCTElectronIsolationCard::crateNumber
int crateNumber()
Definition: L1RCTElectronIsolationCard.h:24
HLT_2018_cff.region
region
Definition: HLT_2018_cff.py:81479
L1RCTRegion.h
L1RCTElectronIsolationCard::calcMaxSum
unsigned short calcMaxSum(unsigned short primaryEt, unsigned short northEt, unsigned short southEt, unsigned short eastEt, unsigned short westEt)
Definition: L1RCTElectronIsolationCard.cc:335
L1RCTRegion
Definition: L1RCTRegion.h:6
L1RCTElectronIsolationCard::empty
L1RCTRegion empty
Definition: L1RCTElectronIsolationCard.h:53
L1RCTElectronIsolationCard::getIsoElectrons
unsigned short getIsoElectrons(int i)
Definition: L1RCTElectronIsolationCard.h:31
L1RCTElectronIsolationCard
Definition: L1RCTElectronIsolationCard.h:19
L1RCTElectronIsolationCard::setRegion
void setRegion(int i, const L1RCTRegion &region)
Definition: L1RCTElectronIsolationCard.h:28