1 #ifndef RECOTRACKER_TRANSIENTRACKINGRECHIT_TRecHit1DMomConstraint_H
2 #define RECOTRACKER_TRANSIENTRACKINGRECHIT_TRecHit1DMomConstraint_H
15 result[0] = charge_/fabs(mom_);
21 m[0][0] = err_/(mom_*mom_);
29 theProjectionMatrix[0][0] = 1;
30 return theProjectionMatrix;
37 double mom()
const {
return mom_;}
38 double err()
const {
return err_;}
45 virtual std::vector<const TrackingRecHit*>
recHits()
const {
48 virtual std::vector<TrackingRecHit*>
recHits() {
49 return std::vector<TrackingRecHit*>();
63 return RecHitPointer(
new TRecHit1DMomConstraint( charge, mom, err, surface));
78 charge_(charge),mom_(mom),err_(err),surface_(surface) {}
81 charge_( other.
charge() ), mom_( other.mom() ),err_( other.err() ), surface_((other.surface())) {}
83 virtual TRecHit1DMomConstraint *
clone()
const {
84 return new TRecHit1DMomConstraint(*
this);
ReferenceCountingPointer< TransientTrackingRecHit > RecHitPointer
virtual const TrackingRecHit * hit() const =0
virtual const GeomDet * det() const
virtual RecHitPointer clone(const TrajectoryStateOnSurface &ts) const
CLHEP::HepMatrix AlgebraicMatrix
virtual ~TRecHit1DMomConstraint()
virtual const TrackingRecHit * hit() const
virtual std::vector< const TrackingRecHit * > recHits() const =0
Access to component RecHits (if any)
TRecHit1DMomConstraint(const TRecHit1DMomConstraint &other)
static RecHitPointer build(const int charge, const double mom, const double err, const Surface *surface)
virtual LocalPoint localPosition() const
virtual int dimension() const
CLHEP::HepVector AlgebraicVector
virtual LocalError localPositionError() const
virtual TRecHit1DMomConstraint * clone() const
TRecHit1DMomConstraint(const int charge, const double mom, const double err, const Surface *surface)
Creates the TrackingRecHit internally, avoids redundent cloning.
virtual AlgebraicMatrix projectionMatrix() const
virtual std::vector< const TrackingRecHit * > recHits() const
Access to component RecHits (if any)
CLHEP::HepSymMatrix AlgebraicSymMatrix
virtual std::vector< TrackingRecHit * > recHits()
Non-const access to component RecHits (if any)
virtual bool canImproveWithTrack() const
virtual const Surface * surface() const
The surface of the GeometricSearchDet.
virtual AlgebraicVector parameters() const
virtual AlgebraicSymMatrix parametersError() const
virtual const GeomDetUnit * detUnit() const