]>
Commit | Line | Data |
---|---|---|
30da2335 | 1 | #ifndef ALIITSUCLUSTERLINES_H |
2 | #define ALIITSUCLUSTERLINES_H | |
3 | /* Copyright(c) 2009-2014, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | ///////////////////////////////////////////////////////////////////////////// | |
7 | // Class intended to gather and compute the parameters of vertex candidate // | |
8 | ///////////////////////////////////////////////////////////////////////////// | |
9 | ||
10 | #include <TObject.h> | |
11 | #include <Riostream.h> | |
12 | #include "AliStrLine.h" | |
13 | ||
14 | ||
15 | class AliITSUClusterLines : public TObject { | |
16 | public: | |
17 | AliITSUClusterLines(); | |
18 | AliITSUClusterLines(UInt_t first, AliStrLine *firstL, UInt_t second, AliStrLine *secondL,Bool_t=kFALSE); | |
19 | virtual ~AliITSUClusterLines(); | |
20 | ||
21 | void Add(UInt_t label, AliStrLine *line, Bool_t weight=kFALSE); | |
22 | void ComputeClusterCentroid(); | |
23 | inline UInt_t GetSize() const { return fLabels.size(); } | |
24 | inline Int_t* GetLabels(UInt_t &n) {n=fLabels.size(); return &fLabels[0]; } | |
25 | inline void GetA(Float_t a[3]) { for(Int_t i=0; i<3; ++i) a[i]=fA[i]; } | |
26 | inline void GetA(Double_t a[3]) { for(Int_t i=0; i<3; ++i) a[i]=fA[i]; } | |
27 | inline void GetB(Float_t b[3]) { for(Int_t i=0; i<3; ++i) b[i]=fB[i]; } | |
28 | inline void GetB(Double_t b[3]) { for(Int_t i=0; i<3; ++i) b[i]=fB[i]; } | |
29 | void GetCovMatrix(Float_t cov[6]); | |
30 | void GetCovMatrix(Double_t cov[6]); | |
31 | inline void GetVertex(Float_t p[3]) { for(Int_t i=0; i<3; ++i) p[i]=fV[i]; } | |
32 | inline void GetVertex(Double_t p[3]) { for(Int_t i=0; i<3; ++i) p[i]=fV[i]; } | |
33 | inline void GetWeight(Float_t w[9]) { for(Int_t i=0; i<9; ++i) w[i]=fW[i]; } | |
34 | inline void GetWeight(Double_t w[9]) { for(Int_t i=0; i<9; ++i) w[i]=fW[i]; } | |
35 | // | |
36 | virtual Bool_t IsSortable() const {return kTRUE;} | |
37 | virtual Bool_t IsEqual(const TObject* obj) const; | |
38 | virtual Int_t Compare(const TObject* obj) const; | |
39 | ||
40 | protected: | |
41 | Double_t fA[6]; // AX=B | |
42 | Double_t fB[3]; // AX=B | |
43 | vector<Int_t> fLabels; // labels | |
44 | Double_t fV[3]; // vertex candidate | |
45 | Double_t fW[9]; // weight matrix | |
46 | ClassDef(AliITSUClusterLines,1); | |
47 | }; | |
48 | ||
49 | #endif |