GFPlanarHitPolicy.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 */
19 /** @addtogroup genfit
20  * @{
21  */
22 
23 #ifndef GFPLANARHITPOLICY_H
24 #define GFPLANARHITPOLICY_H
25 
26 #include<string>
27 
28 #include "RtypesCore.h"
29 #include "TMatrixT.h"
30 #include "TObject.h"
31 
33 
34 
35 /** @brief Policy class implementing a planar hit geometry.
36  *
37  * @author Christian H&ouml;ppner (Technische Universit&auml;t M&uuml;nchen, original author)
38  * @author Sebastian Neubert (Technische Universit&auml;t M&uuml;nchen, original author)
39  *
40  * RecoHits for planar detectors should inherit
41  * from RecoHitIfc<GFPlanarHitPolicy>.
42  *
43  * The main feature of this type of hit is, that the detector plane
44  * is completely defined by the detector hardware. Derived RecoHits need only
45  * to supply the physical detector plane from their geometry database.
46  */
47 
48 namespace genf {
49 
50 class GFAbsRecoHit;
51 class GFAbsTrackRep;
52 
53 class GFPlanarHitPolicy : public TObject{
54 public:
55 
56  // Constructors/Destructors ---------
58 
59 
60  // Accessors -----------------------
61 
62  /** @brief Returns the physical detector plane.
63  */
65 
66 
67  // Modifiers -----------------------
68 
69  /** @brief Set physical detector plane.
70  * Needs to be called before hit can be used.
71  *
72  * For the planar detector the detector plane is fixed by the geometry of the
73  * detector hardware. This method should be called in the constructor of
74  * any derived RecoHit in order to setup the geometry of this hit.
75  */
77 
78  // Operations ----------------------
79  /** @brief Hit coordinates in detector plane.
80  */
81  TMatrixT<Double_t> hitCoord(GFAbsRecoHit*,const GFDetPlane&);
82 
83  /** @brief Hit covariances in detector plane.
84  */
85  TMatrixT<Double_t> hitCov(GFAbsRecoHit*,const GFDetPlane&);
86 
87  virtual ~GFPlanarHitPolicy(){;}
88 
89  const std::string& getName(){return fPolicyName;}
90 
91  private:
92  static const std::string fPolicyName;
93 
94 protected:
95 
96  // Private Data Members ------------
97 
98  /** @brief Physical detector plane. Given by detector hardware.
99  */
101 
102  // Private Methods -----------------
103 
104  // public:
105  //ClassDef(GFPlanarHitPolicy,1)
106 
107 };
108 
109 
110 } // end namespace genf
111 #endif
112 
113 /** @} */
static const std::string fPolicyName
TMatrixT< Double_t > hitCoord(GFAbsRecoHit *, const GFDetPlane &)
Hit coordinates in detector plane.
std::string string
Definition: nybbler.cc:12
Generic Interface to magnetic fields in GENFIT.
Definition: GFAbsBField.h:35
Base Class for genfit track representations. Defines interface for track parameterizations.
Definition: GFAbsTrackRep.h:83
p
Definition: test.py:223
const GFDetPlane & detPlane(GFAbsRecoHit *, const GFAbsTrackRep *)
Returns the physical detector plane.
const std::string & getName()
GFDetPlane fPhysicalDetPlane
Physical detector plane. Given by detector hardware.
void setDetPlane(const GFDetPlane &p)
Set physical detector plane. Needs to be called before hit can be used.
TMatrixT< Double_t > hitCov(GFAbsRecoHit *, const GFDetPlane &)
Hit covariances in detector plane.