CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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.size() ? HcalHaloReport[0] : false ; }
38  const bool HcalTightHaloId()const { return HcalHaloReport.size() > 1 ? HcalHaloReport[1] : false ; }
39 
40  const bool EcalLooseHaloId()const { return EcalHaloReport.size() ? EcalHaloReport[0] : false ; }
41  const bool EcalTightHaloId()const { return EcalHaloReport.size() > 1 ? EcalHaloReport[1] : false ; }
42 
43  const bool CSCLooseHaloId() const { return CSCHaloReport.size() ? 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.size() ? GlobalHaloReport[0] : false ; }
49  const bool GlobalTightHaloId() const { return GlobalHaloReport.size() > 1 ? GlobalHaloReport[1] : false ; }
50 
51  const bool EventSmellsLikeHalo() const { return HcalLooseHaloId() || EcalLooseHaloId() || CSCLooseHaloId() || GlobalLooseHaloId() ; }
52  const bool LooseId() const { return EventSmellsLikeHalo(); }
53  const bool TightId() const { return HcalTightHaloId() || EcalTightHaloId() || CSCTightHaloId() || GlobalTightHaloId() ; }
54  const bool ExtremeTightId ()const { return GlobalTightHaloId() ; }
55 
56  // Getters
57  std::vector<char>& GetHcalHaloReport(){return HcalHaloReport;}
58  const std::vector<char>& GetHcalHaloReport() const { return HcalHaloReport;}
59 
60  std::vector<char>& GetEcalHaloReport(){return EcalHaloReport;}
61  const std::vector<char>& GetEcalHaloReport() const {return EcalHaloReport;}
62 
63  std::vector<char>& GetCSCHaloReport() { return CSCHaloReport ;}
64  const std::vector<char>& GetCSCHaloReport() const { return CSCHaloReport ; }
65 
66  std::vector<char>& GetGlobalHaloReport() { return GlobalHaloReport ;}
67  const std::vector<char>& GetGlobalHaloReport() const {return GlobalHaloReport ; }
68 
69  std::vector<int>& GetHcaliPhiSuspects() { return HcaliPhiSuspects ; }
70  const std::vector<int>& GetHcaliPhiSuspects() const { return HcaliPhiSuspects ; }
71 
72  std::vector<int>& GetEcaliPhiSuspects() { return EcaliPhiSuspects ; }
73  const std::vector<int>& GetEcaliPhiSuspects() const { return EcaliPhiSuspects ; }
74 
75  std::vector<int>& GetGlobaliPhiSuspects() { return GlobaliPhiSuspects ;}
76  const std::vector<int>& GetGlobaliPhiSuspects() const { return GlobaliPhiSuspects ;}
77 
78  std::vector<HaloTowerStrip>& getProblematicStrips() { return problematicStrips ;}
79  const std::vector<HaloTowerStrip>& getProblematicStrips() const { return problematicStrips ;}
80 
81  private:
82  std::vector<char> HcalHaloReport;
83  std::vector<char> EcalHaloReport;
84  std::vector<char> CSCHaloReport;
85  std::vector<char> GlobalHaloReport;
86 
87  std::vector<int> HcaliPhiSuspects;
88  std::vector<int> EcaliPhiSuspects;
89  std::vector<int> GlobaliPhiSuspects;
90 
91  std::vector<HaloTowerStrip> problematicStrips;
92 
93  };
94 
95 }
96 
97 
98 #endif
std::vector< char > & GetEcalHaloReport()
const bool EcalTightHaloId() 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()
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
const std::vector< int > & GetEcaliPhiSuspects() const
const bool CSCTightHaloIdTrkMuUnveto() const
std::vector< HaloTowerStrip > & getProblematicStrips()
std::vector< char > & GetGlobalHaloReport()
volatile std::atomic< bool > shutdown_flag false
std::vector< int > & GetHcaliPhiSuspects()
const bool EcalLooseHaloId() const