FairRoot/PandaRoot
PlanarMeasurement.h
Go to the documentation of this file.
1 /* Copyright 2008-2010, Technische Universitaet Muenchen,
2  Authors: Christian Hoeppner & Sebastian Neubert & Johannes Rauch
3 
4  This file is part of GENFIT.
5 
6  GENFIT is free software: you can redistribute it and/or modify
7  it under the terms of the GNU Lesser General Public License as published
8  by the Free Software Foundation, either version 3 of the License, or
9  (at your option) any later version.
10 
11  GENFIT is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU Lesser General Public License for more details.
15 
16  You should have received a copy of the GNU Lesser General Public License
17  along with GENFIT. If not, see <http://www.gnu.org/licenses/>.
18 */
23 #ifndef genfit_PlanarMeasurement_h
24 #define genfit_PlanarMeasurement_h
25 
26 #include "AbsMeasurement.h"
27 #include "AbsHMatrix.h"
28 #include "MeasurementOnPlane.h"
29 
30 
31 namespace genfit {
32 
33 class AbsTrackRep;
34 
45 
46  public:
47  PlanarMeasurement(int nDim = 1);
48  PlanarMeasurement(const TVectorD& rawHitCoords, const TMatrixDSym& rawHitCov, int detId, int hitId, TrackPoint* trackPoint);
49 
50  virtual ~PlanarMeasurement() {;}
51 
52  virtual AbsMeasurement* clone() const {return new PlanarMeasurement(*this);}
53 
54  int getPlaneId() const {return planeId_;}
55 
56  virtual SharedPlanePtr constructPlane(const StateOnPlane& state) const;
57 
58  virtual std::vector<MeasurementOnPlane*> constructMeasurementsOnPlane(const StateOnPlane& state) const;
59 
60  virtual const AbsHMatrix* constructHMatrix(const AbsTrackRep*) const;
61 
62  virtual void setPlane(const SharedPlanePtr& physicalPlane, int planeId = -1) {physicalPlane_ = physicalPlane; planeId_ = planeId;}
63 
70  void setStripV(bool v = true) {stripV_ = v;}
71 
72  protected:
74  int planeId_; // planeId id is -1 per default
75  bool stripV_;
76 
77  public:
78 
79  ClassDef(PlanarMeasurement,1)
80 
81 };
82 
83 } /* End of namespace genfit */
86 #endif // genfit_PlanarMeasurement_h
virtual std::vector< MeasurementOnPlane * > constructMeasurementsOnPlane(const StateOnPlane &state) const
boost::shared_ptr< genfit::DetPlane > SharedPlanePtr
Shared Pointer to a DetPlane.
Abstract base class for a track representation.
Definition: AbsTrackRep.h:66
HMatrix for projecting from AbsTrackRep parameters to measured parameters in a DetPlane.
Definition: AbsHMatrix.h:37
Measurement class implementing a planar hit geometry (1 or 2D).
__m128 v
Definition: P4_F32vec4.h:4
A state with arbitrary dimension defined in a DetPlane.
Definition: StateOnPlane.h:45
virtual const AbsHMatrix * constructHMatrix(const AbsTrackRep *) const
virtual AbsMeasurement * clone() const
Deep copy ctor for polymorphic class.
Object containing AbsMeasurement and AbsFitterInfo objects.
Definition: TrackPoint.h:50
void setStripV(bool v=true)
Use if the coordinate for 1D hits measured in V direction.
virtual SharedPlanePtr constructPlane(const StateOnPlane &state) const
Contains the measurement and covariance in raw detector coordinates.
int planeId_
This is persistent, but '!' makes ROOT shut up.
Matrix inversion tools.
Definition: AbsBField.h:29
virtual void setPlane(const SharedPlanePtr &physicalPlane, int planeId=-1)