3 // ************************************************************************
4 // This file is property of and copyright by the ALICE HLT Project *
5 // ALICE Experiment at CERN, All rights reserved. *
6 // See cxx source for full Copyright notice *
8 //*************************************************************************
10 #ifndef ALIHLTTPCCAGBHIT_H
11 #define ALIHLTTPCCAGBHIT_H
13 #include "AliHLTTPCCADef.h"
16 * @class AliHLTTPCCAGBHit
18 * The AliHLTTPCCAGBHit class is the internal representation
19 * of the TPC clusters for the AliHLTTPCCAGBTracker algorithm.
22 class AliHLTTPCCAGBHit
26 : fX( 0 ), fY( 0 ), fZ( 0 ), fErrX( 0 ), fErrY( 0 ), fErrZ( 0 ), fAmp( 0 ),
27 fISlice( 0 ), fIRow( 0 ), fID( 0 ), fIsUsed( 0 ) {}
29 float X() const { return fX; }
30 float Y() const { return fY; }
31 float Z() const { return fZ; }
33 float ErrX() const { return fErrX; }
34 float ErrY() const { return fErrY; }
35 float ErrZ() const { return fErrZ; }
36 float Amp() const { return fAmp; }
38 int ISlice() const { return fISlice; }
39 int IRow() const { return fIRow; }
40 int ID() const { return fID; }
41 bool IsUsed() const { return fIsUsed; };
43 void SetX( float v ) { fX = v; }
44 void SetY( float v ) { fY = v; }
45 void SetZ( float v ) { fZ = v; }
46 void SetErrX( float v ) { fErrX = v; }
47 void SetErrY( float v ) { fErrY = v; }
48 void SetErrZ( float v ) { fErrZ = v; }
49 void SetAmp( float v ) { fAmp = v; }
50 void SetISlice( int v ) { fISlice = v; }
51 void SetIRow( int v ) { fIRow = v; }
52 void SetID( int v ) { fID = v; }
53 void SetIsUsed( bool v ) { fIsUsed = v; };
55 static bool Compare( const AliHLTTPCCAGBHit &a, const AliHLTTPCCAGBHit &b );
57 static bool CompareRowDown( const AliHLTTPCCAGBHit &a, const AliHLTTPCCAGBHit &b ) {
58 return ( a.fIRow > b.fIRow );
60 static bool ComparePRowDown( const AliHLTTPCCAGBHit *a, const AliHLTTPCCAGBHit *b ) {
61 return ( a->fIRow > b->fIRow );
66 float fX; //* X position
67 float fY; //* Y position
68 float fZ; //* Z position
70 float fErrX; //* X position error
71 float fErrY; //* Y position error
72 float fErrZ; //* Z position error
74 float fAmp; //* Maximal amplitude
75 int fISlice; //* slice number
76 int fIRow; //* row number
77 int fID; //* external ID (id of AliTPCcluster)
78 bool fIsUsed; //* is used by GBTracks