StRoot
1
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
Stl3Util
ftf
FtfTrack.h
1
//:>----------------------------------------------------------------------
2
//: FILE: FtfTrack.h
3
//: HISTORY:
4
//: 27jan2000 start writting changes
5
//: refHit replaced by xRefHit and yRefHit
6
//: 27jan2000 VOLUME, ROW and AREA classes replaced by FtfContainer
7
//: 9mar2000 trackLength moved to FtfBaseTrack
8
//: 9mar2000 use void pointers
9
//:>----------------------------------------------------------------------
10
#ifndef FTFTRACK
11
#define FTFTRACK
12
#include "Stl3Util/ftf/FtfGeneral.h"
13
#include "Stl3Util/ftf/FtfBaseTrack.h"
14
#include "Stl3Util/ftf/FtfHit.h"
15
#include "Stl3Util/ftf/FtfPara.h"
16
17
int
const
USE_SEGMENT= 1 ;
18
int
const
USE_FOLLOW = 2 ;
19
int
const
GO_DOWN =-1 ;
20
int
const
GO_UP = 1 ;
21
22
class
FtfTrack
:
public
FtfBaseTrack
{
23
24
public
:
25
friend
class
FtfFinder
;
26
27
void
add (
FtfHit
*thisHit,
int
way ) ;
28
void
add (
FtfTrack
*thisTrack ) ;
29
int
buildTrack (
FtfHit
*firstHit,
FtfContainer
*volume ) ;
30
void
dEdx ( ) ;
31
void
deleteCandidate ( ) ;
32
void
fill ( ) ;
33
void
fillPrimary (
double
&xc,
double
&yc,
double
&rc,
34
double
xPar,
double
yPar ) ;
35
void
fillSecondary (
double
&xc,
double
&yc,
double
xPar,
double
yPar ) ;
36
int
follow (
FtfContainer
*volume,
int
way,
int
rowToStop ) ;
37
int
followHitSelection (
FtfHit
*baseHit,
FtfHit
*candidateHit ) ;
38
FtfTrack
* getNextTrack ( ) {
return
(
FtfTrack
*)nxatrk ; } ;
39
int
mergePrimary (
FtfContainer
*trackArea ) ;
40
void
reset ( ) ;
41
FtfHit
*seekNextHit (
FtfContainer
*volume,
FtfHit
*baseHit,
42
int
nradiusSteps,
int
whichFunction ) ;
43
int
segment (
FtfContainer
*volume,
int
way ) ;
44
int
segmentHitSelection (
FtfHit
*baseHit,
FtfHit
*candidateHit ) ;
45
void
*nxatrk ;
46
47
#ifdef DEBUG
48
void
debugAsk ( ) ;
49
void
debugDeleteCandidate ( ) ;
50
void
debugFill ( ) ;
51
void
debugFollowCandidate (
FtfHit
*candidate_hit ) ;
52
void
debugFollowSuccess (
double
dxy,
double
dsz,
double
lchi2_xy,
53
double
lchi2_sz,
double
chi2_min,
54
FtfHit
*candidate_hit ) ;
55
void
debugInVolume (
FtfHit
*base_hit,
FtfHit
*current_hit ) ;
56
void
debugNew ( ) ;
57
#endif
58
59
float
lastXyAngle ;
// Angle in the xy plane of line connecting to last hits
60
typedef
double
vfit ;
61
62
vfit xRefHit ;
63
vfit yRefHit ;
64
vfit xLastHit ;
65
vfit yLastHit ;
66
67
vfit s11Xy ;
// Fit Parameters
68
vfit s12Xy ;
69
vfit s22Xy ;
70
vfit g1Xy ;
71
vfit g2Xy ;
72
vfit s11Sz ;
73
vfit s12Sz ;
74
vfit s22Sz ;
75
vfit g1Sz ;
76
vfit g2Sz ;
77
78
vfit ddXy, a1Xy, a2Xy ;
/*fit par in xy */
79
vfit ddSz, a1Sz, a2Sz ;
/*fit par in sz */
80
//private:
81
inline
virtual
void
nextHit (){ currentHit = ((
FtfBaseHit
*)currentHit)->nextTrackHit ; } ;
82
83
} ;
84
#endif
85
FtfHit
Definition:
FtfHit.h:16
FtfTrack
Definition:
FtfTrack.h:27
FtfBaseTrack
Definition:
FtfBaseTrack.h:18
FtfFinder
Definition:
FtfFinder.h:23
FtfBaseHit
Definition:
FtfBaseHit.h:30
FtfContainer
Definition:
FtfGeneral.h:32
Generated by
1.8.5