]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TRD/AliTRDmcmTracklet.h
Updated TRD trigger code. Now the trigger code can run:
[u/mrichter/AliRoot.git] / TRD / AliTRDmcmTracklet.h
CommitLineData
0ee00e25 1#ifndef ALITRDMCMTRACKLET_H
2#define ALITRDMCMTRACKLET_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6///////////////////////////////////////////////////////
e3b2b5e5 7// //
8// Tracklet object (MCM/LTU) //
9// //
0ee00e25 10///////////////////////////////////////////////////////
11
12#include <TObject.h>
13
0ee00e25 14class TGraph;
15
16class AliTRDgeometry;
17
18class AliTRDmcmTracklet : public TObject {
19
20 public:
21
e3b2b5e5 22 enum { kNclsPads = 3, kNtimeBins = 30, kNdict = 3 };
23
0ee00e25 24 AliTRDmcmTracklet();
25 AliTRDmcmTracklet(Int_t det, Int_t row, Int_t n);
26 virtual ~AliTRDmcmTracklet();
e3b2b5e5 27 AliTRDmcmTracklet &operator=(const AliTRDmcmTracklet &t);
28 virtual void Copy(TObject &t) const;
29
30 void AddCluster(Int_t icol, Int_t itb, Float_t *adc, Int_t *track);
31 void MakeTrackletGraph(AliTRDgeometry *geo = 0, Float_t field = 0);
32 void MakeClusAmpGraph();
33 void CookLabel(Float_t frac);
34
35 Int_t GetNclusters() const { return fNclusters; };
36 Int_t GetDetector() const { return fDetector; };
37 Int_t GetRow() const { return fRow; };
38 Float_t GetOffset() const { return fOffset; };
39 Float_t GetSlope() const { return fSlope; };
40 Float_t GetTime0() const { return fTime0; };
41 Float_t GetRowz() const { return fRowz; };
42 Float_t GetPt() const { return fPt; };
43 Float_t GetdQdl() const { return fdQdl; };
44 Int_t GetLabel() const { return fTrackLabel; };
45 Int_t GetNumber() const { return fN; };
46 Float_t GetOmegaTau(Float_t vdrift, Float_t field) const;
47 Float_t GetClusY(Float_t *adc, Int_t pla) const;
48 TGraph *GetTrackletGraph() const { return fGPos; };
49 TGraph *GetClusAmpGraph() const { return fGAmp; };
50 Float_t *GetClusterADC(Int_t icl) { return fADC[icl]; };
51 Int_t GetClusterTime(Int_t icl) const { return fTime[icl]; };
52 Int_t GetClusterCol(Int_t icl) const { return fCol[icl]; };
0ee00e25 53
54 protected:
55
56 Int_t fDetector; // TRD detector number (0 ... 539)
57 Int_t fRow; // Row number in the detector
58 Float_t fADC[kNtimeBins][kNclsPads]; // Array of ADC values in a pad group
59 Int_t fTrack[kNtimeBins][kNdict]; //! Array of track dictionary values
60 Int_t fTrackLabel; // Cooked track label
61 Int_t fTime[kNtimeBins]; // Array of time bin values
62 Int_t fCol[kNtimeBins]; // Array of pad column values
63 Int_t fNclusters; // Number of clusters in the tracklet
64
65 Int_t fN; // Tracklet number
66
67 TGraph *fGPos; //! Positions
68 TGraph *fGAmp; //! Amplitudes
69
70 Float_t fTime0; // X position at the entrance window
71 Float_t fRowz; // Z position of the row center
72 Float_t fSlope; // Slope [deg]
73 Float_t fOffset; // Offset
74 Float_t fPt; // Transverse momentum
75 Float_t fdQdl; // Charge per unit length
76
e3b2b5e5 77 ClassDef(AliTRDmcmTracklet,2) // Track segment for the TRD (Tracklet)
0ee00e25 78
79};
80
81#endif