-
Notifications
You must be signed in to change notification settings - Fork 0
/
AliAlgVtx.cxx
68 lines (61 loc) · 2.44 KB
/
AliAlgVtx.cxx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
/**************************************************************************
* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* *
* Author: The ALICE Off-line Project. *
* Contributors are mentioned in the code where appropriate. *
* *
* Permission to use, copy, modify and distribute this software and its *
* documentation strictly for non-commercial purposes is hereby granted *
* without fee, provided that the above copyright notice appears in all *
* copies and that both the copyright notice and this permission notice *
* appear in the supporting documentation. The authors make no claims *
* about the suitability of this software for any purpose. It is *
* provided "as is" without express or implied warranty. *
**************************************************************************/
#include "AliAlgVtx.h"
#include "AliTrackPointArray.h"
#include "AliESDtrack.h"
#include "AliAlgPoint.h"
#include "AliAlgDet.h"
#include "AliLog.h"
#include <TMath.h>
using namespace TMath;
ClassImp(AliAlgVtx)
//_________________________________________________________
AliAlgVtx::AliAlgVtx() : AliAlgSens("Vertex",0,1)
{
// def c-tor
SetVarFrame(kLOC);
SetFreeDOFPattern( BIT(kDOFTX) | BIT(kDOFTY) | BIT(kDOFTZ) );
//
}
//____________________________________________
void AliAlgVtx::PrepareMatrixT2L()
{
// T2L matrix for vertex needs to be adjusted for every track
// in order to have X axis along the track direction.
// This method assumes that the fAlp was already set accordingly
// fX is fixed to 0
//
fMatT2L.Clear();
fMatT2L.RotateZ(fAlp*RadToDeg());
// fMatT2L.MultiplyLeft(&GetMatrixL2GIdeal().Inverse()); L2G=I !!!
//
}
//____________________________________________
void AliAlgVtx::ApplyCorrection(double* vtx) const
{
// apply eventual correction to supplied vertex position
vtx[kDOFTX] += GetParVal(kDOFTX);
vtx[kDOFTY] += GetParVal(kDOFTY);
vtx[kDOFTZ] += GetParVal(kDOFTZ);
//
}
//____________________________________________
AliAlgPoint* AliAlgVtx::TrackPoint2AlgPoint(int, const AliTrackPointArray*, const AliESDtrack*)
{
// convert the pntId-th point to AliAlgPoint
static int cnt=0;
AliErrorF("This method shound not have been called, %d",cnt++);
return 0;
}