FEDRA emulsion software from the OPERA Collaboration
Track.h
Go to the documentation of this file.
1#ifndef TRACK_H
2#define TRACK_H
3
4#include <iostream>
5#include <vector>
6#include <cmath>
7#include "Struct.h"
8
9class Track
10{
11private:
12 unsigned int _areaSum;
13 unsigned short _count;
14 double _x;
15 double _y;
16 double _z;
17 double _errx;
18 double _erry;
19 double _errz;
20 double _sx;
21 double _sy;
22 double _sz;
23 double _sigma;
24 double _topZ;
25 double _bottomZ;
26 std::vector<Grain> _grains;
27
28 double pointTo3DlineDistance(double x0, double y0, double z0);
29
30
31
32public:
33 Track();
34 ~Track(){};
35
36 // track estimators
44 double mx, mxSigma, qx, rx, xChi2;
45 double my, mySigma, qy, ry, yChi2;
46 double dz;
47
48
49 void setAreaSum(unsigned int areaSum) {_areaSum = areaSum;}
50 void setCount(unsigned short count) {_count = count;}
51 void setX(double x) {_x = x;}
52 void setY(double y) {_y = y;}
53 void setZ(double z) {_z = z;}
54
55 void setErrX(double errx) {_errx = errx;}
56 void setErrY(double erry) {_erry = erry;}
57 void setErrZ(double errz) {_errz = errz;}
58
59 void setSX(double sx) {_sx = sx;}
60 void setSY(double sy) {_sy = sy;}
61 void setSZ(double sz) {_sz = sz;}
62 void setSigma(double sigma) {_sigma = sigma;}
63 void setTopZ(double z) {_topZ = z;}
64 void setBottomZ(double z) {_bottomZ = z;}
65 void addGrain(Grain gr) {_grains.push_back(gr);}
66
67 unsigned int getAreaSum() const {return _areaSum;}
68 unsigned short getCount() const {return _count;}
69 double getX() const {return _x;}
70 double getY() const {return _y;}
71 double getZ() const {return _z;}
72 double getErrX() const {return _errx;}
73 double getErrY() const {return _erry;}
74 double getErrZ() const {return _errz;}
75 double getSX() const {return _sx;}
76 double getSY() const {return _sy;}
77 double getSZ() const {return _sz;}
78 double getSigma() const {return _sigma;}
79 double getTopZ() const {return _topZ;}
80 double getBottomZ() const {return _bottomZ;}
81 std::vector<Grain> getGrains() const {return _grains;}
82
83 bool evaluateEstimators();
84
85
86
87
88};
89
90#endif
brick z0
Definition: RecDispMC.C:106
Definition: Track.h:10
double mxSigma
Definition: Track.h:44
double qy
Definition: Track.h:45
double getTopZ() const
Definition: Track.h:79
Track()
Definition: Track.cpp:5
double getErrZ() const
Definition: Track.h:74
void addGrain(Grain gr)
Definition: Track.h:65
double sigmaDeltaThetaYZ
Definition: Track.h:42
double getSX() const
Definition: Track.h:75
double meanDeltaThetaXZ
Definition: Track.h:39
double getBottomZ() const
Definition: Track.h:80
double _y
Definition: Track.h:15
~Track()
Definition: Track.h:34
double getSigma() const
Definition: Track.h:78
double getSZ() const
Definition: Track.h:77
double getX() const
Definition: Track.h:69
void setErrZ(double errz)
Definition: Track.h:57
double meanDeltaTheta3D
Definition: Track.h:34
void setErrY(double erry)
Definition: Track.h:56
double getZ() const
Definition: Track.h:71
void setSX(double sx)
Definition: Track.h:59
void setCount(unsigned short count)
Definition: Track.h:50
double meanGapClusterToCluster
Definition: Track.h:43
double getSY() const
Definition: Track.h:76
std::vector< Grain > _grains
Definition: Track.h:26
double _sx
Definition: Track.h:20
void setZ(double z)
Definition: Track.h:53
void setSZ(double sz)
Definition: Track.h:61
double pointTo3DlineDistance(double x0, double y0, double z0)
Definition: Track.cpp:17
double xChi2
Definition: Track.h:44
unsigned short getCount() const
Definition: Track.h:68
double getY() const
Definition: Track.h:70
double _errz
Definition: Track.h:19
double _sz
Definition: Track.h:22
double _erry
Definition: Track.h:18
double mySigma
Definition: Track.h:45
double getErrX() const
Definition: Track.h:72
void setErrX(double errx)
Definition: Track.h:55
double mx
Definition: Track.h:44
double sigmaDeltaThetaXZ
Definition: Track.h:40
void setX(double x)
Definition: Track.h:51
double my
Definition: Track.h:45
void setY(double y)
Definition: Track.h:52
double _sigma
Definition: Track.h:23
void setSigma(double sigma)
Definition: Track.h:62
unsigned int getAreaSum() const
Definition: Track.h:67
double getErrY() const
Definition: Track.h:73
double _x
Definition: Track.h:14
void setBottomZ(double z)
Definition: Track.h:64
double _errx
Definition: Track.h:17
double sigmaDeltaTheta3D
Definition: Track.h:38
std::vector< Grain > getGrains() const
Definition: Track.h:81
double _z
Definition: Track.h:16
void setSY(double sy)
Definition: Track.h:60
double _sy
Definition: Track.h:21
void setAreaSum(unsigned int areaSum)
Definition: Track.h:49
double yChi2
Definition: Track.h:45
double ry
Definition: Track.h:45
unsigned short _count
Definition: Track.h:13
double rx
Definition: Track.h:44
double _bottomZ
Definition: Track.h:25
double _topZ
Definition: Track.h:24
double meanDistanceClustersTo3DLine
Definition: Track.h:43
bool evaluateEstimators()
Definition: Track.cpp:33
double dz
Definition: Track.h:46
void setTopZ(double z)
Definition: Track.h:63
double qx
Definition: Track.h:44
double meanDeltaThetaYZ
Definition: Track.h:41
unsigned int _areaSum
Definition: Track.h:12
Definition: Struct.h:33