CMS 3D CMS Logo

HLTInfo.h
Go to the documentation of this file.
1 #ifndef HLTINFO_H
2 #define HLTINFO_H
3 
4 #include <vector>
5 #include <map>
6 
7 // ROOT
8 #include <TChain.h>
9 #include <TFile.h>
10 #include <TH1.h>
11 #include <TH2.h>
12 #include <TNamed.h>
13 #include <TROOT.h>
14 
15 // CMSSW
33 
34 #include "JetUtil.h"
35 
36 namespace edm {
37  class ConsumesCollector;
38  class ParameterSet;
39 }
40 
41 typedef std::vector<std::string> MyStrings;
42 
52 class HLTInfo {
53 public:
54  //HLTInfo();
55 
56  template <typename T>
59  T& module);
60 
61  template <typename T>
62  HLTInfo(edm::ParameterSet const& pset,
64  T& module);
65 
66  void setup(const edm::ParameterSet& pSet, TTree* tree);
67  void beginRun(const edm::Run& , const edm::EventSetup& );
68 
70  void analyze(const edm::Handle<edm::TriggerResults> & hltresults,
71  const edm::Handle<GlobalAlgBlkBxCollection> & l1results,
72  edm::EventSetup const& eventSetup,
73  edm::Event const& iEvent,
74  TTree* tree);
75 
76 private:
77 
78  HLTInfo();
79 
80  // Tree variables
81  float *hltppt, *hltpeta;
82  int L1EvtCnt,HltEvtCnt,nhltpart;
83 
84  int *trigflag, *l1flag, *l1flag5Bx, *l1techflag;
85  int *trigPrescl, *l1Prescl, *l1techPrescl;
86 
87  TString * algoBitToName;
88  TString * techBitToName;
89  std::vector<std::string> dummyBranches_;
90 
91  //HLTConfigProvider hltConfig_;
92  //L1GtUtils m_l1GtUtils;
93  std::unique_ptr<HLTPrescaleProvider> hltPrescaleProvider_;
95 
96  bool _OR_BXes;
97  int UnpackBxInEvent; // save number of BXs unpacked in event
98 
99  // input variables
100 
101  // L1 uGT menu
102  unsigned long long cache_id_;
103 
104  /*
105  edm::ESHandle<L1TUtmTriggerMenu> menu;
106  //std::map<std::string, L1TUtmAlgorithm> const & algorithmMap_;
107  const std::map<std::string, L1TUtmAlgorithm>* algorithmMap_;
108  */
109  bool _Debug;
110 
111 
112 };
113 
114 template <typename T>
117  T& module) :
118  HLTInfo(pset, iC, module) {
119 }
120 
121 template <typename T>
124  T& module) :
125  HLTInfo() {
126  hltPrescaleProvider_.reset(new HLTPrescaleProvider(pset, iC, module));
127 }
128 
129 #endif
bool _Debug
Definition: HLTInfo.h:109
std::vector< std::string > dummyBranches_
Definition: HLTInfo.h:89
int nhltpart
Definition: HLTInfo.h:82
HLTInfo()
Definition: HLTInfo.cc:22
virtual example_stream void analyze(const edm::Event &, const edm::EventSetup &) override
unsigned long long cache_id_
Definition: HLTInfo.h:102
def setup(process, global_tag, zero_tesla=False)
Definition: GeneralSetup.py:1
std::vector< std::string > MyStrings
Definition: HLTInfo.h:41
std::string processName_
Definition: HLTInfo.h:94
int iEvent
Definition: GenABIO.cc:230
int UnpackBxInEvent
Definition: HLTInfo.h:97
TString * algoBitToName
Definition: HLTInfo.h:87
TString * techBitToName
Definition: HLTInfo.h:88
bool _OR_BXes
Definition: HLTInfo.h:96
int * trigPrescl
Definition: HLTInfo.h:85
HLT enums.
int * trigflag
Definition: HLTInfo.h:84
Definition: tree.py:1
float * hltppt
Definition: HLTInfo.h:81
long double T
Definition: vlib.h:208
Definition: Run.h:43
std::unique_ptr< HLTPrescaleProvider > hltPrescaleProvider_
Definition: HLTInfo.h:93