PandaRoot
FTSCATarget.h
Go to the documentation of this file.
1 //-*- Mode: C++ -*-
2 // *****************************************************************************
3 // *
4 // @Autors: I.Kulakov; M.Pugach; M.Zyzak; I.Kisel *
5 // @e-mail: I.Kulakov@gsi.de; M.Pugach@gsi.de; M.Zyzak@gsi.de; I.Kisel@compeng.uni-frankfurt.de *
6 // *
7 // *****************************************************************************
8 
9 #ifndef FTSCATARGET_H
10 #define FTSCATARGET_H
11 
12 #include "PndFTSCATrackParam.h"
13 #include "PndFTSCAParam.h"
14 #include "CAFieldValue.h"
15 
16 class FTSCATarget {
17 
24  public:
25  FTSCATarget() : fX0(0), fX1(0), fX2(0), fDX1(-1), fDX2(-1), fDQMom(-1), fB(), fNDF(-1){};
26  FTSCATarget(const float &x0, const float &x1, const float &x2, const float &dx1, const float &dx2, const float &dqmom, const PndFTSCAParam &param, const int &ndf)
27  : fX0(x0), fX1(x1), fX2(x2), fDX1(dx1), fDX2(dx2), fDQMom(dqmom), fNDF(ndf)
28  {
29  fB[0] = param.VtxFieldValue(0);
30  fZB[0] = param.ZVtxFieldValue(0);
31  fB[1] = param.VtxFieldValue(1);
32  fZB[1] = param.ZVtxFieldValue(1);
33  };
34 
35  float SetErrQMom(float v) { return fDQMom = v; }
36 
37  float X0() const { return fX0; }
38  float X1() const { return fX1; }
39  float X2() const { return fX2; }
40 
41  float Err2X1() const { return fDX1 * fDX1; }
42  float Err2X2() const { return fDX2 * fDX2; }
43  float Err2QMom() const { return fDQMom * fDQMom; }
44  float DQMom() const { return fDQMom * fDQMom; }
45  const CAFieldValue &B(int i = 0) const { return fB[i]; }
46  const float_v &ZB(int i) const { return fZB[i]; }
47  int NDF() const { return fNDF; }
48 
49  private:
50  float fX0, fX1, fX2, fDX1, fDX2, fDQMom;
51 
52  CAFieldValue fB[2];
53  float_v fZB[2]; // fZ position of the field point
54 
55  int fNDF; // 0 or 2, depends whether we consider target as a measurement
56 };
57 
58 #endif
float DQMom() const
Definition: FTSCATarget.h:44
const float_v & ZB(int i) const
Definition: FTSCATarget.h:46
float X0() const
Definition: FTSCATarget.h:37
float SetErrQMom(float v)
Definition: FTSCATarget.h:35
float Err2QMom() const
Definition: FTSCATarget.h:43
__m128 v
Definition: P4_F32vec4.h:3
unsigned int i
Definition: P4_F32vec4.h:21
float X1() const
Definition: FTSCATarget.h:38
const CAFieldValue & VtxFieldValue(int i=0) const
float Err2X1() const
Definition: FTSCATarget.h:41
int NDF() const
Definition: FTSCATarget.h:47
const float_v & ZVtxFieldValue(int i) const
float X2() const
Definition: FTSCATarget.h:39
const CAFieldValue & B(int i=0) const
Definition: FTSCATarget.h:45
FTSCATarget(const float &x0, const float &x1, const float &x2, const float &dx1, const float &dx2, const float &dqmom, const PndFTSCAParam &param, const int &ndf)
Definition: FTSCATarget.h:26
float Err2X2() const
Definition: FTSCATarget.h:42