CMS 3D CMS Logo

HLTTauElDQMOfflineSource.h

Go to the documentation of this file.
00001 #ifndef HLTriggerOffline_Tau_HLTTauElDQMOfflineSource_H
00002 #define HLTriggerOffline_Tau_HLTTauElDQMOfflineSource_H
00003 
00004 
00005 // Base Class Headers
00006 #include "DataFormats/Common/interface/Handle.h"
00007 #include "DataFormats/HLTReco/interface/TriggerEventWithRefs.h"
00008 #include "FWCore/Framework/interface/EDAnalyzer.h"
00009 #include "FWCore/Framework/interface/Frameworkfwd.h"
00010 #include "FWCore/Framework/interface/Event.h"
00011 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00012 #include "FWCore/ParameterSet/interface/InputTag.h"
00013 #include "DataFormats/Common/interface/RefToBase.h"
00014 #include "DataFormats/Math/interface/LorentzVector.h"
00015 #include <vector>
00016 #include "TDirectory.h"
00017 #include "TH1F.h"
00018 #include "TH2F.h"
00019 
00020 
00021 // DQM core
00022 #include "DQMServices/Core/interface/DQMStore.h"
00023 #include "DQMServices/Core/interface/MonitorElement.h"
00024 
00025 
00026 typedef math::XYZTLorentzVectorD   LV;
00027 typedef std::vector<LV>            LVColl;
00028 
00029 
00030 class HLTTauElDQMOfflineSource : public edm::EDAnalyzer{
00031 public:
00033   explicit HLTTauElDQMOfflineSource(const edm::ParameterSet& pset);
00034 
00036   ~HLTTauElDQMOfflineSource();
00037 
00038   // Operations
00039 
00040   void analyze(const edm::Event & event, const edm::EventSetup&);
00041   void beginJob(const edm::EventSetup&);
00042   void endJob();
00043 
00044 private:
00045   
00046   
00047   
00048   //edm::InputTag m_theL1Seed;
00049   edm::InputTag refCollection_;
00050   std::vector<int> m_theHLTOutputTypes;
00051   std::vector<bool> m_plotiso;
00052   std::vector<std::pair<double,double> > m_plotBounds; 
00053   std::vector<edm::InputTag> m_theHLTCollectionLabels; 
00054   std::vector<std::vector<edm::InputTag> > m_isoNames; // there has to be a better solution
00055   //std::string m_theHltName;
00056   
00057   unsigned int reqNum_;
00058   int   pdgGen_;
00059   double genEtaAcc_;
00060   double genEtAcc_;
00061   std::string outputFile_;
00062   std::string triggerName_;
00063   double thePtMin_ ;
00064   double thePtMax_ ;
00065   unsigned int theNbins_ ;
00066   
00067   std::vector<MonitorElement*> m_etahist;
00068   std::vector<MonitorElement*> m_ethist;
00069   std::vector<MonitorElement*> m_etahistmatch;
00070   std::vector<MonitorElement*> m_ethistmatch;
00071   MonitorElement* m_total;
00072   MonitorElement* m_etgen;
00073   MonitorElement* m_etagen;
00074   
00075 
00076   template <class T> void fillHistos(edm::Handle<trigger::TriggerEventWithRefs>& ,const edm::Event& ,unsigned int,LVColl& );
00077   
00078 
00079 };
00080 #endif

Generated on Tue Jun 9 17:34:09 2009 for CMSSW by  doxygen 1.5.4