CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch13/src/RecoVertex/PrimaryVertexProducer/interface/PrimaryVertexProducer.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 // Package:    PrimaryVertexProducer
00004 // Class:      PrimaryVertexProducer
00005 // 
00013 //
00014 // Original Author:  Pascal Vanlaer
00015 //         Created:  Tue Feb 28 11:06:34 CET 2006
00016 // $Id: PrimaryVertexProducer.h,v 1.10 2010/02/20 21:01:54 wmtan Exp $
00017 //
00018 //
00019 
00020 
00021 // system include files
00022 #include <memory>
00023 
00024 // user include files
00025 #include "FWCore/Framework/interface/Frameworkfwd.h"
00026 #include "FWCore/Framework/interface/EDProducer.h"
00027 
00028 #include "FWCore/Framework/interface/Event.h"
00029 #include "FWCore/Framework/interface/EventSetup.h"
00030 
00031 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00032 #include "FWCore/Utilities/interface/InputTag.h"
00033 
00034 #include "RecoVertex/PrimaryVertexProducer/interface/PrimaryVertexProducerAlgorithm.h"
00035 
00036 //
00037 // class declaration
00038 //
00039 
00040 class PrimaryVertexProducer : public edm::EDProducer {
00041 public:
00042   explicit PrimaryVertexProducer(const edm::ParameterSet&);
00043   ~PrimaryVertexProducer();
00044   
00045   virtual void produce(edm::Event&, const edm::EventSetup&);
00046 
00047   // access to config
00048   edm::ParameterSet config() const { return theConfig; }
00049   edm::InputTag trackLabel;
00050   edm::InputTag beamSpotLabel;
00051   
00052 private:
00053   // ----------member data ---------------------------
00054   // vtx finding algorithm
00055   PrimaryVertexProducerAlgorithm theAlgo;
00056 
00057   edm::ParameterSet theConfig;
00058   bool fVerbose;
00059 };