FairRoot/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 
13 #include "PndFTSCATrackParam.h"
14 #include "PndFTSCAParam.h"
15 #include "CAFieldValue.h"
16 
17 
18 class FTSCATarget {
19 
26  public:
27  FTSCATarget():fX0(0), fX1(0), fX2(0), fDX1(-1), fDX2(-1), fDQMom(-1), fB(), fNDF(-1) {};
28  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 ):
29  fX0(x0), fX1(x1), fX2(x2), fDX1(dx1), fDX2(dx2), fDQMom(dqmom), fNDF(ndf) {
30  fB[0] = param.VtxFieldValue(0);
31  fZB[0] = param.ZVtxFieldValue(0);
32  fB[1] = param.VtxFieldValue(1);
33  fZB[1] = param.ZVtxFieldValue(1);
34  };
35 
36  float SetErrQMom( float v ) { return fDQMom = v; }
37 
38  float X0() const { return fX0; }
39  float X1() const { return fX1; }
40  float X2() const { return fX2; }
41 
42  float Err2X1() const { return fDX1*fDX1; }
43  float Err2X2() const { return fDX2*fDX2; }
44  float Err2QMom() const { return fDQMom*fDQMom; }
45  float DQMom() const { return fDQMom*fDQMom; }
46  const CAFieldValue& B( int i = 0 ) const { return fB[i]; }
47  const float_v& ZB( int i ) const { return fZB[i]; }
48  int NDF() const { return fNDF; }
49 
50  private:
51  float fX0, fX1, fX2, fDX1, fDX2, fDQMom;
52 
54  float_v fZB[2]; // fZ position of the field point
55 
56  int fNDF; // 0 or 2, depends whether we consider target as a measurement
57 };
58 
59 #endif
Double_t x0
Definition: checkhelixhit.C:70
Int_t i
Definition: run_full.C:25
float X1() const
Definition: FTSCATarget.h:39
int NDF() const
Definition: FTSCATarget.h:48
float SetErrQMom(float v)
Definition: FTSCATarget.h:36
float fDX2
Definition: FTSCATarget.h:51
__m128 v
Definition: P4_F32vec4.h:4
float Err2X1() const
Definition: FTSCATarget.h:42
const CAFieldValue & B(int i=0) const
Definition: FTSCATarget.h:46
float DQMom() const
Definition: FTSCATarget.h:45
float X2() const
Definition: FTSCATarget.h:40
const float_v & ZB(int i) const
Definition: FTSCATarget.h:47
const CAFieldValue & VtxFieldValue(int i=0) const
float fDQMom
Definition: FTSCATarget.h:51
const float_v & ZVtxFieldValue(int i) const
CAFieldValue fB[2]
Definition: FTSCATarget.h:53
float fDX1
Definition: FTSCATarget.h:51
float X0() const
Definition: FTSCATarget.h:38
float_v fZB[2]
Definition: FTSCATarget.h:54
float Err2X2() const
Definition: FTSCATarget.h:43
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:28
float Err2QMom() const
Definition: FTSCATarget.h:44