File indexing completed on 2024-04-06 12:11:18
0001 #ifndef FastSimulation_Muons_FastTSGFromIOHit_H
0002 #define FastSimulation_Muons_FastTSGFromIOHit_H
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 #include "RecoMuon/TrackerSeedGenerator/interface/TrackerSeedGenerator.h"
0014 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0015 #include "DataFormats/TrajectorySeed/interface/TrajectorySeed.h"
0016 #include "FWCore/Framework/interface/ConsumesCollector.h"
0017 #include "DataFormats/TrajectorySeed/interface/TrajectorySeedCollection.h"
0018 #include "SimDataFormats/Track/interface/SimTrackContainer.h"
0019 #include <vector>
0020
0021 class RectangularEtaPhiTrackingRegion;
0022 class TrackingRegion;
0023 class SimTrack;
0024
0025 class FastTSGFromIOHit : public TrackerSeedGenerator {
0026 public:
0027
0028 FastTSGFromIOHit(const edm::ParameterSet& pset, edm::ConsumesCollector& iC);
0029
0030
0031 ~FastTSGFromIOHit() override;
0032
0033
0034 void trackerSeeds(const TrackCand&,
0035 const TrackingRegion&,
0036 const TrackerTopology* tTopo,
0037 std::vector<TrajectorySeed>&) override;
0038
0039 private:
0040 bool clean(reco::TrackRef muRef,
0041 const RectangularEtaPhiTrackingRegion& region,
0042 const BasicTrajectorySeed* aSeed,
0043 const SimTrack& theSimTrack);
0044
0045 private:
0046 std::string theCategory;
0047
0048 edm::EDGetTokenT<edm::SimTrackContainer> simTracksTk;
0049 std::vector<edm::EDGetTokenT<TrajectorySeedCollection> > seedsTks;
0050 double thePtCut;
0051 };
0052
0053 #endif