19 :
RecSegment(phiSeg.chamberId()), theProjection(
full), thePhiSeg(phiSeg), theZedSeg(zedSeg), theDimension(4) {
23 <<
"the z Segment and the phi segment have different chamber id" << std::endl;
63 :
RecSegment(zedSeg.superLayerId().chamberId()),
234 std::vector<const TrackingRecHit*> pointersOfRecHits;
239 pointersOfRecHits.push_back(
zSegment());
241 return pointersOfRecHits;
246 std::vector<TrackingRecHit*> pointersOfRecHits;
251 pointersOfRecHits.push_back(
zSegment());
253 return pointersOfRecHits;
~DTRecSegment4D() override
Destructor.
DTRecSegment4D()
Empty constructor.
DTSLRecSegment2D theZedSeg
Local3DVector LocalVector
static AlgebraicMatrix initThe2DZProjMatrix()
LocalPoint localPosition() const override
local position in SL frame
Point3DBase< Scalar, LocalTag > LocalPoint
LocalVector localDirection() const override
the local direction in SL frame
bool hasPhi() const
Does it have the Phi projection?
double chi2() const override
the chi2 of the fit
virtual DTChamberId chamberId() const
The (specific) DetId of the chamber on which the segment resides.
LocalError localDirectionError() const override
Local direction error in the Chamber frame.
AlgebraicSymMatrix parametersError() const override
Covariance matrix fo parameters()
LocalVector localDirection() const override
Local direction in Chamber frame.
int dimension() const override
Dimension (in parameter space)
void setCovMatrixForZed(const LocalPoint &posZInCh)
LocalPoint localPosition() const override
Local position in Chamber frame.
const DTSLRecSegment2D * zSegment() const
The Z segment: 0 if not zed projection available.
CLHEP::HepMatrix AlgebraicMatrix
static const AlgebraicMatrix the2DPhiProjMatrix
static AlgebraicMatrix initThe4DProjectionMatrix()
std::ostream & operator<<(std::ostream &os, const DTRecSegment4D &seg)
Cos< T >::type cos(const T &t)
AlgebraicSymMatrix parametersError() const override
std::vector< const TrackingRecHit * > recHits() const override
Access to component RecHits (if any)
AlgebraicSymMatrix theCovMatrix
std::vector< const TrackingRecHit * > recHits() const override
Access to component RecHits (if any)
CLHEP::HepVector AlgebraicVector
DetId geographicalId() const
const DTChamberRecSegment2D * phiSegment() const
The superPhi segment: 0 if no phi projection available.
static const AlgebraicMatrix the2DZProjMatrix
constexpr uint32_t rawId() const
get the raw id
AlgebraicVector parameters() const override
AlgebraicSymMatrix covMatrix() const
the Covariance Matrix
int degreesOfFreedom() const override
Degrees of freedom of the segment fit.
int degreesOfFreedom() const override
return the DOF of the segment
LocalError localPositionError() const override
Local position error in Chamber frame.
static AlgebraicMatrix initThe2DPhiProjMatrix()
CLHEP::HepSymMatrix AlgebraicSymMatrix
static const AlgebraicMatrix the4DProjectionMatrix
Vector3DBase unit() const
bool hasZed() const
Does it have the Z projection?
AlgebraicMatrix projectionMatrix() const override
The projection matrix relates the trajectory state parameters to the segment parameters().
Geom::Theta< T > theta() const
double chi2() const override
Chi2 of the segment fit.
DTChamberRecSegment2D thePhiSeg