CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_2_9/src/RecoEgamma/EgammaHLTProducers/interface/EcalListOfFEDSProducer.h

Go to the documentation of this file.
00001 #ifndef EventFilter_EcalListOfFEDSProducer_H
00002 #define EventFilter_EcalListOfFEDSProducer_H
00003 
00004 #include <FWCore/Framework/interface/MakerMacros.h>
00005 #include <FWCore/Framework/interface/EDProducer.h>
00006                                                                                              
00007 #include <DataFormats/Common/interface/Handle.h>
00008 #include <FWCore/Framework/interface/Event.h>
00009 #include <FWCore/Framework/interface/EDProducer.h>
00010 #include <FWCore/MessageLogger/interface/MessageLogger.h>
00011 #include <FWCore/ParameterSet/interface/ParameterSet.h>
00012 
00013 #include "Geometry/EcalMapping/interface/EcalElectronicsMapping.h"
00014                                                                                              
00015 #include <iostream>
00016 #include <string>
00017 #include <vector>
00018 
00019 class EcalListOfFEDSProducer : public edm::EDProducer {
00020 
00021 public:
00022         EcalListOfFEDSProducer(const edm::ParameterSet& pset);
00023         virtual ~EcalListOfFEDSProducer();
00024         void produce(edm::Event & e, const edm::EventSetup& c);
00025         void beginJob(void);
00026         void endJob(void);
00027         // std::vector<int> Egamma(edm::Event& e, const edm::EventSetup& es, std::vector<int>& done);
00028         // std::vector<int> Muon(edm::Event& e, const edm::EventSetup& es, std::vector<int>& done);
00029         // std::vector<int> Jets(edm::Event& e, const edm::EventSetup& es, std::vector<int>& done);
00030         void Egamma(edm::Event& e, const edm::EventSetup& es, std::vector<int>& done, std::vector<int>& FEDs);
00031         void Muon(edm::Event& e, const edm::EventSetup& es, std::vector<int>& done, std::vector<int>& FEDs);
00032         void Jets(edm::Event& e, const edm::EventSetup& es, std::vector<int>& done, std::vector<int>& FEDs);
00033 
00034 private:
00035         edm::InputTag Pi0ListToIgnore_; 
00036         bool EGamma_;
00037         edm::InputTag EMl1TagIsolated_;
00038         edm::InputTag EMl1TagNonIsolated_;
00039         bool EMdoIsolated_;
00040         bool EMdoNonIsolated_;
00041         double EMregionEtaMargin_;
00042         double EMregionPhiMargin_;
00043         double Ptmin_iso_ ;
00044         double Ptmin_noniso_;
00045 
00046         bool Muon_ ;
00047         double MUregionEtaMargin_;
00048         double MUregionPhiMargin_;
00049         double Ptmin_muon_ ;
00050         edm::InputTag MuonSource_ ;
00051 
00052         bool Jets_ ;
00053         bool JETSdoCentral_ ;
00054         bool JETSdoForward_ ;
00055         bool JETSdoTau_ ;
00056         double JETSregionEtaMargin_;
00057         double JETSregionPhiMargin_;
00058         double Ptmin_jets_ ;
00059         edm::InputTag CentralSource_;
00060         edm::InputTag ForwardSource_;
00061         edm::InputTag TauSource_;
00062 
00063         std::string OutputLabel_;
00064         EcalElectronicsMapping* TheMapping;
00065         bool first_ ;
00066         bool debug_ ;
00067 
00068         std::vector<int> ListOfFEDS(double etaLow, double etaHigh, double phiLow,
00069                                     double phiHigh, double etamargin, double phimargin);
00070 
00071 
00072 
00073 };
00074 
00075 #endif
00076 
00077