CMS 3D CMS Logo

BeamHaloSummary.h
Go to the documentation of this file.
1 #ifndef DATAFORMATS_METRECO_BEAMHALOSUMMARY_H
2 #define DATAFORMATS_METRECO_BEAMHALOSUMMARY_H
3 
4 /*
5  [class]: BeamHaloSummary
6  [authors]: R. Remington, The University of Florida
7  [description]: Container class that stores Ecal,CSC,Hcal, and Global BeamHalo data
8  [date]: October 15, 2009
9 */
10 
14 
19 
22 
23 namespace reco {
24  class BeamHaloInfoProducer;
25 
28  public:
29 
30  //constructors
33 
34  //destructor
35  virtual ~BeamHaloSummary() {}
36 
37  const bool HcalLooseHaloId()const { return !HcalHaloReport.empty() ? HcalHaloReport[0] : false ; }
38  const bool HcalTightHaloId()const { return HcalHaloReport.size() > 1 ? HcalHaloReport[1] : false ; }
39 
40  const bool EcalLooseHaloId()const { return !EcalHaloReport.empty() ? EcalHaloReport[0] : false ; }
41  const bool EcalTightHaloId()const { return EcalHaloReport.size() > 1 ? EcalHaloReport[1] : false ; }
42 
43  const bool CSCLooseHaloId() const { return !CSCHaloReport.empty() ? CSCHaloReport[0] : false ; }
44  const bool CSCTightHaloId() const { return CSCHaloReport.size() > 1 ? CSCHaloReport[1] : false ; }
45  const bool CSCTightHaloIdTrkMuUnveto() const { return CSCHaloReport.size() > 4 ? CSCHaloReport[4] : false ; }
46  const bool CSCTightHaloId2015() const { return CSCHaloReport.size() > 5 ? CSCHaloReport[5] : false ; }
47 
48  const bool GlobalLooseHaloId() const { return !GlobalHaloReport.empty() ? GlobalHaloReport[0] : false ; }
49  const bool GlobalTightHaloId() const { return GlobalHaloReport.size() > 1 ? GlobalHaloReport[1] : false ; }
50  const bool GlobalTightHaloId2016() const { return GlobalHaloReport.size() > 2 ? GlobalHaloReport[2] : false ; }
51  const bool GlobalSuperTightHaloId2016() const { return GlobalHaloReport.size() > 3 ? GlobalHaloReport[3] : false ; }
52 
53  const bool EventSmellsLikeHalo() const { return HcalLooseHaloId() || EcalLooseHaloId() || CSCLooseHaloId() || GlobalLooseHaloId() ; }
54  const bool LooseId() const { return EventSmellsLikeHalo(); }
55  const bool TightId() const { return HcalTightHaloId() || EcalTightHaloId() || CSCTightHaloId() || GlobalTightHaloId() ; }
56  const bool ExtremeTightId ()const { return GlobalTightHaloId() ; }
57 
58  // Getters
59  std::vector<char>& GetHcalHaloReport(){return HcalHaloReport;}
60  const std::vector<char>& GetHcalHaloReport() const { return HcalHaloReport;}
61 
62  std::vector<char>& GetEcalHaloReport(){return EcalHaloReport;}
63  const std::vector<char>& GetEcalHaloReport() const {return EcalHaloReport;}
64 
65  std::vector<char>& GetCSCHaloReport() { return CSCHaloReport ;}
66  const std::vector<char>& GetCSCHaloReport() const { return CSCHaloReport ; }
67 
68  std::vector<char>& GetGlobalHaloReport() { return GlobalHaloReport ;}
69  const std::vector<char>& GetGlobalHaloReport() const {return GlobalHaloReport ; }
70 
71  std::vector<int>& GetHcaliPhiSuspects() { return HcaliPhiSuspects ; }
72  const std::vector<int>& GetHcaliPhiSuspects() const { return HcaliPhiSuspects ; }
73 
74  std::vector<int>& GetEcaliPhiSuspects() { return EcaliPhiSuspects ; }
75  const std::vector<int>& GetEcaliPhiSuspects() const { return EcaliPhiSuspects ; }
76 
77  std::vector<int>& GetGlobaliPhiSuspects() { return GlobaliPhiSuspects ;}
78  const std::vector<int>& GetGlobaliPhiSuspects() const { return GlobaliPhiSuspects ;}
79 
80  std::vector<HaloTowerStrip>& getProblematicStrips() { return problematicStrips ;}
81  const std::vector<HaloTowerStrip>& getProblematicStrips() const { return problematicStrips ;}
82 
83  private:
84  std::vector<char> HcalHaloReport;
85  std::vector<char> EcalHaloReport;
86  std::vector<char> CSCHaloReport;
87  std::vector<char> GlobalHaloReport;
88 
89  std::vector<int> HcaliPhiSuspects;
90  std::vector<int> EcaliPhiSuspects;
91  std::vector<int> GlobaliPhiSuspects;
92 
93  std::vector<HaloTowerStrip> problematicStrips;
94 
95  };
96 
97 }
98 
99 
100 #endif
std::vector< char > & GetEcalHaloReport()
const bool EcalTightHaloId() const
const bool GlobalTightHaloId2016() const
std::vector< char > CSCHaloReport
const bool HcalTightHaloId() const
const bool GlobalLooseHaloId() const
std::vector< int > GlobaliPhiSuspects
const bool LooseId() const
std::vector< char > EcalHaloReport
std::vector< char > GlobalHaloReport
const bool TightId() const
const bool GlobalTightHaloId() const
const std::vector< char > & GetCSCHaloReport() const
std::vector< char > HcalHaloReport
const bool EventSmellsLikeHalo() const
const bool HcalLooseHaloId() const
const bool CSCTightHaloId() const
std::vector< int > HcaliPhiSuspects
const std::vector< char > & GetHcalHaloReport() const
friend class reco::BeamHaloInfoProducer
std::vector< char > & GetCSCHaloReport()
const std::vector< int > & GetHcaliPhiSuspects() const
const std::vector< HaloTowerStrip > & getProblematicStrips() const
const std::vector< char > & GetGlobalHaloReport() const
const std::vector< char > & GetEcalHaloReport() const
std::vector< int > & GetEcaliPhiSuspects()
Definition: L1Track.h:19
const std::vector< int > & GetGlobaliPhiSuspects() const
std::vector< HaloTowerStrip > problematicStrips
const bool CSCTightHaloId2015() const
const bool ExtremeTightId() const
std::vector< int > & GetGlobaliPhiSuspects()
std::vector< int > EcaliPhiSuspects
std::vector< char > & GetHcalHaloReport()
const bool CSCLooseHaloId() const
fixed size matrix
const bool GlobalSuperTightHaloId2016() const
const std::vector< int > & GetEcaliPhiSuspects() const
const bool CSCTightHaloIdTrkMuUnveto() const
std::vector< HaloTowerStrip > & getProblematicStrips()
std::vector< char > & GetGlobalHaloReport()
std::vector< int > & GetHcaliPhiSuspects()
const bool EcalLooseHaloId() const