SND@LHC Software
Loading...
Searching...
No Matches
genfit::FullMeasurement Class Reference

Measurement class implementing a measurement of all track parameters. More...

#include <FullMeasurement.h>

Inheritance diagram for genfit::FullMeasurement:
Collaboration diagram for genfit::FullMeasurement:

Public Member Functions

 FullMeasurement (int nDim=5)
 
 FullMeasurement (const MeasuredStateOnPlane &, int detId=-1, int hitId=-1, TrackPoint *trackPoint=NULL)
 
virtual ~FullMeasurement ()
 
virtual AbsMeasurementclone () const
 Deep copy ctor for polymorphic class.
 
virtual SharedPlanePtr constructPlane (const StateOnPlane &state) const
 
virtual std::vector< MeasurementOnPlane * > constructMeasurementsOnPlane (const StateOnPlane &state) const
 
virtual const AbsHMatrixconstructHMatrix (const AbsTrackRep *) const
 
- Public Member Functions inherited from genfit::AbsMeasurement
 AbsMeasurement ()
 
 AbsMeasurement (int nDims)
 
 AbsMeasurement (const TVectorD &rawHitCoords, const TMatrixDSym &rawHitCov, int detId, int hitId, TrackPoint *trackPoint)
 
virtual ~AbsMeasurement ()
 
TrackPointgetTrackPoint () const
 
void setTrackPoint (TrackPoint *tp)
 
const TVectorD & getRawHitCoords () const
 
const TMatrixDSym & getRawHitCov () const
 
int getDetId () const
 
int getHitId () const
 
unsigned int getDim () const
 
void setDetId (int detId)
 
void setHitId (int hitId)
 
virtual void Print (const Option_t *="") const
 

Protected Attributes

SharedPlanePtr plane_
 
- Protected Attributes inherited from genfit::AbsMeasurement
TVectorD rawHitCoords_
 
TMatrixDSym rawHitCov_
 
int detId_
 
int hitId_
 
TrackPointtrackPoint_
 Pointer to TrackPoint where the measurement belongs to.
 

Additional Inherited Members

- Protected Member Functions inherited from genfit::AbsMeasurement
 AbsMeasurement (const AbsMeasurement &)
 protect from calling copy c'tor from outside the class. Use clone() if you want a copy!
 

Detailed Description

Measurement class implementing a measurement of all track parameters.

Author
Johannes Rauch (Technische Universität München, original author)

This class can e.g. be used, if the fitted track parameters measured in one subdetector should be put into one "measurement".

Definition at line 42 of file FullMeasurement.h.

Constructor & Destructor Documentation

◆ FullMeasurement() [1/2]

genfit::FullMeasurement::FullMeasurement ( int  nDim = 5)

Definition at line 32 of file FullMeasurement.cc.

33 : AbsMeasurement(nDim), plane_()
34{
35 assert(nDim >= 1);
36}

◆ FullMeasurement() [2/2]

genfit::FullMeasurement::FullMeasurement ( const MeasuredStateOnPlane state,
int  detId = -1,
int  hitId = -1,
TrackPoint trackPoint = NULL 
)

Definition at line 39 of file FullMeasurement.cc.

40 : AbsMeasurement(state.getState(), state.getCov(), detId, hitId, trackPoint), plane_(state.getPlane())
41{
42 assert(rawHitCoords_.GetNrows() == (int)state.getRep()->getDim());
43}

◆ ~FullMeasurement()

virtual genfit::FullMeasurement::~FullMeasurement ( )
inlinevirtual

Definition at line 48 of file FullMeasurement.h.

48{;}

Member Function Documentation

◆ clone()

virtual AbsMeasurement * genfit::FullMeasurement::clone ( ) const
inlinevirtual

Deep copy ctor for polymorphic class.

Implements genfit::AbsMeasurement.

Definition at line 50 of file FullMeasurement.h.

50{return new FullMeasurement(*this);}

◆ constructHMatrix()

const AbsHMatrix * genfit::FullMeasurement::constructHMatrix ( const AbsTrackRep ) const
virtual

Returns a new AbsHMatrix object. Caller must take ownership.

Implements genfit::AbsMeasurement.

Definition at line 67 of file FullMeasurement.cc.

67 {
68
69 if (dynamic_cast<const RKTrackRep*>(rep) == NULL) {
70 Exception exc("SpacepointMeasurement default implementation can only handle state vectors of type RKTrackRep!", __LINE__,__FILE__);
71 throw exc;
72 }
73
74 return new HMatrixUnit();
75}

◆ constructMeasurementsOnPlane()

std::vector< MeasurementOnPlane * > genfit::FullMeasurement::constructMeasurementsOnPlane ( const StateOnPlane state) const
virtual

Construct MeasurementOnPlane on plane of the state and wrt the states TrackRep. The state will usually be the prediction or reference state, and has to be defined AT the measurement. The AbsMeasurement will be projected onto the plane. It's possible to make corrections to the coordinates here (e.g. by using the state coordinates). Usually the vector will contain only one element. But in the case of e.g. a WireMeasurement, it will be 2 (left and right).

Implements genfit::AbsMeasurement.

Definition at line 55 of file FullMeasurement.cc.

55 {
56
57 MeasurementOnPlane* mop = new MeasurementOnPlane(rawHitCoords_,
59 state.getPlane(), state.getRep(), constructHMatrix(state.getRep()));
60
61 std::vector<MeasurementOnPlane*> retVal;
62 retVal.push_back(mop);
63 return retVal;
64}
virtual const AbsHMatrix * constructHMatrix(const AbsTrackRep *) const

◆ constructPlane()

SharedPlanePtr genfit::FullMeasurement::constructPlane ( const StateOnPlane state) const
virtual

Construct (virtual) detector plane (use state's AbsTrackRep). It's possible to make corrections to the plane here. The state should be defined somewhere near the measurement. For virtual planes, the state will be extrapolated to the POCA to point (SpacepointMeasurement) or line (WireMeasurement), and from this info the plane will be constructed.

Implements genfit::AbsMeasurement.

Definition at line 46 of file FullMeasurement.cc.

46 {
47 if (!plane_) {
48 Exception exc("FullMeasurement::constructPlane(): No plane has been set!", __LINE__,__FILE__);
49 throw exc;
50 }
51 return plane_;
52}

Member Data Documentation

◆ plane_

SharedPlanePtr genfit::FullMeasurement::plane_
protected

Definition at line 59 of file FullMeasurement.h.


The documentation for this class was generated from the following files: