00001 #ifndef HIPixelMedianVtxProducer_H 00002 #define HIPixelMedianVtxProducer_H 00003 00004 #include "FWCore/Framework/interface/EDProducer.h" 00005 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00006 00007 #include "DataFormats/TrackReco/interface/Track.h" 00008 #include "DataFormats/TrackReco/interface/TrackFwd.h" 00009 00010 #include "FWCore/Utilities/interface/InputTag.h" 00011 00012 namespace edm { class Event; class EventSetup; } 00013 00014 class HIPixelMedianVtxProducer : public edm::EDProducer 00015 { 00016 public: 00017 explicit HIPixelMedianVtxProducer(const edm::ParameterSet& ps); 00018 ~HIPixelMedianVtxProducer(){}; 00019 virtual void produce(edm::Event& ev, const edm::EventSetup& es); 00020 00021 private: 00022 void beginJob(){}; 00023 00024 edm::InputTag theTrackCollection; 00025 double thePtMin; 00026 unsigned int thePeakFindThresh; 00027 double thePeakFindMaxZ; 00028 int thePeakFindBinning; 00029 int theFitThreshold; 00030 double theFitMaxZ; 00031 int theFitBinning; 00032 }; 00033 00034 struct ComparePairs 00035 { 00036 bool operator() (const reco::Track * t1, 00037 const reco::Track * t2) 00038 { 00039 return (t1->vz() < t2->vz()); 00040 }; 00041 }; 00042 00043 #endif