00001 #ifndef HLTDisplacedmumuVtxProducer_h 00002 #define HLTDisplacedmumuVtxProducer_h 00003 00018 #include "FWCore/Framework/interface/EDProducer.h" 00019 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00020 #include "FWCore/Framework/interface/Event.h" 00021 #include "FWCore/Framework/interface/EventSetup.h" 00022 #include "DataFormats/RecoCandidate/interface/RecoChargedCandidateFwd.h" 00023 #include "DataFormats/TrackReco/interface/TrackFwd.h" 00024 #include <vector> 00025 00026 00027 00028 class HLTDisplacedmumuVtxProducer : public edm::EDProducer { 00029 public: 00030 explicit HLTDisplacedmumuVtxProducer(const edm::ParameterSet&); 00031 ~HLTDisplacedmumuVtxProducer(); 00032 00033 virtual void beginJob() ; 00034 virtual void produce(edm::Event&, const edm::EventSetup&); 00035 virtual void endJob() ; 00036 00037 private: 00038 bool checkPreviousCand(const reco::TrackRef& trackref, std::vector<reco::RecoChargedCandidateRef>& ref2); 00039 00040 edm::InputTag src_; 00041 edm::InputTag previousCandTag_; 00042 double maxEta_; 00043 double minPt_; 00044 double minPtPair_; 00045 double minInvMass_; 00046 double maxInvMass_; 00047 int chargeOpt_; 00048 }; 00049 00050 #endif