]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EVE/alice-macros/primary_vertex.C
Adding comments only
[u/mrichter/AliRoot.git] / EVE / alice-macros / primary_vertex.C
CommitLineData
3c1a4392 1// $Header$
2
3TPolyMarker3D* make_vertex_marker(AliESDVertex* v, const Text_t* name)
4{
5 Double_t x[3], e[3];
8158d8a5 6 v->GetXYZ(x);
3c1a4392 7 v->GetSigmaXYZ(e);
8
14f03c90 9 printf("%16s: %f %f %f - %f %f %f\n", name,
3c1a4392 10 x[0], x[1], x[2], e[0], e[1], e[2]);
11
c37f91e9 12 TPolyMarker3D* m = new TPolyMarker3D(1);
3c1a4392 13 m->SetName(name);
3c1a4392 14 m->SetPoint(0, x[0], x[1], x[2]);
15
16 return m;
17}
18
c37f91e9 19Reve::BoxSet* make_vertex_boxes(AliESDVertex* v)
20{
21 Double_t x[3], e[3];
b59304bc 22 v->GetXYZ(x);
c37f91e9 23 v->GetSigmaXYZ(e);
24
25 Reve::BoxSet* bs;
26
27 bs = new BoxSet("+- 10 x 10 x 20mm");
28 bs->SetRenderMode(Reve::BoxSet::RM_Line);
29 bs->AddBox(Reve::Box(-1, x[0], x[1], x[2], 1, 1, 2));
30 bs->SetMainColor((Color_t) 2);
31 gReve->AddRenderElement(bs);
32
33 bs = new BoxSet("+- 30 sigma_r x 10 sigma_z");
34 bs->SetRenderMode(Reve::BoxSet::RM_Line);
35 bs->AddBox(Reve::Box(-1, x[0], x[1], x[2], 30*e[0], 30*e[1], 10*e[2]));
36 bs->SetMainColor((Color_t) 3);
37 gReve->AddRenderElement(bs);
38
39 gReve->Redraw3D();
40}
41
3c1a4392 42void register_vertex_marker(TPolyMarker3D* m)
43{
44 using namespace Reve;
45 Color_t* colp = FindColorVar(m, "fMarkerColor");
46 RenderElementObjPtr* rnrEl = new RenderElementObjPtr(m, *colp);
47 gReve->AddRenderElement(rnrEl);
5b96ea20 48 gReve->Redraw3D();
3c1a4392 49}
50
c37f91e9 51void primary_vertex(Bool_t showSPD=kTRUE, Bool_t showBoxes=kFALSE)
3c1a4392 52{
53 AliESD* esd = Alieve::Event::AssertESD();
54
55 AliESDVertex* pv = esd->GetPrimaryVertex();
56 TPolyMarker3D* pvm = make_vertex_marker(pv, "Primary Vertex");
5b96ea20 57 pvm->SetMarkerStyle(5);
1abc4687 58 pvm->SetMarkerColor(5);
846e8468 59 pvm->SetMarkerSize(1.4);
3c1a4392 60 register_vertex_marker(pvm);
61
62 if(showSPD) {
63 AliESDVertex* spdv = esd->GetVertex();
64 TPolyMarker3D* spdvm = make_vertex_marker(spdv, "SPD Vertex");
65 spdvm->SetMarkerStyle(2);
1abc4687 66 spdvm->SetMarkerColor(6);
3c1a4392 67 register_vertex_marker(spdvm);
68 }
c37f91e9 69
70 if(showBoxes)
71 make_vertex_boxes(pv);
3c1a4392 72}