CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/HLTrigger/HLTanalyzers/interface/HLTBitAnalyzer.h

Go to the documentation of this file.
00001 #include <iostream>
00002 
00003 #include "HLTrigger/HLTanalyzers/interface/EventHeader.h"
00004 #include "HLTrigger/HLTanalyzers/interface/HLTInfo.h"
00005 
00006 #include "FWCore/Framework/interface/Frameworkfwd.h"
00007 #include "FWCore/Framework/interface/MakerMacros.h"
00008 #include "FWCore/Framework/interface/EDAnalyzer.h"
00009 #include "FWCore/Framework/interface/Event.h"
00010 #include "FWCore/Framework/interface/EventSetup.h"
00011 #include "FWCore/Framework/interface/ESHandle.h"
00012 
00013 #include "FWCore/ParameterSet/interface/Registry.h"
00014 
00015 #include "DataFormats/Common/interface/Handle.h"
00016 
00017 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerReadoutRecord.h"
00018 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerReadoutSetupFwd.h"
00019 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerObjectMapRecord.h"
00020 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerObjectMapFwd.h"
00021 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerObjectMap.h"
00022 
00023 #include "SimDataFormats/GeneratorProducts/interface/GenEventInfoProduct.h"
00024 #include "SimDataFormats/PileupSummaryInfo/interface/PileupSummaryInfo.h"  
00025 #include "HLTrigger/HLTanalyzers/interface/HLTMCtruth.h" 
00026 #include "HLTrigger/HLTanalyzers/interface/RECOVertex.h" 
00027 
00035 class HLTBitAnalyzer : public edm::EDAnalyzer {
00036 public:
00037   explicit HLTBitAnalyzer(edm::ParameterSet const& conf);
00038   virtual void analyze(edm::Event const& e, edm::EventSetup const& iSetup);
00039   virtual void endJob();
00040   virtual void beginRun(edm::Run const&, edm::EventSetup const&);
00041 
00042   //  static void fillDescriptions(edm::ConfigurationDescriptions & descriptions); 
00043 
00044   // Analysis tree to be filled
00045   TTree *HltTree;
00046 
00047 private:
00048   // variables persistent across events should be declared here.
00049   //
00051 
00052   EventHeader evt_header_;
00053   HLTInfo     hlt_analysis_;
00054 
00055   HLTMCtruth  mct_analysis_;
00056   RECOVertex  vrt_analysisOffline0_;
00057 
00058   edm::InputTag hltresults_,genEventInfo_;
00059   std::string l1extramc_, l1extramu_;
00060   edm::InputTag m_l1extramu;
00061   edm::InputTag m_l1extraemi;
00062   edm::InputTag m_l1extraemn;
00063   edm::InputTag m_l1extrajetc;
00064   edm::InputTag m_l1extrajetf;
00065   edm::InputTag m_l1extrajet;
00066   edm::InputTag m_l1extrataujet;
00067   edm::InputTag m_l1extramet;
00068   edm::InputTag m_l1extramht;
00069 
00070   edm::InputTag gtReadoutRecord_,gtObjectMap_; 
00071   edm::InputTag gctBitCounts_,gctRingSums_;
00072 
00073   edm::InputTag mctruth_,simhits_; 
00074   edm::InputTag VertexTagOffline0_;
00075   edm::InputTag pileupInfo_;
00076 
00077   int errCnt;
00078   static int errMax() { return 5; }
00079 
00080   std::string _HistName; // Name of histogram file
00081   double _EtaMin,_EtaMax;
00082   TFile* m_file; // pointer to Histogram file
00083         bool _UseTFileService;
00084 
00085 };