PandaRoot
GFRecoHitIfc.h
Go to the documentation of this file.
1 /* Copyright 2008-2010, Technische Universitaet Muenchen,
2  Authors: Christian Hoeppner & Sebastian Neubert
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 GFRECOHITIFC_H
24 #define GFRECOHITIFC_H
25 
26 #include "TMatrixT.h"
27 
28 #include "GFAbsRecoHit.h"
29 #include "GFDetPlane.h"
30 
57 template <class HitPolicy>
58 class GFRecoHitIfc : public GFAbsRecoHit {
59  protected:
60  HitPolicy fPolicy;
61 
62  public:
65  GFRecoHitIfc(int dim) : GFAbsRecoHit(dim) { ; }
66  virtual ~GFRecoHitIfc() { ; }
67 
77  virtual const GFDetPlane &getDetPlane(GFAbsTrackRep *rep) { return fPolicy.detPlane(this, rep); }
78 
83  virtual TMatrixT<double> getHitCoord(const GFDetPlane &plane) { return fPolicy.hitCoord(this, plane); }
84 
89  virtual TMatrixT<double> getHitCov(const GFDetPlane &plane) { return fPolicy.hitCov(this, plane); }
90 
91  const std::string &getPolicyName() { return fPolicy.getName(); }
92 
93  public:
95 };
96 
97 #endif
98 
Base Class for genfit track representations. Defines interface for track parameterizations.
Definition: GFAbsTrackRep.h:80
virtual TMatrixT< double > getHitCov(const GFDetPlane &plane)
Get hit covariances in a specific detector plane.
Definition: GFRecoHitIfc.h:89
RecoHit interface template class. Provides comfortable interface to create RecoHits.
Definition: GFRecoHitIfc.h:58
virtual ~GFRecoHitIfc()
Definition: GFRecoHitIfc.h:66
Detector plane genfit geometry class.
Definition: GFDetPlane.h:58
const std::string & getPolicyName()
Definition: GFRecoHitIfc.h:91
virtual const GFDetPlane & getDetPlane(GFAbsTrackRep *rep)
Returns the detector plane object for this hit and a given track representation.
Definition: GFRecoHitIfc.h:77
HitPolicy fPolicy
Definition: GFRecoHitIfc.h:60
Base Class for representing a Hit in GENFIT.
Definition: GFAbsRecoHit.h:71
virtual TMatrixT< double > getHitCoord(const GFDetPlane &plane)
Get hit coordinates in a specific detector plane.
Definition: GFRecoHitIfc.h:83
ClassDef(GFRecoHitIfc, 1)
GFRecoHitIfc(int dim)
Constructor specifying dimension of hit coordinate vector.
Definition: GFRecoHitIfc.h:65