1 #ifndef HARPORECOEVENT_H
2 #define HARPORECOEVENT_H
13 #include "TClonesArray.h"
19 #define NCLUSTERMAX 6000
21 #define NCLUSTERTYPES 3
32 HarpoRecoClusters(Int_t Type, Double_t Q, Double_t Qmax, Double_t Mean, Int_t Index, Double_t Sig,Int_t iFirst,Int_t Width,Int_t IdClusterTrack,Int_t plane,Int_t quality = 0);
129 HarpoRecoTracks(Int_t Ntrack,Int_t QtTrack,Double_t AngleTrack,Double_t x0, Int_t TypeTrack,Int_t IdTrackMatching,Int_t NclusterTrack,Int_t plane, Double_t xStart, Double_t zStart, Double_t xEnd, Double_t zEnd);
194 HarpoRecoHoughTracks(Int_t Ntrack, Double_t Mtheta, Double_t Mrho,Double_t Sigtheta,Double_t Sigrho,Int_t QtTrack,Double_t AngleTrack,Double_t x0, Int_t TypeTrack,Int_t IdTrackMatching,Int_t NclusterTrack,Int_t plane, Double_t xStart, Double_t zStart, Double_t xEnd, Double_t zEnd);
227 HarpoRecoKalmanTracks(Int_t Ntrack, Int_t QtTrack, Double_t AngleTrack,Double_t x0,Double_t chi2, Int_t TypeTrack, Int_t IdTrackMatching, Int_t NclusterTrack,Int_t plane, Double_t xStart, Double_t zStart, Double_t pxStart, Double_t pzStart, Double_t xEnd, Double_t zEnd, Double_t pxEnd, Double_t pzEnd);
267 HarpoRecoVertex(Int_t plane, Double_t z, Double_t x, Double_t pz, Double_t px, Double_t theta, Double_t chi2, Int_t tr1, Int_t tr2);
317 HarpoRecoVertex3D(Double_t x, Double_t y, Double_t z, Double_t px1, Double_t py1, Double_t pz1, Double_t px2, Double_t py2, Double_t pz2, Int_t vX, Int_t vY, Double_t chi2);
385 HarpoRecoMatching(Int_t ngoodmatch, Int_t iMatchTrX, Int_t iMatchTrX2, Int_t iMatchTrY, Int_t iMatchTrY2,Double_t chi2);
426 HarpoRecoReco3D(Int_t ntrack_3d,Double_t doca, Double_t poca_x, Double_t poca_y, Double_t poca_z, Double_t px,Double_t py, Double_t pz,Double_t aopen,Double_t aazimutal);
487 if(val->InheritsFrom(
"HarpoRecoHoughTracks")){
492 if(val->InheritsFrom(
"HarpoRecoKalmanTracks")){
527 if(val->InheritsFrom(
"HarpoRecoHoughTracks")){
531 if(val->InheritsFrom(
"HarpoRecoKalmanTracks")){
void SetPzEnd(Double_t val)
ClassDef(HarpoRecoClusters, 1)
void SetXend(Double_t val)
Int_t fNclusterTrack
Number of associated clusters.
void SetTypeTrack(Int_t val)
Double_t GetZfit(Int_t i=0)
void SetTr2Vertex(Int_t val)
virtual ~HarpoRecoHoughTracks()
void SetXvertex3D(Double_t val)
Int_t fQtTrack
total charge associated to the track
Int_t fNvertexXEvt
Number of vertexes in X.
void SetVertex(HarpoRecoVertex *val, Int_t nrec)
Int_t fIfirst
index of cluster beginning
void AddVertex3D(HarpoRecoVertex3D *val)
virtual ~HarpoRecoTracks()
void SetVertexX(Int_t val)
void SetChi2Vertex(Double_t val)
void SetChi2(Double_t val)
void SetMatchingArray(TClonesArray *a)
void SetEventType(Int_t val)
TClonesArray * GetKalmanTracksArray()
TClonesArray * fVertex3DArray
list of 3D vertexes HarpoRecoVertex3D in the event
Int_t fXmax
maximum value of X in the event
virtual ~HarpoRecoClusters()
Int_t fTmax
maximum value of T in the event
void SetPoca_x(Double_t val)
Int_t fQtotXEvt
total charge on X
void SetQtotXEvt(Int_t val)
void SetPxEnd(Double_t val)
void SetPxVertex(Double_t val)
void Setngoodmatch(Int_t val)
void SetNclTrackEvt(Int_t val)
Double_t fSigrho
RMS for Hough parameter rho.
Int_t fiMatchTrY
Associated Y tracks.
TClonesArray * fReco3DArray
Int_t fEventType
Event Type (TO BE DEFINED)
TClonesArray * fClustersArray
List of HarpoRecoClusters in the event.
Double_t GetPz1Vertex3D()
Double_t GetPy2Vertex3D()
void SetTr1Vertex(Int_t val)
void AddIdClusterTrack(Int_t val)
TClonesArray * fMatchingArray
List of matched tracks HarpoRecoMatching in the event.
void SetNtracks3DEvt(Int_t val)
void SetQrestX(Int_t val)
void SetIdClusterTrack(Int_t val)
TClonesArray * GetHoughTracksArray()
Int_t fPlane
Plane (XPLANE = 0, YPLANE = 1)
void AddKalmanTracks(HarpoRecoKalmanTracks *val)
Double_t fMtheta
mean value for Hough parameter theta
static const Int_t kMaxNtracks
Double_t fSig
RMS of the cluster.
Double_t fAngleTrack
Angle of the track wrt the drift direction.
Double_t fZ
Poisition in time direction.
HarpoRecoClusters * GetClusters(Int_t icl)
void SetNtracksXEvt(Int_t val)
Int_t fIdClusterTrack[MAXTRPERCL]
List of tracks associated to the cluster.
Int_t fQrestY
Charge not associated to a track.
Int_t GetIdTrackMatching()
void SetNclXEvt(Int_t val)
Int_t fNclTrackEvt
number of clusters associated to a track in the event
void SetKalmanTracksArray(TClonesArray *a)
void ResetMatchingArray()
Double_t GetThetaVertex()
ClassDef(HarpoRecoVertex3D, 1)
void SetPzStart(Double_t val)
void SetNtracksYEvt(Int_t val)
void AddVertex(HarpoRecoVertex *val)
void SetVertexY(Int_t val)
void ResetHoughTracksArray()
void SetiMatchTrY(Int_t val)
Track object, containing position, angle, charge and quality information.
void SetNclusterTrack(Int_t val)
Object containing the reconstruction information for one event (with array of HarpoRecoClusters Harpo...
void SetAngleOmega(Double_t val)
void SetNclYEvt(Int_t val)
Int_t GetTypeTrack3d(Int_t i)
Matching object, containing matched track number, and quality info.
void AddTracks(HarpoRecoTracks *val)
void SetVertexArray(TClonesArray *a)
2D vertex object, containing position, angle and associated track numbers, and quality info ...
TClonesArray * GetMatchingArray()
void SetiMatchTrX2(Int_t val)
Int_t fNTclYEvt
total number of Tclusters in Y
static const Int_t kMaxNvertex3D
void SetPy2Vertex3D(Double_t val)
void SetVertex3D(HarpoRecoVertex3D *val, Int_t nrec)
Int_t fNtracksXEvt
Number of tracks in X.
Double_t fXstart
Time and Position of first signal.
Int_t fQtotYEvt
total charge on Y
Double_t fZend
Ending point Z.
Double_t fX
Position in channel direction.
void SetYvertex3D(Double_t val)
void AddClusters(HarpoRecoClusters *val)
void SetNtrack(Int_t val)
void SetZvertex(Double_t val)
void SetPz2Vertex3D(Double_t val)
void SetPx2Vertex3D(Double_t val)
void SetMtheta(Double_t val)
TClonesArray * GetVertexArray()
Double_t fX0
Fitted Coordinate at T = 0.
ClassDef(HarpoRecoKalmanTracks, 1)
void RemoveAllClusterTrack()
Int_t fIdTrackMatching
Associated matching object.
Double_t GetPx1Vertex3D()
void SetHoughTracksArray(TClonesArray *a)
void SetPy1Vertex3D(Double_t val)
Int_t fNCclXEvt
total number of Cclusters in X
void SetNTclXEvt(Int_t val)
void SetAazimutal(Double_t val)
HarpoRecoTracks object, Obtained with Kalman filter.
static const Int_t kMaxNclusters
Double_t fChi2Matching
chi2 of the matching
Int_t fngoodmatch
Identifier.
Cluster object, containing position, charge and quality information.
void SetPz1Vertex3D(Double_t val)
Double_t fXstart
Starting point X.
Double_t fMrho
mean value for Hough parameter rho
void SetXstart(Double_t val)
void SetZend(Double_t val)
ClassDef(HarpoRecoVertex, 1)
void SetiMatchTrX(Int_t val)
void SetPx1Vertex3D(Double_t val)
Double_t GetChi2Vertex3D()
Double_t fPxEnd
End direction X.
Int_t fQuality
cluster quality 0 = good, 1 = cut left, 2 = cut right, -1 = noisy
ClassDef(HarpoRecoReco3D, 1)
Double_t GetPy1Vertex3D()
Double_t fZfit[MAXTRPERCL]
Fitted Z position for the associated track (TO BE IMPLEMENTED)
Int_t fType
Type (CCLUSTER = 0, TCLUSTER = 1)
Double_t fSigtheta
RMS for Hough parameter theta.
TClonesArray * fKalmanTracksArray
List of Kalman tracks HarpoRecoKalmanTracks in the event.
void ResetVertex3DArray()
Double_t fXfit[MAXTRPERCL]
Fitted X position for the associated track (TO BE IMPLEMENTED)
void SetNTclYEvt(Int_t val)
void SetClusters(HarpoRecoClusters *val, Int_t nrec)
void SetPoca_z(Double_t val)
Int_t GetIdClusterTrack()
void SetZstart(Double_t val)
virtual ~HarpoRecoReco3D()
void SetAopen(Double_t val)
void SetXfit(Int_t i, Double_t val)
void SetClustersArray(TClonesArray *a)
Int_t fNvertexYEvt
Number of vertexes in Y.
Int_t fNclYEvt
total number of clusters in Y
void SetThetaVertex(Double_t val)
virtual ~HarpoRecoKalmanTracks()
void SetXvertex(Double_t val)
Int_t fNCclYEvt
total number of Cclusters in Y
Int_t fTmin
minimum value of T in the event
void SetTypeTrack3d(Int_t i, Int_t val)
virtual ~HarpoRecoMatching()
Int_t fNtr
Number of associated tracks.
void SetPxStart(Double_t val)
Double_t fZstart
Starting point Z.
Double_t fChi2
Chi2 of linear fit.
TClonesArray * fVertexArray
list of 2D vertexes HarpoRecoVertex in the event
void SetSigrho(Double_t val)
void SetIdTrackMatching(Int_t val)
void ResetClustersArray()
void SetIdVertex3D(Int_t val)
void SetSig(Double_t val)
Int_t GetIdClusterTrack(Int_t i)
Int_t fNTclXEvt
total number of Tclusters in X
void SetMatching(HarpoRecoMatching *val, Int_t nrec)
static const Int_t kMaxNvertex
ClassDef(HarpoRecoTracks, 1)
Int_t fYmax
maximum value of Y in the event
void SetPoca_y(Double_t val)
void SetTstart(Double_t val)
void SetSigtheta(Double_t val)
Int_t fNvertex3D
Number of vertexes in Y.
void SetZvertex3D(Double_t val)
TClonesArray * GetVertex3DArray()
Double_t fPxStart
Start Direction X.
ClassDef(HarpoRecoMatching, 1)
Double_t fAngleOmega
Azimuthal angle.
Int_t fWidth
number of pixels in the cluster
Double_t GetPx2Vertex3D()
Int_t fXmin
minimum value of X in the event
void SetQuality(Int_t val)
void SetReco3D(HarpoRecoReco3D *val, Int_t nrec)
Double_t GetPz2Vertex3D()
Double_t fMean
COG of the cluster.
void SetQtTrack(Int_t val)
TClonesArray * fHoughTracksArray
List of Hough tracks HarpoRecoHoughTracks in the event.
void RemoveIdClusterTrack(Int_t val)
void SetChi2Vertex3D(Double_t val)
void SetAngleTrack(Int_t val)
TClonesArray * GetReco3DArray()
Double_t fXend
Ending point X.
void SetDoca(Double_t val)
Double_t GetXfit(Int_t i=0)
void SetNCclYEvt(Int_t val)
Int_t fYmin
minimum value of Y in the event
TClonesArray * GetTracksArray()
Int_t fNtracks3DEvt
number of 3D tracks (matched)
Int_t fQrestX
Charge not associated to a track.
void Setntrack_3d(Int_t val)
ClassDef(HarpoRecoHoughTracks, 1)
Int_t fTypeTrack
Type of track (traversing, created, included, ttz)
void SetIfirst(Int_t val)
void SetMrho(Double_t val)
Int_t fPlane
Plane (XPLANE = 0, YPLANE = 1)
void SetYstart(Double_t val)
void SetChi2Matching(Double_t val)
Int_t fiMatchTrX
Associated X tracks.
void SetNvertex(Int_t val)
void AddHoughTracks(HarpoRecoHoughTracks *val)
void SetQrestY(Int_t val)
Double_t fPzStart
Start Direction Z.
void SetQtotYEvt(Int_t val)
void SetZfit(Int_t i, Double_t val)
Double_t fPzEnd
End direction Z.
void AddMatching(HarpoRecoMatching *val)
void SetVertex3DArray(TClonesArray *a)
Int_t fNclXEvt
total number of clusters in X
void SetMean(Double_t val)
HarpoRecoTracks object, obtained with Hough tracking method.
TClonesArray * GetClustersArray()
void AddReco3D(HarpoRecoReco3D *val)
Int_t fNtracksYEvt
Number of tracks in Y.
Int_t fIndex
Index of the cluster.
void SetPzVertex(Double_t val)
Double_t fQmax
Maximum charge value.
void SetXstart(Double_t val)
virtual ~HarpoRecoVertex()
void SetNCclXEvt(Int_t val)
void SetTrackType(Int_t val)
Bool_t CheckIdClusterTrack(Int_t val)
void SetTracks(HarpoRecoTracks *val, Int_t nrec)
void SetReco3DArray(TClonesArray *a)
virtual ~HarpoRecoVertex3D()
void ResetKalmanTracksArray()
void SetiMatchTrY2(Int_t val)
Int_t fNtrack
Track identifier.
3D vertex object, containing position, angle and associated 2D vertexes, and quality info ...