]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TRD/AliTRDmodule.h
EffC++ warnings corrected.
[u/mrichter/AliRoot.git] / TRD / AliTRDmodule.h
CommitLineData
e3b2b5e5 1#ifndef ALITRDMODULE_H
2#define ALITRDMODULE_H
6d50f529 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
e3b2b5e5 5
6d50f529 6/* $Id$ */
7
8///////////////////////////////////////////////////////////////////////////////
9// //
10// TRD module class //
11// //
12///////////////////////////////////////////////////////////////////////////////
13
14#include <TObject.h>
e3b2b5e5 15
16class AliTRDgtuTrack;
17class AliTRDltuTracklet;
18class AliTRDtrigParam;
19
20class AliTRDmodule : public TObject {
21
22 public:
23
24 enum { kNplan = 6, kNmaxZchan = 100, kNsubZchan = 16, kNmaxTrk = 12 };
25
6d50f529 26 AliTRDmodule();
27 AliTRDmodule(const AliTRDmodule &m);
e3b2b5e5 28 AliTRDmodule(AliTRDtrigParam *trigp);
6d50f529 29 virtual ~AliTRDmodule();
30 AliTRDmodule &operator=(const AliTRDmodule &m);
31
32 virtual void Copy(TObject &m) const;
33
34 Int_t GetNtracklets() const;
35 Int_t GetNtracks() const;
36
37 void Reset();
38 void AddTracklet(Int_t det, Int_t row, Float_t rowz, Float_t slope, Float_t offset
39 , Float_t time, Int_t ncl, Int_t label, Float_t q);
40 void AddTrack();
41
42 void ResetTracklets();
43 void ResetTracks();
44 void SortTracklets();
45 void SortTracks();
46 void RemoveMultipleTracklets();
47 void RemoveMultipleTracks();
48 void RemoveTracklet(Int_t pos);
49 void RemoveTrack(Int_t pos);
50 void SortZ(Int_t cha);
51 void InitZLUT();
52 void FindTracks();
53 void FindTracksCombi(Int_t zchan);
54
55 TObjArray *Tracklets();
56 TObjArray *Tracks();
57 AliTRDltuTracklet *GetTracklet(Int_t pos) const;
58 AliTRDgtuTrack *GetTrack(Int_t pos) const;
e3b2b5e5 59
60 protected:
61
6d50f529 62 Float_t fXprojPlane; //! X (time) coordinate of the projection plane
63 Float_t fField; //! Magnetic field
64 TObjArray *fTracklets; //! Array of LTU tracklets
65 TObjArray *fTracks; //! Array of GTU tracks
e3b2b5e5 66
6d50f529 67 Int_t fZnchan[kNplan][kNsubZchan]; //! Number of LTU tracklets in each subchannel
68 Int_t fZtrkid[kNplan][kNmaxZchan][kNsubZchan]; //! List of LTU tracklet id's for each subchannel
e3b2b5e5 69
6d50f529 70 Float_t fDeltaY; // Y (offset) matching window in the GTU
71 Float_t fDeltaS; // Slope matching window in the GTU
e3b2b5e5 72
6d50f529 73 AliTRDltuTracklet *fLTUtrk; //! Current LTU tracklet
74 AliTRDgtuTrack *fGTUtrk; //! Current GTU track
e3b2b5e5 75
6d50f529 76 ClassDef(AliTRDmodule,2) // TRD module class
e3b2b5e5 77
78};
79
80#endif