Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:25:20

0001 #ifndef HIBestVertexProducer_H
0002 #define HIBestVertexProducer_H
0003 
0004 #include "FWCore/Framework/interface/stream/EDProducer.h"
0005 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0006 #include "DataFormats/BeamSpot/interface/BeamSpot.h"
0007 #include "DataFormats/VertexReco/interface/Vertex.h"
0008 #include "DataFormats/VertexReco/interface/VertexFwd.h"
0009 
0010 namespace edm {
0011   class Event;
0012   class EventSetup;
0013   class ConfigurationDescriptions;
0014 }  // namespace edm
0015 
0016 class HIBestVertexProducer : public edm::stream::EDProducer<> {
0017 public:
0018   explicit HIBestVertexProducer(const edm::ParameterSet& ps);
0019   ~HIBestVertexProducer() override;
0020   void produce(edm::Event& ev, const edm::EventSetup& es) override;
0021   static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0022 
0023 private:
0024   void beginJob();
0025   edm::ParameterSet theConfig;
0026   edm::EDGetTokenT<reco::BeamSpot> theBeamSpotTag;
0027   edm::EDGetTokenT<reco::VertexCollection> theMedianVertexCollection;
0028   edm::EDGetTokenT<reco::VertexCollection> theAdaptiveVertexCollection;
0029   edm::EDGetTokenT<reco::VertexCollection> theFinalAdaptiveVertexCollection;
0030   bool theUseFinalAdaptiveVertexCollection;
0031 };
0032 #endif