00001 // -*- C++ -*- 00002 // 00003 // Package: VertexFromTrackProducer 00004 // Class: VertexFromTrackProducer 00005 // 00013 // 00014 // Original Author: Andreas Hinzmann 00015 // Created: Tue Dec 6 17:16:45 CET 2011 00016 // 00017 // 00018 00019 00020 // system include files 00021 #include <memory> 00022 00023 // user include files 00024 #include "FWCore/Framework/interface/Frameworkfwd.h" 00025 #include "FWCore/Framework/interface/EDProducer.h" 00026 00027 #include "FWCore/Framework/interface/Event.h" 00028 #include "FWCore/Framework/interface/EventSetup.h" 00029 00030 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00031 #include "FWCore/Utilities/interface/InputTag.h" 00032 00033 // 00034 // class declaration 00035 // 00036 00037 class VertexFromTrackProducer : public edm::EDProducer { 00038 public: 00039 explicit VertexFromTrackProducer(const edm::ParameterSet&); 00040 ~VertexFromTrackProducer(); 00041 00042 virtual void produce(edm::Event&, const edm::EventSetup&) override; 00043 00044 // access to config 00045 edm::ParameterSet config() const { return theConfig; } 00046 edm::InputTag trackLabel; 00047 edm::InputTag triggerFilterElectronsSrc; 00048 edm::InputTag triggerFilterMuonsSrc; 00049 edm::InputTag vertexLabel; 00050 edm::InputTag beamSpotLabel; 00051 00052 private: 00053 // ----------member data --------------------------- 00054 bool fIsRecoCandidate; 00055 bool fUseBeamSpot; 00056 bool fUseVertex; 00057 bool fUseTriggerFilterElectrons, fUseTriggerFilterMuons; 00058 edm::ParameterSet theConfig; 00059 bool fVerbose; 00060 };