CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DualBzeroReferenceTrajectory.cc
Go to the documentation of this file.
1 
2 
4 
6 
9 
11 
12 
13 
15  const ConstRecHitContainer& forwardRecHits,
16  const ConstRecHitContainer& backwardRecHits,
17  const MagneticField* magField,
18  const reco::BeamSpot& beamSpot,
20  DualReferenceTrajectory(tsos.localParameters().mixedFormatVector().kSize - 1,
21  numberOfUsedRecHits(forwardRecHits) + numberOfUsedRecHits(backwardRecHits) - 1,
22  config),
23  theMomentumEstimate(config.momentumEstimate)
24 {
26  forwardRecHits,
27  backwardRecHits,
28  magField,
29  beamSpot);
30 }
31 
32 
36  double mass, MaterialEffects materialEffects,
37  const PropagationDirection propDir,
38  const MagneticField *magField,
39  bool useBeamSpot,
40  const reco::BeamSpot &beamSpot) const
41 {
42  if (materialEffects >= breakPoints) throw cms::Exception("BadConfig")
43  << "[DualBzeroReferenceTrajectory::construct] Wrong MaterialEffects: " << materialEffects;
44 
45  ReferenceTrajectoryBase::Config config(materialEffects, propDir, mass, theMomentumEstimate);
46  config.useBeamSpot = useBeamSpot;
47  config.hitsAreReverse = false;
48  return new BzeroReferenceTrajectory(referenceTsos, recHits, magField, beamSpot, config);
49 }
50 
51 
54 {
55  AlgebraicVector param = asHepVector<5>( referenceTsos.localParameters().mixedFormatVector() );
56  return param.sub( 2, 5 );
57 }
const LocalTrajectoryParameters & localParameters() const
virtual AlgebraicVector extractParameters(const TrajectoryStateOnSurface &referenceTsos) const
PropagationDirection
virtual ReferenceTrajectory * construct(const TrajectoryStateOnSurface &referenceTsos, const ConstRecHitContainer &recHits, double mass, MaterialEffects materialEffects, const PropagationDirection propDir, const MagneticField *magField, bool useBeamSpot, const reco::BeamSpot &beamSpot) const
CLHEP::HepVector AlgebraicVector
DualBzeroReferenceTrajectory(const TrajectoryStateOnSurface &tsos, const ConstRecHitContainer &forwardRecHits, const ConstRecHitContainer &backwardRecHits, const MagneticField *magField, const reco::BeamSpot &beamSpot, const ReferenceTrajectoryBase::Config &config)
AlgebraicVector5 mixedFormatVector() const
TransientTrackingRecHit::ConstRecHitContainer ConstRecHitContainer
virtual bool construct(const TrajectoryStateOnSurface &referenceTsos, const ConstRecHitContainer &forwardRecHits, const ConstRecHitContainer &backwardRecHits, const MagneticField *magField, const reco::BeamSpot &beamSpot)