LArSoft  v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
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 
27 #include "TMatrixT.h"
28 
31 
32 
59 namespace genf {
60 
61 template<class HitPolicy>
62 class GFRecoHitIfc : public GFAbsRecoHit{
63  protected:
64  HitPolicy fPolicy;
65 
66  public:
67 
70  GFRecoHitIfc(int dim) : GFAbsRecoHit(dim){;}
71  virtual ~GFRecoHitIfc(){;}
72 
82  virtual const GFDetPlane& getDetPlane(GFAbsTrackRep* rep){return fPolicy.detPlane(this,rep);}
83 
88  virtual TMatrixT<Double_t> getHitCoord(const GFDetPlane& plane,const GFDetPlane& planePrev)
89  {return fPolicy.hitCoord(this,plane,planePrev);}
90  virtual TMatrixT<Double_t> getHitCoord(const GFDetPlane& plane)
91  {return fPolicy.hitCoord(this,plane);}
92 
97  virtual TMatrixT<Double_t> getHitCov(const GFDetPlane& plane)
98  {return fPolicy.hitCov(this,plane);}
99  virtual TMatrixT<Double_t> getHitCov(const GFDetPlane& plane, const GFDetPlane& planePrev, const TMatrixT<Double_t>& state, const Double_t& mass)
100  {return fPolicy.hitCov(this,plane,planePrev, state, mass);}
101 
102  const std::string& getPolicyName(){return fPolicy.getName();}
103 
104  //public:
105  // ClassDef(GFRecoHitIfc,1);
106 
107 };
108 
109 }
110 
111 #endif
112 
113 
const std::string & getPolicyName()
Definition: GFRecoHitIfc.h:102
virtual const GFDetPlane & getDetPlane(GFAbsTrackRep *rep)
Returns the detector plane object for this hit and a given track representation.
Definition: GFRecoHitIfc.h:82
GFRecoHitIfc(int dim)
Constructor specifying dimension of hit coordinate vector.
Definition: GFRecoHitIfc.h:70
Generic Interface to magnetic fields in GENFIT.
virtual TMatrixT< Double_t > getHitCov(const GFDetPlane &plane, const GFDetPlane &planePrev, const TMatrixT< Double_t > &state, const Double_t &mass)
Definition: GFRecoHitIfc.h:99
virtual TMatrixT< Double_t > getHitCoord(const GFDetPlane &plane, const GFDetPlane &planePrev)
Get hit coordinates in a specific detector plane.
Definition: GFRecoHitIfc.h:88
virtual ~GFRecoHitIfc()
Definition: GFRecoHitIfc.h:71
Base Class for genfit track representations. Defines interface for track parameterizations.
Definition: GFAbsTrackRep.h:85
virtual TMatrixT< Double_t > getHitCov(const GFDetPlane &plane)
Get hit covariances in a specific detector plane.
Definition: GFRecoHitIfc.h:97
virtual TMatrixT< Double_t > getHitCoord(const GFDetPlane &plane)
Definition: GFRecoHitIfc.h:90