]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TPC/AliTPCLaserTrack.h
Iteration number stored into output file
[u/mrichter/AliRoot.git] / TPC / AliTPCLaserTrack.h
CommitLineData
23b18f4e 1#ifndef ALITPCLASERTRACK
2#define ALITPCLASERTRACK
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6#include <TString.h>
7
8#include "AliExternalTrackParam.h"
9
10class TObjArray;
11
12
13
14class AliTPCLaserTrack : public AliExternalTrackParam {
15public:
16 AliTPCLaserTrack();
17 AliTPCLaserTrack(AliTPCLaserTrack &ltr);
18 AliTPCLaserTrack(const Int_t id, const Int_t side, const Int_t rod,
19 const Int_t bundle, const Int_t beam,
20 Double_t x, Double_t alpha,
21 const Double_t param[5],
22 const Double_t covar[15]);
23
24
25 static void LoadTracks();
26 static TObjArray* GetTracks() {return fgArrLaserTracks;}
27
28 static Int_t IdentifyTrack(AliExternalTrackParam *track);
29
30 Int_t GetId() const {return fId; }
31 Int_t GetSide() const {return fSide; }
32 Int_t GetRod() const {return fRod; }
33 Int_t GetBundle() const {return fBundle; }
34 Int_t GetBeam() const {return fBeam; }
35
f1fcccb7 36
37
23b18f4e 38 static Int_t GetNLaserTracks() { return fgkNLaserTracks; }
39 static Int_t GetNLaserRodsPerSide() { return fgkNRodsPerSide; }
40 static Int_t GetNMirrorBundlesPerRod() { return fgkNBundlePerRod; }
41 static Int_t GetNLaserRaysPerMirrorBundle() { return fgkNBeamsPerBundle; }
42
43
44 void SetId (Int_t id) {fId = id; }
45 void SetSide (Int_t side) {fSide = side; }
46 void SetRod (Int_t rod) {fRod = rod; }
47 void SetBundle(Int_t bundle){fBundle = bundle;}
48 void SetBeam (Int_t beam) {fBeam = beam; }
49
50
51private:
52 Int_t fId; //Laser beam id (0-335)
53 Int_t fSide; //TPC side; 0:Shaft Side (A) -- 1:Muon Side (C)
54 Int_t fRod; //Laser Rod (0-5)
55 Int_t fBundle; //Mirror bundle in the Rod (0-3)
56 Int_t fBeam; //Laser Beam in the bundle (0-6)
57
58
59 static TObjArray* fgArrLaserTracks; //! Array of all Laser Tracks,
60 // keeps instances of this class;
61
62 static const Int_t fgkNLaserTracks = 336; //Number of laser tracks
63 static const Int_t fgkNRodsPerSide = 6; //Number of laser rods on each readout side
64 static const Int_t fgkNBundlePerRod = 4; //Number of mirror bundles per rod
65 static const Int_t fgkNBeamsPerBundle = 7; //Number of laser rays per bundle
66
67// static const char* fgkDataFileName = "$ALIC_ROOT/TPC/Calib/LaserTracks.root"; //Path to the Data File
68
69 ClassDef(AliTPCLaserTrack,1) // Laser Track positions and track identification
70};
71
72#endif
73