CMS 3D CMS Logo

SETSeedFinder.h
Go to the documentation of this file.
1 #ifndef MuonSeedGenerator_SETSeedFinder_h
2 #define MuonSeedGenerator_SETSeedFinder_h
3 
8 #include "CLHEP/Matrix/Vector.h"
9 #include "CLHEP/Vector/ThreeVector.h"
10 
12 public:
14 
15  explicit SETSeedFinder(const edm::ParameterSet& pset);
16  ~SETSeedFinder() override { delete thePtExtractor; }
18  void setBField(const MagneticField* field) override {}
19 
27  void seeds(const MuonRecHitContainer& cluster, std::vector<TrajectorySeed>& result) override;
28 
30 
31  std::vector<MuonRecHitContainer> sortByLayer(MuonRecHitContainer& cluster) const;
32 
33  //---- For protection against huge memory consumtion
34  void limitCombinatorics(std::vector<MuonRecHitContainer>& MuonRecHitContainer_perLayer);
35 
36  std::vector<MuonRecHitContainer> findAllValidSets(
37  const std::vector<MuonRecHitContainer>& MuonRecHitContainer_perLayer);
38 
39  std::pair<int, int> checkAngleDeviation(double dPhi_1, double dPhi_2) const;
40 
41  void validSetsPrePruning(std::vector<MuonRecHitContainer>& allValidSets);
42 
43  void pre_prune(MuonRecHitContainer& validSet) const;
44 
45  std::vector<SeedCandidate> fillSeedCandidates(std::vector<MuonRecHitContainer>& allValidSets);
46 
47  void estimateMomentum(const MuonRecHitContainer& validSet, CLHEP::Hep3Vector& momentum, int& charge) const;
48 
51 
52 private:
54 
57 };
58 
59 #endif
SETSeedFinder::seeds
void seeds(const MuonRecHitContainer &cluster, std::vector< TrajectorySeed > &result) override
Definition: SETSeedFinder.cc:31
SETSeedFinder::validSetsPrePruning
void validSetsPrePruning(std::vector< MuonRecHitContainer > &allValidSets)
Definition: SETSeedFinder.cc:306
service
Definition: service.py:1
SETSeedFinder::setServiceProxy
void setServiceProxy(MuonServiceProxy *service)
Definition: SETSeedFinder.h:29
SETSeedFinder::checkAngleDeviation
std::pair< int, int > checkAngleDeviation(double dPhi_1, double dPhi_2) const
Definition: SETSeedFinder.cc:284
SETSeedFinder::findAllValidSets
std::vector< MuonRecHitContainer > findAllValidSets(const std::vector< MuonRecHitContainer > &MuonRecHitContainer_perLayer)
Definition: SETSeedFinder.cc:146
hfClusterShapes_cfi.hits
hits
Definition: hfClusterShapes_cfi.py:5
MuonRecHitContainer
MuonTransientTrackingRecHit::MuonRecHitContainer MuonRecHitContainer
Definition: CosmicMuonSmoother.h:31
SETSeedFinder::pre_prune
void pre_prune(MuonRecHitContainer &validSet) const
Definition: SETSeedFinder.cc:316
SETSeedFinder::useSegmentsInTrajectory
bool useSegmentsInTrajectory
Definition: SETSeedFinder.h:56
SETSeedFinder::apply_prePruning
bool apply_prePruning
Definition: SETSeedFinder.h:55
SETSeedFinder::makeSeed
TrajectorySeed makeSeed(const TrajectoryStateOnSurface &tsos, const TransientTrackingRecHit::ConstRecHitContainer &hits) const
Definition: SETSeedFinder.cc:593
SETSeedFinder::sortByLayer
std::vector< MuonRecHitContainer > sortByLayer(MuonRecHitContainer &cluster) const
Definition: SETSeedFinder.cc:45
SETFilter.h
MuonTransientTrackingRecHit::MuonRecHitContainer
std::vector< MuonRecHitPointer > MuonRecHitContainer
Definition: MuonTransientTrackingRecHit.h:26
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
SETSeedFinder::MuonRecHitContainer
MuonTransientTrackingRecHit::MuonRecHitContainer MuonRecHitContainer
Definition: SETSeedFinder.h:13
ALCARECOTkAlJpsiMuMu_cff.charge
charge
Definition: ALCARECOTkAlJpsiMuMu_cff.py:47
SETSeedFinder::~SETSeedFinder
~SETSeedFinder() override
Definition: SETSeedFinder.h:16
edm::ParameterSet
Definition: ParameterSet.h:47
TrackingRecHit::ConstRecHitContainer
std::vector< ConstRecHitPointer > ConstRecHitContainer
Definition: TrackingRecHit.h:32
SETSeedFinder::fillSeedCandidates
std::vector< SeedCandidate > fillSeedCandidates(std::vector< MuonRecHitContainer > &allValidSets)
Definition: SETSeedFinder.cc:404
SETSeedFinder::estimateMomentum
void estimateMomentum(const MuonRecHitContainer &validSet, CLHEP::Hep3Vector &momentum, int &charge) const
Definition: SETSeedFinder.cc:436
MuonSeedVFinder
Definition: MuonSeedVFinder.h:19
MuonSeedPtExtractor.h
SETSeedFinder::theService
MuonServiceProxy * theService
Definition: SETSeedFinder.h:53
MuonSeedVFinder.h
MuonServiceProxy.h
TrajectorySeed
Definition: TrajectorySeed.h:18
SETSeedFinder::limitCombinatorics
void limitCombinatorics(std::vector< MuonRecHitContainer > &MuonRecHitContainer_perLayer)
Definition: SETSeedFinder.cc:110
SETSeedFinder::setBField
void setBField(const MagneticField *field) override
ignore - uses MuonServiceProxy
Definition: SETSeedFinder.h:18
mps_fire.result
result
Definition: mps_fire.py:311
MuonSeedVFinder::thePtExtractor
MuonSeedPtExtractor * thePtExtractor
Definition: MuonSeedVFinder.h:30
MuonServiceProxy
Definition: MuonServiceProxy.h:38
SETSeedFinder::SETSeedFinder
SETSeedFinder(const edm::ParameterSet &pset)
Definition: SETSeedFinder.cc:23
MagneticField
Definition: MagneticField.h:19
SETSeedFinder
Definition: SETSeedFinder.h:11
muonDTDigis_cfi.pset
pset
Definition: muonDTDigis_cfi.py:27