CMS 3D CMS Logo

L1RCTElectronIsolationCard.h
Go to the documentation of this file.
1 #ifndef L1RCTElectronIsolationCard_h
2 #define L1RCTElectronIsolationCard_h
3 
4 #include <vector>
5 #include <iostream>
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 
21  public:
22 
24  int cardNumber,
25  const L1RCTLookupTables *rctLookupTables);
27 
28  int crateNumber() {return crtNo;}
29  int cardNumber() {return cardNo;}
30 
32  void setRegion(int i, const L1RCTRegion& region){
33  regions.at(i) = region;
34  }
35  //Valid arguments to the following two functions are 0 or 1,
36  //corresponding to region0 or region1
37  unsigned short getIsoElectrons(int i) {
38  return isoElectrons.at(i);
39  }
40 
41  unsigned short getNonIsoElectrons(int i) {
42  return nonIsoElectrons.at(i);
43  }
44  void print();
45  void printEdges(){
46  regions.at(0).printEdges();
47  regions.at(1).printEdges();
48  }
49 
50  private:
51  std::vector<unsigned short> calcElectronCandidates(const L1RCTRegion& region, int regionNum);
52  unsigned short calcMaxSum(unsigned short primaryEt,unsigned short northEt,
53  unsigned short southEt, unsigned short eastEt,
54  unsigned short westEt);
55 
56  unsigned short crtNo; // changed from int
57  unsigned short cardNo; // changed from int
58 
60 
62 
63  std::vector<unsigned short> isoElectrons;
64  std::vector<unsigned short> nonIsoElectrons;
65  std::vector<L1RCTRegion> regions;
66 
68 };
69 
70 #endif
void setRegion(int i, const L1RCTRegion &region)
std::vector< L1RCTRegion > regions
const L1RCTLookupTables * rctLookupTables_
unsigned short getNonIsoElectrons(int i)
std::vector< unsigned short > nonIsoElectrons
std::vector< unsigned short > isoElectrons
std::vector< unsigned short > calcElectronCandidates(const L1RCTRegion &region, int regionNum)
unsigned short calcMaxSum(unsigned short primaryEt, unsigned short northEt, unsigned short southEt, unsigned short eastEt, unsigned short westEt)