CMS 3D CMS Logo

TwoBodyDecayTrajectory.h
Go to the documentation of this file.
1 #ifndef Alignment_ReferenceTrajectories_TwoBodyDecayTrajectory_h
2 #define Alignment_ReferenceTrajectories_TwoBodyDecayTrajectory_h
3 
6 
11 namespace reco {
12  class BeamSpot;
13 }
14 
16 public:
18  typedef std::pair<ConstRecHitContainer, ConstRecHitContainer> ConstRecHitCollection;
19 
21  const ConstRecHitCollection& recHits,
22  const MagneticField* magField,
23  const reco::BeamSpot& beamSpot,
25 
27 
28  ~TwoBodyDecayTrajectory(void) override {}
29 
30  TwoBodyDecayTrajectory* clone(void) const override { return new TwoBodyDecayTrajectory(*this); }
31 
34  inline const std::pair<int, int> numberOfRecHits(void) { return theNumberOfRecHits; }
35 
36 private:
37  bool construct(const TwoBodyDecayTrajectoryState& state,
38  const ConstRecHitCollection& recHits,
39  const MagneticField* field,
40  const reco::BeamSpot& beamSpot);
41 
42  void constructTsosVecWithErrors(const ReferenceTrajectory& traj1,
43  const ReferenceTrajectory& traj2,
44  const MagneticField* field);
45 
46  void constructSingleTsosWithErrors(const TrajectoryStateOnSurface& tsos, int iTsos, const MagneticField* field);
47 
50  const bool useRefittedState_;
52 
53  std::pair<int, int> theNumberOfRecHits;
54 };
55 
56 #endif
std::pair< int, int > theNumberOfRecHits
Definition: config.py:1
PropagationDirection
const PropagationDirection propDir_
const MaterialEffects materialEffects_
std::vector< ConstRecHitPointer > ConstRecHitContainer
~TwoBodyDecayTrajectory(void) override
fixed size matrix
TwoBodyDecayTrajectory * clone(void) const override
std::pair< ConstRecHitContainer, ConstRecHitContainer > ConstRecHitCollection
TransientTrackingRecHit::ConstRecHitContainer ConstRecHitContainer
const std::pair< int, int > numberOfRecHits(void)