CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_13_patch3/src/DQM/RPCMonitorDigi/interface/RPCTTUMonitor.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 // Package:    DQMTtuAnalyzer
00004 // Class:      DQMTtuAnalyzer
00005 // 
00013 //
00014 // Original Author:  Andres Felipe Osorio Oliveros
00015 //         Created:  Wed Sep 30 09:32:55 CEST 2009
00016 // $Id: RPCTTUMonitor.h,v 1.4 2010/04/26 14:07:38 dellaric Exp $
00017 //
00018 //
00019 
00020 
00021 // system include files
00022 #include <memory>
00023 
00024 //... User include files
00025 #include "FWCore/Framework/interface/Frameworkfwd.h"
00026 #include "FWCore/Framework/interface/EDAnalyzer.h"
00027 
00028 #include "FWCore/Framework/interface/Event.h"
00029 #include "FWCore/Framework/interface/MakerMacros.h"
00030 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00031 #include "FWCore/ServiceRegistry/interface/Service.h"
00032 #include "CommonTools/UtilAlgos/interface/TFileService.h"
00033 
00034 //... L1Trigger
00035 
00036 #include <DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerRecord.h>
00037 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerReadoutSetupFwd.h"
00038 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerReadoutSetup.h"
00039 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerReadoutRecord.h"
00040 
00041 #include "DataFormats/L1GlobalMuonTrigger/interface/L1MuGMTReadoutCollection.h"
00042 #include "DataFormats/L1GlobalMuonTrigger/interface/L1MuRegionalCand.h"
00043 #include <DataFormats/L1GlobalMuonTrigger/interface/L1MuGMTExtendedCand.h>
00044 
00045 //... Technical trigger bits
00046 #include <DataFormats/L1GlobalTrigger/interface/L1GtTechnicalTrigger.h>
00047 #include <DataFormats/L1GlobalTrigger/interface/L1GtTechnicalTriggerRecord.h>
00048 
00049 //... For Track Study
00050 #include "DataFormats/TrackReco/interface/TrackFwd.h"
00051 #include "DataFormats/TrackReco/interface/Track.h"
00052 #include "DataFormats/TrackingRecHit/interface/TrackingRecHit.h"
00053 
00054 #include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h"
00055 #include "Geometry/CommonDetUnit/interface/GeomDet.h"
00056 #include "Geometry/Records/interface/TrackerDigiGeometryRecord.h"
00057 
00058 #include "DataFormats/RecoCandidate/interface/RecoCandidate.h"
00059 #include "DataFormats/Math/interface/LorentzVector.h"
00060 #include "DataFormats/TrackReco/interface/Track.h"
00061 #include "DataFormats/MuonReco/interface/Muon.h"
00062 #include "DataFormats/MuonReco/interface/MuonFwd.h"
00063 #include "DataFormats/MuonReco/interface/MuonSelectors.h"
00064 
00065 #include "DQMServices/Core/interface/DQMStore.h"
00066 #include "DQMServices/Core/interface/MonitorElement.h"
00067 //
00068 // class declaration
00069 //
00070 
00071 class RPCTTUMonitor : public edm::EDAnalyzer {
00072 public:
00073   explicit  RPCTTUMonitor(const edm::ParameterSet&);
00074   ~ RPCTTUMonitor();
00075   
00076   int  discriminateGMT( const edm::Event& iEvent, const edm::EventSetup& iSetup );
00077 
00078   void discriminateDecision( bool ,  bool , int );
00079   
00080 private:
00081   virtual void beginJob();
00082   virtual void beginRun(const edm::EventSetup&);
00083   virtual void analyze(const edm::Event&, const edm::EventSetup&);
00084   virtual void endJob() ;
00085   
00086 
00087   MonitorElement * m_ttBitsDecisionData;
00088   MonitorElement * m_ttBitsDecisionEmulator;
00089   MonitorElement * m_bxDistDiffPac[8];
00090   MonitorElement * m_bxDistDiffDt[8];
00091   MonitorElement * m_dataVsemulator[8];  
00092 
00093   DQMStore * dbe;
00094   std::string  ttuFolder   ;
00095   std::string outputFile  ;
00096     
00097   int m_maxttBits;
00098   std::vector<unsigned> m_ttBits;
00099 
00100   bool m_dtTrigger;
00101   bool m_rpcTrigger;
00102 
00103   std::vector<int> m_GMTcandidatesBx;
00104   std::vector<int> m_DTcandidatesBx;
00105   std::vector<int> m_RPCcandidatesBx;
00106 
00107   edm::InputTag m_rpcDigiLabel;
00108   edm::InputTag m_gtReadoutLabel;
00109   edm::InputTag m_gmtReadoutLabel;
00110   edm::InputTag m_rpcTechTrigEmu;
00111   
00112 };
00113