PandaRoot
PndHypRecoHit.h
Go to the documentation of this file.
1 //****************************************************************************
2 //* This file is part of PandaRoot. *
3 //* *
4 //* PandaRoot is distributed under the terms of the *
5 //* GNU General Public License (GPL) version 3, *
6 //* copied verbatim in the file "LICENSE". *
7 //* *
8 //* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9 //* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10 //* The authors are listed in the file "AUTHORS". *
11 //****************************************************************************
12 
13 //-----------------------------------------------------------
14 // File and Version Information:
15 // $Id$
16 //
17 // Description:
18 // an xyz reco hit
19 //
20 // Environment:
21 // Software developed for the PANDA Detector at FAIR.
22 //
23 // Author List:
24 // Sebastian Neubert TUM (original author)
25 // Ralf Kliemt TUD (application to PndMvd)
26 //
27 //-----------------------------------------------------------
28 
30 
33 // Base Class Headers ----------------
34 
35 #ifndef PNDHYPRECOHIT_HH
36 #define PNDHYPRECOHIT_HH
37 
38 // Base Class Headers ----------------
39 #include "GFRecoHitIfc.h"
40 #include "GFPlanarHitPolicy.h"
41 #include "PndHypGeoHandling.h"
42 
43 // Collaborating Class Headers -------
44 #include <ostream> // remove if you do not need streaming op
45 
46 // Collaborating Class Declarations --
47 class FairMCPoint;
48 class PndHypPoint;
49 class PndHypHit;
50 
51 class PndHypRecoHit : public GFRecoHitIfc<GFPlanarHitPolicy> {
52  public:
53  // Constructors/Destructors ---------
54  PndHypRecoHit();
55 
56  PndHypRecoHit(PndHypPoint *point); // from lab MC points
57  PndHypRecoHit(PndHypHit *hit); // from lab cluster hits TODO change to local
58  // PndHypRecoHit(const TVector3& hit, const TMatrixT<Double_t>& cov,
59  // const DetPlane* detplane);//from lab
60  // PndHypRecoHit(const TVector3& hit, const TMatrixT<Double_t>& cov,
61  // const TVector3& o,const TVector3& u,const TVector3& v);//from lab
62  // PndHypRecoHit(const TMatrixT<Double_t>& xy,const TMatrixT<Double_t>& cov,
63  // const DetPlane* detplane);//from sensor plane
64 
65  virtual ~PndHypRecoHit();
66 
67  virtual GFAbsRecoHit *clone() { return new PndHypRecoHit(*this); };
68 
69  // Operations ----------------------
70  virtual TMatrixT<double> getHMatrix(const GFAbsTrackRep *stateVector);
71 
72  virtual Double_t residualScalar(GFAbsTrackRep *stateVector, const TMatrixT<Double_t> &state);
73 
74  private:
75  // Private Data Members ------------
76  static const Int_t fNparHitRep = 3;
77  PndHypGeoHandling *fGeoH;
78 
79  // Private Methods -----------------
80 
81  public:
83 };
84 
85 #endif
86 
87 //--------------------------------------------------------------
88 // $Log$
89 //--------------------------------------------------------------
Base Class for genfit track representations. Defines interface for track parameterizations.
Definition: GFAbsTrackRep.h:92
RecoHit interface template class. Provides comfortable interface to create RecoHits.
Definition: GFRecoHitIfc.h:70
Class to access the naming information of the MVD.
ClassDef(PndHypRecoHit, 1)
Base Class for representing a Hit in GENFIT.
Definition: GFAbsRecoHit.h:83
virtual ~PndHypRecoHit()
virtual GFAbsRecoHit * clone()
Get clone of this object.
Definition: PndHypRecoHit.h:67
virtual TMatrixT< double > getHMatrix(const GFAbsTrackRep *stateVector)
Get transformation matrix. Transformation between hit coordinates and track representation coordinate...
virtual Double_t residualScalar(GFAbsTrackRep *stateVector, const TMatrixT< Double_t > &state)