File indexing completed on 2024-04-06 12:27:17
0001 #ifndef SegmentsTrackAssociator_H
0002 #define SegmentsTrackAssociator_H
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #include "FWCore/Framework/interface/Frameworkfwd.h"
0013 #include "FWCore/Framework/interface/Event.h"
0014 #include "FWCore/Framework/interface/MakerMacros.h"
0015 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0016 #include "FWCore/MessageLogger/interface/MessageLogger.h"
0017 #include "FWCore/Utilities/interface/InputTag.h"
0018
0019 #include "TrackingTools/TransientTrack/interface/TransientTrack.h"
0020 #include "TrackingTools/TransientTrackingRecHit/interface/TransientTrackingRecHit.h"
0021 #include "TrackingTools/PatternTools/interface/TrajectoryMeasurement.h"
0022 #include "TrackingTools/DetLayers/interface/DetLayer.h"
0023 #include "TrackingTools/PatternTools/interface/TrajMeasLessEstim.h"
0024 #include "RecoMuon/TrackingTools/interface/MuonPatternRecoDumper.h"
0025 #include "RecoMuon/TransientTrackingRecHit/interface/MuonTransientTrackingRecHit.h"
0026 #include "DataFormats/TrackReco/interface/TrackFwd.h"
0027 #include "DataFormats/TrackReco/interface/Track.h"
0028
0029 #include "DataFormats/DTRecHit/interface/DTRecSegment4DCollection.h"
0030 #include "DataFormats/CSCRecHit/interface/CSCSegmentCollection.h"
0031 #include "FWCore/Framework/interface/ConsumesCollector.h"
0032
0033 namespace edm {
0034 class ParameterSet;
0035 class Event;
0036 class EventSetup;
0037 }
0038 class GlobalTrackingGeometryRecord;
0039
0040 class SegmentsTrackAssociator {
0041 public:
0042
0043 SegmentsTrackAssociator(const edm::ParameterSet&, edm::ConsumesCollector& iC);
0044
0045
0046 virtual ~SegmentsTrackAssociator();
0047
0048
0049 MuonTransientTrackingRecHit::MuonRecHitContainer associate(const edm::Event&,
0050 const edm::EventSetup&,
0051 const reco::Track&);
0052
0053 private:
0054
0055 int numRecHit;
0056 int numRecHitDT;
0057 int numRecHitCSC;
0058
0059
0060 edm::InputTag theDTSegmentLabel;
0061 edm::InputTag theCSCSegmentLabel;
0062 edm::InputTag theSegmentContainerName;
0063
0064 edm::EDGetTokenT<DTRecSegment4DCollection> dtSegmentsToken;
0065 edm::EDGetTokenT<CSCSegmentCollection> cscSegmentsToken;
0066 edm::ESGetToken<GlobalTrackingGeometry, GlobalTrackingGeometryRecord> trackingGeometryToken;
0067
0068 std::string metname;
0069 };
0070
0071 #endif