CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MicroGMTIsolationUnit.h
Go to the documentation of this file.
1 #ifndef __l1microgmtisolationunit_h
2 #define __l1microgmtisolationunit_h
3 
9 
10 
11 namespace l1t {
13  public:
14  explicit MicroGMTIsolationUnit (const edm::ParameterSet&);
15  virtual ~MicroGMTIsolationUnit ();
16 
17  // returns the index corresponding to the calo tower sum using the LUT
19  // copies the energy values to the m_towerEnergies map for consistent access
21  // First step done for calo input preparation, calculates strip sums
23  // Second step, only done for the sums needed for final iso requirement
24  int calculate5by5Sum(unsigned index) const;
25 
26  // Checks with LUT isolation for all muons in list, assuming input calo is non-summed
28  // Checks with LUT isolation for all muons in list, assuming input calo is pre-summed
30  // Uses *Extrapolation LUTs to project trajectory to the vertex and adds info to muon
32 
33  private:
40 
41  std::map<tftype, MicroGMTExtrapolationLUT*> m_phiExtrapolationLUTs;
42  std::map<tftype, MicroGMTExtrapolationLUT*> m_etaExtrapolationLUTs;
43 
46 
49 
50  std::vector<int> m_5by1TowerSums;
51  std::map<int, int> m_towerEnergies;
53  };
54 }
55 
56 #endif /* defined(__l1microgmtisolationunit_h) */
std::map< tftype, MicroGMTExtrapolationLUT * > m_etaExtrapolationLUTs
MicroGMTExtrapolationLUT m_BEtaExtrapolation
void extrapolateMuons(MicroGMTConfiguration::InterMuonList &) const
void setTowerSums(const MicroGMTConfiguration::CaloInputCollection &inputs, int bx)
MicroGMTExtrapolationLUT m_OEtaExtrapolation
std::map< int, int > m_towerEnergies
MicroGMTExtrapolationLUT m_FEtaExtrapolation
std::map< tftype, MicroGMTExtrapolationLUT * > m_phiExtrapolationLUTs
MicroGMTExtrapolationLUT m_FPhiExtrapolation
GMTInternalMuonList InterMuonList
MicroGMTRelativeIsolationCheckLUT m_RelIsoCheckMem
MicroGMTCaloIndexSelectionLUT m_IdxSelMemPhi
void calculate5by1Sums(const MicroGMTConfiguration::CaloInputCollection &, int bx)
MicroGMTExtrapolationLUT m_BPhiExtrapolation
void isolate(MicroGMTConfiguration::InterMuonList &) const
int getCaloIndex(MicroGMTConfiguration::InterMuon &) const
MicroGMTExtrapolationLUT m_OPhiExtrapolation
tuple muons
Definition: patZpeak.py:38
MicroGMTCaloIndexSelectionLUT m_IdxSelMemEta
MicroGMTIsolationUnit(const edm::ParameterSet &)
MicroGMTAbsoluteIsolationCheckLUT m_AbsIsoCheckMem
void isolatePreSummed(MicroGMTConfiguration::InterMuonList &muons) const
std::vector< int > m_5by1TowerSums
int calculate5by5Sum(unsigned index) const