3 // Author: Uli Frankenfeld <mailto:franken@fi.uib.no>
4 //*-- Copyright © ALICE HLT Group
6 #include "AliHLTStandardIncludes.h"
7 #include "AliHLTRootTypes.h"
8 #include "AliHLTSpacePointData.h"
9 #include "AliHLTVertexData.h"
10 #include "AliHLTLogging.h"
11 #include "AliHLTVertexArray.h"
12 #include "AliHLTVertex.h"
13 #include "AliHLTVertexFinder.h"
14 #include "AliHLTSpacePointData.h"
15 #include "AliHLTTransform.h"
17 /** \class AliHLTVertexFinder
19 //_____________________________________________________________
22 // Implementation of AliHLTArray
26 // for(n=0;n<NMEMSEC;n++)
28 // FindSectorVertex();
29 // SetZ(GetZSector());
30 // SetZErr(GetZErrSector());
40 ClassImp(AliHLTVertexFinder)
42 AliHLTVertexFinder::AliHLTVertexFinder()
45 // default constructor for the AliHLTVertexFinder class.
60 AliHLTVertexFinder::~AliHLTVertexFinder()
67 void AliHLTVertexFinder::Reset()
76 void AliHLTVertexFinder::Read(Int_t ncluster, AliHLTSpacePointData* hits )
82 const Int_t kseedRow = AliHLTTransform::GetNRows() - 1;
83 const Int_t kfirstRow = kseedRow-32;
84 for(Int_t n=0;n<ncluster;n++){
85 if(hits[n].fPadRow==kseedRow)
86 FillSectorSeed3D(hits[n].fX,hits[n].fY,hits[n].fZ); //copy seeds in 3D
87 if(hits[n].fPadRow<=kseedRow && hits[n].fPadRow>=kfirstRow)
88 FillSector3D(hits[n].fX,hits[n].fY,hits[n].fZ); //copy data in 3D
92 void AliHLTVertexFinder::Analyze()
99 SetZErr(GetZSectorErr());
100 LOG(AliHLTLog::kInformational,"AliHLTVertexFinder::Analyze","Result")
101 <<AliHLTLog::kDec<<"Vertex: "<<GetZ()<<" RMS: "<<GetZErr()<<ENDLOG;
104 void AliHLTVertexFinder::Write(AliHLTVertex *vertex) const
109 vertex->SetX(GetX());
110 vertex->SetY(GetZ());
111 vertex->SetZ(GetZ());
112 vertex->SetXErr(GetXErr());
113 vertex->SetYErr(GetYErr());
114 vertex->SetZErr(GetZErr());
116 vertex->SetXYWeight(GetXYWeight());
119 void AliHLTVertexFinder::Write(AliHLTVertexData *vertex) const
127 vertex->fXErr=GetXErr();
128 vertex->fYErr=GetYErr();
129 vertex->fZErr=GetZErr();