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
00028
00029
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