]>
Commit | Line | Data |
---|---|---|
a1408c4b | 1 | //-*- Mode: C++ -*- |
2 | // $Id$ | |
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 * | |
8 | ||
9 | /** @file AliHLTGlobalBarrelTrack.h | |
10 | @author Matthias Richter | |
11 | @date 2009-06-24 | |
12 | @brief An AliKalmanTrack implementation for global HLT barrel tracks. | |
13 | */ | |
14 | ||
15 | #include "AliKalmanTrack.h" | |
16 | #include "AliHLTDataTypes.h" | |
17 | #include "AliHLTExternalTrackParam.h" | |
18 | #include <vector> | |
19 | using namespace std; | |
20 | ||
21 | /** | |
22 | * @class AliHLTGlobalBarrelTrack | |
23 | * Representation of global HLT barrel tracks. | |
24 | * | |
25 | * @ingroup alihlt_global_components | |
26 | */ | |
27 | class AliHLTGlobalBarrelTrack : public AliKalmanTrack | |
28 | { | |
29 | public: | |
30 | /** standard constructor */ | |
31 | AliHLTGlobalBarrelTrack(); | |
32 | /** copy constructor */ | |
33 | AliHLTGlobalBarrelTrack(const AliHLTGlobalBarrelTrack& t); | |
093b64dc | 34 | /** copy constructor */ |
35 | AliHLTGlobalBarrelTrack(const AliHLTExternalTrackParam& p); | |
36 | ||
a1408c4b | 37 | /** assignment operator */ |
093b64dc | 38 | template <class c> |
39 | AliHLTGlobalBarrelTrack& operator=(const c& t); | |
a1408c4b | 40 | /** destructor */ |
41 | ~AliHLTGlobalBarrelTrack(); | |
42 | ||
9b775d2d | 43 | /// inherited from AliKalmanTrack |
44 | Int_t GetClusterIndex(Int_t i) const { | |
8f3528aa | 45 | return (i<(int)fPoints.size()) ?fPoints[i] :0; |
9b775d2d | 46 | } |
47 | ||
a1408c4b | 48 | /// Get the x position of the last assigned point |
49 | Double_t GetLastPointX() const {return fLastX;} | |
50 | /// Get the y position of the last assigned point | |
51 | Double_t GetLastPointY() const {return fLastY;} | |
093b64dc | 52 | /// return Track ID |
53 | Int_t TrackID() const {return fTrackID;} | |
a1408c4b | 54 | |
55 | /// Get the number of associated points | |
56 | UInt_t GetNumberOfPoints() const; | |
57 | ||
58 | /// Get the list of associated points | |
59 | const UInt_t* GetPoints() const; | |
60 | ||
61 | /// Set the list of associated points | |
62 | int SetPoints(const UInt_t* pArray, UInt_t arraySize); | |
63 | ||
d8cddd2e | 64 | static int ConvertTrackDataArray(const AliHLTTracksData* pTracks, unsigned sizeInByte, vector<AliHLTGlobalBarrelTrack> &tgtArray); |
a1408c4b | 65 | |
093b64dc | 66 | /// inherited from AliKalmanTrack, dummy implementation |
a1408c4b | 67 | Double_t GetPredictedChi2(const AliCluster*) const {return 0.0;} |
68 | ||
093b64dc | 69 | /// inherited from AliKalmanTrack, dummy implementation |
a1408c4b | 70 | Bool_t PropagateTo(Double_t, Double_t, Double_t) {return kFALSE;} |
71 | ||
093b64dc | 72 | /// inherited from AliKalmanTrack, dummy implementation |
a1408c4b | 73 | Bool_t Update(const AliCluster*, Double_t, Int_t) {return kFALSE;} |
74 | ||
093b64dc | 75 | /// Inherited from TObject, prints the track parameters |
76 | virtual void Print(Option_t* option = "") const; | |
77 | ||
5dc6c74b | 78 | Double_t GetPathLengthTo( Double_t x, Double_t b ) const; |
79 | ||
a1408c4b | 80 | protected: |
81 | ||
82 | private: | |
9b775d2d | 83 | |
093b64dc | 84 | /// inherited from AliKalmanTrack, dummy implementation |
85 | virtual Double_t GetPIDsignal() const { | |
86 | return 0.; | |
87 | } | |
88 | ||
a1408c4b | 89 | /// array of points |
90 | vector<UInt_t> fPoints; // | |
91 | ||
92 | /// x position of the last assigned point | |
93 | Double_t fLastX; // | |
94 | /// y position of the last assigned point | |
95 | Double_t fLastY; // | |
96 | ||
093b64dc | 97 | /// track Id for identification during the reconstruction |
98 | Int_t fTrackID; // | |
99 | ||
a1408c4b | 100 | ClassDef(AliHLTGlobalBarrelTrack, 0) |
101 | }; | |
102 | #endif |