]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/ESD/AliESDTOFCluster.h
Geometry for run3 implemented with updated TDI
[u/mrichter/AliRoot.git] / STEER / ESD / AliESDTOFCluster.h
CommitLineData
2874a2f5 1#ifndef ALIESDTOFCLUSTER_H
2#define ALIESDTOFCLUSTER_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7/* $Id: $ */
8
9//----------------------------------------------------------------------//
10// //
11// AliESDTOFCluster Class //
12// //
13//----------------------------------------------------------------------//
14#include "TMath.h"
15#include <AliVTOFcluster.h>
16#include "AliESDTOFHit.h"
17#include "AliESDTOFMatch.h"
18
19class AliESDEvent;
20
21class AliESDTOFCluster : public AliVTOFcluster {
22
23 public:
24 AliESDTOFCluster(Int_t id=-1);
25 AliESDTOFCluster(Int_t ,Int_t ,Float_t ,Float_t ,Float_t ,Int_t*,Int_t ,Int_t , Bool_t ,Float_t ,Float_t ,Float_t ,
26 Int_t ,Float_t ,Float_t ,Float_t ,Float_t ,Double_t*);
27 AliESDTOFCluster(Int_t ,Int_t ,Float_t ,Float_t ,Float_t t,Int_t*,Int_t ,Int_t ,
28 Bool_t ,Float_t ,Float_t ,Float_t );
29 AliESDTOFCluster(const AliESDTOFCluster & source);
30 AliESDTOFCluster & operator=(const AliESDTOFCluster & source);
31 virtual ~AliESDTOFCluster() {}
32
33 Int_t GetESDID() const {return GetUniqueID();}
34 void SetESDID(Int_t id) {SetUniqueID(id);}
35 Int_t GetID() const {return fID;}
36 void SetID(Int_t id) {fID = id;}
37
38 Int_t Update(Int_t trackIndex,Float_t dX,Float_t dY,Float_t dZ,Float_t length,Double_t expTimes[9]);
39 void SuppressMatchedTrack(Int_t id);
40 void ReplaceMatchedTrackID(int oldID, int newID);
41 void ReplaceMatchID(int oldID, int newID);
42 void ReplaceHitID(int oldID, int newID);
43 void FixSelfReferences(int oldID, int newID);
44 Int_t GetClusterIndex(Int_t ihit=0) const; // cluster index
45 Int_t GetTOFchannel(Int_t ihit=0) const; // TOF channel
46 Float_t GetTime(Int_t ihit=0) const; // TOF time
47 Float_t GetTimeRaw(Int_t ihit=0) const; // TOF raw time
48 Float_t GetTOT(Int_t ihit=0) const; // TOF tot
49 Float_t GetTOFsignalToT(Int_t ihit=0) const; // TOF tot
50 Int_t GetLabel(Int_t i=0,Int_t ihit=0) const;
51 Int_t GetDeltaBC(Int_t ihit=0) const;
52 Int_t GetL0L1Latency(Int_t ihit=0) const;
53 Bool_t GetStatus() const;
54 Float_t GetZ() const;
55 Float_t GetPhi() const;
56 Float_t GetR() const;
57 Int_t GetNMatchableTracks() const;
58 Int_t GetNTOFhits() const;
59
60 Int_t GetTrackIndex(Int_t i=0) const;
61 Float_t GetDistanceInStripPlane(Int_t i=0) const; // distance
62 Float_t GetDx(Int_t i=0) const; // distance, X component
63 Float_t GetDy(Int_t i=0) const; // distance, Y component
64 Float_t GetDz(Int_t i=0) const; // distance, Z component
65 Float_t GetLength(Int_t i=0) const; // reconstructed track length at TOF
66 Double_t GetIntegratedTime(Int_t iPart=0,Int_t i=0) const; // reconstructed track length at TOF
67 void SetStatus(Int_t status) {fStatus=status;};
68
69 void AddESDTOFHitIndex(Int_t hitID);
70 void AddTOFhit(Int_t ,Int_t ,Float_t ,Float_t ,Float_t ,Int_t*,Int_t ,Int_t , Bool_t ,Float_t ,Float_t ,Float_t );
71 void AddTOFhit(AliESDTOFHit *hit);
72
73 Int_t GetHitIndex(Int_t i) const {return fHitIndex[i];}
74 void SetHitIndex(Int_t i,Int_t index) {fHitIndex[i] = index;}
75
76 void Print(const Option_t *opt=0) const;
77
2874a2f5 78 AliESDTOFHit* GetTOFHit(Int_t i) const;
79 AliESDTOFMatch* GetTOFMatch(Int_t i) const;
80
81 protected:
82 Int_t fID; // raw cluster id
83 Char_t fNTOFhits; // number of TOF hit in the cluster
84 Bool_t fStatus; // !
85 Char_t fNmatchableTracks; // number of matchable tracks with the same TOF matchable hit
86 Int_t fHitIndex[kMaxHits]; // pointing to hit info
87 Int_t fMatchIndex[kMaxMatches]; // pointing to matching info
88
89 ClassDef(AliESDTOFCluster, 2) // TOF matchable cluster
90
91};
92
93#endif