CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
SeedFromConsecutiveHitsCreator.h
Go to the documentation of this file.
1 #ifndef RecoTracker_TkSeedGenerator_SeedFromConsecutiveHitsCreator_H
2 #define RecoTracker_TkSeedGenerator_SeedFromConsecutiveHitsCreator_H
3 
12 
14 
16 public:
17 
19  : thePropagatorLabel (cfg.getParameter<std::string>("propagator"))
20  , theBOFFMomentum (cfg.existsAs<double>("SeedMomentumForBOFF") ? cfg.getParameter<double>("SeedMomentumForBOFF") : 5.0)
21  , theOriginTransverseErrorMultiplier(cfg.existsAs<double>("OriginTransverseErrorMultiplier") ? cfg.getParameter<double>("OriginTransverseErrorMultiplier") : 1.0)
22  , theMinOneOverPtError (cfg.existsAs<double>("MinOneOverPtError") ? cfg.getParameter<double>("MinOneOverPtError") : 1.0)
23  // 2014/02/11 mia:
24  // we should get rid of the boolean parameter useSimpleMF,
25  // and use only a string magneticField [instead of SimpleMagneticField]
26  // or better an edm::ESInputTag (at the moment HLT does not handle ESInputTag)
28  , mfName_("")
29  {
30  if (cfg.exists("SimpleMagneticField")) {
31  useSimpleMF_ = true;
32  mfName_ = cfg.getParameter<std::string>("SimpleMagneticField");
33  }
34  }
35 
37  const std::string & propagator = "PropagatorWithMaterial", double seedMomentumForBOFF = -5.0,
38  double aOriginTransverseErrorMultiplier = 1.0, double aMinOneOverPtError = 1.0)
40  , theBOFFMomentum(seedMomentumForBOFF)
41  , theOriginTransverseErrorMultiplier(aOriginTransverseErrorMultiplier)
42  , theMinOneOverPtError(aMinOneOverPtError)
43  , useSimpleMF_(false) { }
44 
45  //dtor
47 
48  // initialize the "event dependent state"
49  virtual void init(const TrackingRegion & region,
50  const edm::EventSetup& es,
52 
53  // make job
54  // fill seedCollection with the "TrajectorySeed"
55  virtual void makeSeed(TrajectorySeedCollection & seedCollection,
56  const SeedingHitSet & hits) GCC11_FINAL;
57 
58 
59 private:
60 
61  virtual bool initialKinematic(GlobalTrajectoryParameters & kine,
62  const SeedingHitSet & hits) const;
63 
64 
65  bool checkHit(
66  const TrajectoryStateOnSurface &tsos,
68 
69 
70  CurvilinearTrajectoryError initialError(float sin2Theta) const dso_hidden;
71 
72  void buildSeed(TrajectorySeedCollection & seedCollection,
73  const SeedingHitSet & hits,
74  const FreeTrajectoryState & fts) const dso_hidden;
75 
77  const TrajectoryStateOnSurface &state) const dso_hidden;
78 
79 protected:
80 
85 
86  const TrackingRegion * region = nullptr;
87  const SeedComparitor *filter = nullptr;
91  float nomField;
92  bool isBOFF = false;
95 };
96 #endif
T getParameter(std::string const &) const
edm::ESHandle< Propagator > propagatorHandle
bool checkHit(const TrajectoryStateOnSurface &tsos, const TransientTrackingRecHit::ConstRecHitPointer &hit) const dso_hidden
bool exists(std::string const &parameterName) const
checks if a parameter exists
virtual bool initialKinematic(GlobalTrajectoryParameters &kine, const SeedingHitSet &hits) const
void buildSeed(TrajectorySeedCollection &seedCollection, const SeedingHitSet &hits, const FreeTrajectoryState &fts) const dso_hidden
std::vector< TrajectorySeed > TrajectorySeedCollection
virtual void init(const TrackingRegion &region, const edm::EventSetup &es, const SeedComparitor *filter) GCC11_FINAL
#define GCC11_FINAL
SeedFromConsecutiveHitsCreator(const edm::ParameterSet &cfg)
#define dso_hidden
Definition: Visibility.h:12
edm::ESHandle< TrackerGeometry > tracker
SeedFromConsecutiveHitsCreator(const std::string &propagator="PropagatorWithMaterial", double seedMomentumForBOFF=-5.0, double aOriginTransverseErrorMultiplier=1.0, double aMinOneOverPtError=1.0)
virtual void makeSeed(TrajectorySeedCollection &seedCollection, const SeedingHitSet &hits) GCC11_FINAL
CurvilinearTrajectoryError initialError(float sin2Theta) const dso_hidden
volatile std::atomic< bool > shutdown_flag false
TransientTrackingRecHit::RecHitPointer refitHit(const TransientTrackingRecHit::ConstRecHitPointer &hit, const TrajectoryStateOnSurface &state) const dso_hidden
edm::ESHandle< MagneticField > bfield