CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/HLTriggerOffline/special/src/HaloTrigger.h

Go to the documentation of this file.
00001 #ifndef HaloTrigger_h
00002 #define HaloTrigger_h
00003 
00004 #include "FWCore/Framework/interface/Frameworkfwd.h"
00005 #include "FWCore/Framework/interface/EDAnalyzer.h"
00006 #include "FWCore/Framework/interface/Event.h"
00007 #include "FWCore/Framework/interface/EventSetup.h"
00008 #include "FWCore/PluginManager/interface/ModuleDef.h"
00009 #include "FWCore/Framework/interface/MakerMacros.h"
00010 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00011 #include "FWCore/Utilities/interface/InputTag.h"
00012 
00013 #include "DQMServices/Core/interface/DQMStore.h"
00014 #include "DQMServices/Core/interface/MonitorElement.h"
00015 #include "FWCore/ServiceRegistry/interface/Service.h"
00016 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00017 #include "L1Trigger/CSCTrackFinder/interface/CSCSectorReceiverLUT.h"
00018 #include "L1Trigger/CSCCommonTrigger/interface/CSCTriggerGeometry.h"
00019 
00020 #include <iostream>
00021 #include <string>
00022 #include <vector>
00023 #include <TFile.h>
00024 #include <TTree.h>
00025 #include <TH1F.h>
00026 #include <TStyle.h>
00027 
00028 class HaloTrigger : public edm::EDAnalyzer {
00029         
00030 public:
00031         HaloTrigger(const edm::ParameterSet& ps);
00032         virtual ~HaloTrigger();
00033         
00034         std::string SimVtxLabel;
00035 
00036         bool first;
00037         std::vector<std::string> Namen;
00038         unsigned int hltHaloTriggers, hltHaloOver1, hltHaloOver2, hltHaloRing23, CscHalo_Gmt;
00039         unsigned int majikNumber0, majikNumber1, majikNumber2, majikNumber3;
00040         
00041 protected:
00042         void analyze(const edm::Event& e, const edm::EventSetup& es);
00043         void beginJob();
00044         void endJob(void);
00045         
00046 private:
00047         DQMStore * dbe;
00048         MonitorElement* PlusMe1BeamHaloOcc;
00049         MonitorElement* PlusMe1BeamHaloOccRing1;
00050         MonitorElement* PlusMe1BeamHaloOccRing2;
00051         MonitorElement* PlusMe1BeamHaloOccRing2or3;
00052         MonitorElement* PlusMe2BeamHaloOcc;
00053         MonitorElement* PlusMe2BeamHaloOccRing1;
00054         MonitorElement* PlusMe2BeamHaloOccRing2;
00055         MonitorElement* PlusMe2BeamHaloOccRing2or3;
00056         MonitorElement* PlusMe3BeamHaloOcc;
00057         MonitorElement* PlusMe3BeamHaloOccRing1;
00058         MonitorElement* PlusMe3BeamHaloOccRing2;
00059         MonitorElement* PlusMe3BeamHaloOccRing2or3;
00060         MonitorElement* PlusMe4BeamHaloOcc;
00061         MonitorElement* PlusMe4BeamHaloOccRing1;
00062         MonitorElement* PlusMe4BeamHaloOccRing2;
00063         MonitorElement* PlusMe4BeamHaloOccRing2or3;
00064         MonitorElement* PlusMe1BeamHaloOccRad;
00065         
00066         MonitorElement* MinusMe1BeamHaloOcc;
00067         MonitorElement* MinusMe1BeamHaloOccRing1;
00068         MonitorElement* MinusMe1BeamHaloOccRing2;
00069         MonitorElement* MinusMe1BeamHaloOccRing2or3;
00070         MonitorElement* MinusMe2BeamHaloOcc;
00071         MonitorElement* MinusMe2BeamHaloOccRing1;
00072         MonitorElement* MinusMe2BeamHaloOccRing2;
00073         MonitorElement* MinusMe2BeamHaloOccRing2or3;
00074         MonitorElement* MinusMe3BeamHaloOcc;
00075         MonitorElement* MinusMe3BeamHaloOccRing1;
00076         MonitorElement* MinusMe3BeamHaloOccRing2;
00077         MonitorElement* MinusMe3BeamHaloOccRing2or3;
00078         MonitorElement* MinusMe4BeamHaloOcc;
00079         MonitorElement* MinusMe4BeamHaloOccRing1;
00080         MonitorElement* MinusMe4BeamHaloOccRing2;
00081         MonitorElement* MinusMe4BeamHaloOccRing2or3;
00082         MonitorElement* MinusMe1BeamHaloOccRad;
00083         
00084         MonitorElement* MinusMe3BeamHaloOccRing2Unfold;
00085         MonitorElement* MinusMe2BeamHaloOccRing2Unfold;
00086         MonitorElement* PlusMe3BeamHaloOccRing2Unfold;
00087         MonitorElement* PlusMe2BeamHaloOccRing2Unfold;
00088         MonitorElement* MinusMe3BeamHaloOccRing1Unfold;
00089         MonitorElement* MinusMe2BeamHaloOccRing1Unfold;
00090         MonitorElement* PlusMe3BeamHaloOccRing1Unfold;
00091         MonitorElement* PlusMe2BeamHaloOccRing1Unfold;
00092         
00093         MonitorElement* PlusEff;
00094         MonitorElement* MinusEff;
00095         MonitorElement* PlusEffProj3;
00096         MonitorElement* MinusEffProj3;
00097         MonitorElement* PlusEffNum;
00098         MonitorElement* PlusEffDen;
00099         MonitorElement* MinusEffNum;
00100         MonitorElement* MinusEffDen;
00101         
00102         float numCountPlus[50];
00103         float denCountPlus[50];
00104         float numCountMinus[50];
00105         float denCountMinus[50];
00106         
00107         
00108         edm::ESHandle<CSCGeometry> m_cscGeometry;
00109         edm::InputTag lctProducer, HLTriggerTag, GMTInputTag, cscRecHitLabel;
00110         //L1CSCTriggerTag, L1GTRR, trackProducer
00111         std::string outFile;
00112         int gtHaloBit;
00113 };
00114 
00115 #endif