Go to the documentation of this file.00001 #ifndef HLTHEV_H
00002 #define HLTHEV_H
00003
00004 #include "TH1.h"
00005 #include "TH2.h"
00006 #include "TFile.h"
00007 #include "TNamed.h"
00008 #include <vector>
00009 #include <map>
00010 #include "TROOT.h"
00011 #include "TChain.h"
00012
00013 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00014
00015 #include "DataFormats/Common/interface/TriggerResults.h"
00016 #include "DataFormats/HeavyIonEvent/interface/Centrality.h"
00017 #include "DataFormats/HeavyIonEvent/interface/EvtPlane.h"
00018 #include "SimDataFormats/HiGenData/interface/GenHIEvent.h"
00019
00020
00021 #include "FWCore/Framework/interface/EventPrincipal.h"
00022 #include "DataFormats/Provenance/interface/Provenance.h"
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #include "HLTrigger/HLTanalyzers/interface/JetUtil.h"
00034 #include "DataFormats/METReco/interface/CaloMETCollection.h"
00035
00036
00037 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerReadoutRecord.h"
00038 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerReadoutSetupFwd.h"
00039 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerObjectMapRecord.h"
00040 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerObjectMapFwd.h"
00041 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerObjectMap.h"
00042
00043
00044 #include "HLTrigger/HLTcore/interface/HLTConfigProvider.h"
00045 #include "L1Trigger/GlobalTriggerAnalyzer/interface/L1GtUtils.h"
00046
00047 typedef std::vector<std::string> MyStrings;
00048
00055 class HLTHeavyIon {
00056 public:
00057 HLTHeavyIon();
00058
00059 void setup(const edm::ParameterSet& pSet, TTree* tree);
00060 void beginRun(const edm::Run& , const edm::EventSetup& );
00061
00063 void analyze(const edm::Handle<edm::TriggerResults> & hltresults,
00064 const edm::Handle<reco::Centrality> & centrality,
00065 const edm::Handle<reco::EvtPlaneCollection> & evtPlanes,
00066 const edm::Handle<edm::GenHIEvent> & hiMC,
00067 edm::EventSetup const& eventSetup,
00068 edm::Event const& iEvent,
00069 TTree* tree);
00070
00071 private:
00072
00073
00074
00075 float *hiEvtPlane;
00076 int nEvtPlanes;
00077 int HltEvtCnt;
00078 int hiBin;
00079 int hiNpix, hiNpixelTracks, hiNtracks, hiNtracksPtCut, hiNtracksEtaCut, hiNtracksEtaPtCut;
00080 float hiHF, hiHFplus, hiHFminus, hiHFhit, hiHFhitPlus, hiHFhitMinus, hiEB, hiET, hiEE, hiEEplus, hiEEminus, hiZDC, hiZDCplus, hiZDCminus;
00081
00082 float fNpart;
00083 float fNcoll;
00084 float fNhard;
00085 float fPhi0;
00086 float fb;
00087
00088 int fNcharged;
00089 int fNchargedMR;
00090 float fMeanPt;
00091 float fMeanPtMR;
00092 float fEtMR;
00093 int fNchargedPtCut;
00094 int fNchargedPtCutMR;
00095
00096
00097 TString * algoBitToName;
00098 TString * techBitToName;
00099
00100
00101 HLTConfigProvider hltConfig_;
00102 L1GtUtils m_l1GtUtils;
00103 std::string processName_;
00104
00105 bool _OR_BXes;
00106 int UnpackBxInEvent;
00107
00108
00109 bool _Debug;
00110 bool _Monte;
00111 };
00112
00113 #endif