3 #ifndef ALIHLTGLOBALBARRELTRACK_H
4 #define ALIHLTGLOBALBARRELTRACK_H
5 //* This file is property of and copyright by the ALICE HLT Project *
6 //* ALICE Experiment at CERN, All rights reserved. *
7 //* See cxx source for full Copyright notice *
9 /** @file AliHLTGlobalBarrelTrack.h
10 @author Matthias Richter
12 @brief An AliKalmanTrack implementation for global HLT barrel tracks.
15 #include "AliKalmanTrack.h"
16 #include "AliHLTDataTypes.h"
17 #include "AliHLTExternalTrackParam.h"
22 * @class AliHLTGlobalBarrelTrack
23 * Representation of global HLT barrel tracks.
25 * @ingroup alihlt_global_components
27 class AliHLTGlobalBarrelTrack : public AliKalmanTrack
30 /** standard constructor */
31 AliHLTGlobalBarrelTrack();
32 /** copy constructor */
33 AliHLTGlobalBarrelTrack(const AliHLTGlobalBarrelTrack& t);
34 /** copy constructor */
35 AliHLTGlobalBarrelTrack(const AliHLTExternalTrackParam& p);
36 /** copy constructor */
37 AliHLTGlobalBarrelTrack(const AliExternalTrackParam& p);
39 /** assignment operator */
41 AliHLTGlobalBarrelTrack& operator=(const c& t) {
42 this->~AliHLTGlobalBarrelTrack(); new (this) AliHLTGlobalBarrelTrack(t);
47 ~AliHLTGlobalBarrelTrack();
49 /// inherited from AliKalmanTrack
50 Int_t GetClusterIndex(Int_t i) const {
51 return (i<(int)fPoints.size()) ?fPoints[i] :0;
54 /// inherited from AliKalmanTrack, dummy implementation
55 virtual Int_t GetNumberOfTracklets() const {return 0;}
56 /// inherited from AliKalmanTrack, dummy implementation
57 virtual Int_t GetTrackletIndex(Int_t) const {return -1;}
58 /// inherited from AliKalmanTrack, dummy implementation
59 virtual Double_t GetPIDsignal() const {return 0.;}
61 /// Get the x position of the last assigned point
62 Double_t GetLastPointX() const {return fLastX;}
63 /// Get the y position of the last assigned point
64 Double_t GetLastPointY() const {return fLastY;}
66 Int_t TrackID() const {return fTrackID;}
67 /// return Track ID, inherited for AliExternalTrackParam
68 Int_t GetID() const {return fTrackID;}
70 /// Get the number of associated points
71 UInt_t GetNumberOfPoints() const;
73 /// Get the list of associated points
74 const UInt_t* GetPoints() const;
76 /// Set the list of associated points
77 int SetPoints(const UInt_t* pArray, UInt_t arraySize);
79 static int ConvertTrackDataArray(const AliHLTTracksData* pTracks, unsigned sizeInByte, vector<AliHLTGlobalBarrelTrack> &tgtArray);
81 /// inherited from AliKalmanTrack, dummy implementation
82 Double_t GetPredictedChi2(const AliCluster*) const {return 0.0;}
84 /// inherited from AliKalmanTrack, dummy implementation
85 Bool_t PropagateTo(Double_t, Double_t, Double_t) {return kFALSE;}
87 /// inherited from AliKalmanTrack, dummy implementation
88 Bool_t Update(const AliCluster*, Double_t, Int_t) {return kFALSE;}
90 /// Inherited from TObject, prints the track parameters
91 virtual void Print(Option_t* option = "") const;
93 Double_t GetPathLengthTo( Double_t x, Double_t b ) const;
100 vector<UInt_t> fPoints; //
102 /// x position of the last assigned point
104 /// y position of the last assigned point
107 /// track Id for identification during the reconstruction
110 ClassDef(AliHLTGlobalBarrelTrack, 0)