File indexing completed on 2024-04-06 12:15:50
0001 #ifndef HLTDisplacedtktktkVtxProducer_h
0002 #define HLTDisplacedtktktkVtxProducer_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019 #include "FWCore/Framework/interface/stream/EDProducer.h"
0020 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0021 #include "FWCore/Framework/interface/Event.h"
0022 #include "FWCore/Framework/interface/EventSetup.h"
0023 #include "DataFormats/RecoCandidate/interface/RecoChargedCandidateFwd.h"
0024 #include "DataFormats/TrackReco/interface/TrackFwd.h"
0025 #include "DataFormats/HLTReco/interface/TriggerFilterObjectWithRefs.h"
0026 #include "DataFormats/HLTReco/interface/TriggerRefsCollections.h"
0027 #include "TrackingTools/TransientTrack/interface/TransientTrackBuilder.h"
0028 #include "TrackingTools/Records/interface/TransientTrackRecord.h"
0029 #include <vector>
0030
0031 namespace edm {
0032 class ConfigurationDescriptions;
0033 }
0034
0035 class HLTDisplacedtktktkVtxProducer : public edm::stream::EDProducer<> {
0036 public:
0037 explicit HLTDisplacedtktktkVtxProducer(const edm::ParameterSet&);
0038 ~HLTDisplacedtktktkVtxProducer() override;
0039 static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0040 void produce(edm::Event&, const edm::EventSetup&) override;
0041
0042 private:
0043 bool checkPreviousCand(const reco::TrackRef& trackref, const std::vector<reco::RecoChargedCandidateRef>& ref2) const;
0044
0045 const edm::ESGetToken<TransientTrackBuilder, TransientTrackRecord> transientTrackRecordToken_;
0046 const edm::InputTag srcTag_;
0047 const edm::EDGetTokenT<reco::RecoChargedCandidateCollection> srcToken_;
0048 const edm::InputTag previousCandTag_;
0049 const edm::EDGetTokenT<trigger::TriggerFilterObjectWithRefs> previousCandToken_;
0050 const double maxEta_;
0051 const double minPtTk1_;
0052 const double minPtTk2_;
0053 const double minPtTk3_;
0054 const double minPtRes_;
0055 const double minPtTri_;
0056 const double minInvMassRes_;
0057 const double maxInvMassRes_;
0058 const double minInvMass_;
0059 const double maxInvMass_;
0060 const double massParticle1_;
0061 const double massParticle2_;
0062 const double massParticle3_;
0063 const int chargeOpt_;
0064 const int resOpt_;
0065 const int triggerTypeDaughters_;
0066
0067 double firstTrackMass;
0068 double secondTrackMass;
0069 double thirdTrackMass;
0070 double firstTrackPt;
0071 double secondTrackPt;
0072 double thirdTrackPt;
0073 double firstTrackMass2;
0074 double secondTrackMass2;
0075 double thirdTrackMass2;
0076 };
0077
0078 #endif