]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/macros/testSt12Graphics.C
Patch for the pointer to AOD event
[u/mrichter/AliRoot.git] / MUON / mapping / macros / testSt12Graphics.C
CommitLineData
66e0997c 1// $Id$
57ff4119 2// $MpId: testGraphics.C,v 1.13 2005/10/28 15:36:08 ivana Exp $
66e0997c 3//
4// Test macro for drawing sector data.
5
f05d3eb1 6#if !defined(__CINT__) || defined(__MAKECINT__)
7
8#include "AliMpStation12Type.h"
9#include "AliMpPlaneType.h"
10#include "AliMpDataProcessor.h"
11#include "AliMpDataMap.h"
12#include "AliMpDataStreams.h"
13#include "AliMpSector.h"
14#include "AliMpSectorReader.h"
15#include "AliMpRow.h"
16#include "AliMpVRowSegment.h"
17#include "AliMpMotifMap.h"
18#include "AliMpMotifPosition.h"
19#include "AliMpVPainter.h"
20
21#include <Riostream.h>
22#include <TCanvas.h>
23
24#endif
25
6aa39548 26TCanvas* CreateTCanvas(const TString& name, const TString& title,
27 AliMq::Station12Type station, AliMp::PlaneType plane)
28{
29 TString newName(name);
30 TString newTitle(title);
31 TString unique = AliMq::Station12TypeName(station) + AliMp::PlaneTypeName(plane);
32 newName += unique;
33 newTitle += unique;
34 return new TCanvas(newName.Data(), newTitle.Data());
35}
36
f05d3eb1 37void testGraphics(AliMq::Station12Type station, AliMp::PlaneType plane)
66e0997c 38{
f05d3eb1 39 AliMpDataProcessor mp;
40 AliMpDataMap* dataMap = mp.CreateDataMap("data");
41 AliMpDataStreams dataStreams(dataMap);
334be4b7 42
f05d3eb1 43 AliMpSectorReader r(dataStreams, station, plane);
44 AliMpSector* sector = r.BuildSector();
334be4b7 45
f05d3eb1 46 AliMpVPainter* painter = AliMpVPainter::CreatePainter(sector);
66e0997c 47
db8a279f 48 TCanvas* canvas = new TCanvas();
49 TCanvas* canvas2 = new TCanvas();
66e0997c 50 TCanvas* c[4];
51 for (int i=0;i<4;++i) {
52 c[i] = new TCanvas();
53 c[i]->Divide(2,2);
54 }
55
f05d3eb1 56 //first, paint the whole sector
66e0997c 57 canvas->cd();
58 painter->Draw("");
59 //now paint each rows
60 c[0]->cd(1);
61 painter->Draw("R");
62 //paint each row segments in each row
63 c[0]->cd(2);
64 painter->Draw("RS");
65 //paint each motifs, in each row segments in each row
66 c[0]->cd(3);
67 painter->Draw("RSMP");
68 //paint each pads, in each motifs, in each row segments in each row
69 c[0]->cd(4);
70 painter->Draw("RSMT");
71
72 ///////////////////////////////
73 //now paint each rows, wwith its name
74 c[1]->cd(1);
75 painter->Draw("RT");
76 //paint each row segments in each row, and its name
77 c[1]->cd(2);
78 painter->Draw("RST");
79 //paint each motifs, in each row segments in each row
80 c[1]->cd(3);
81 painter->Draw("RSMX");
82 c[1]->cd(4);
83 painter->Draw("RSMI");
84
85 ///////////////////////////////
86 //now paint each zones
87 c[2]->cd(1);
88 painter->Draw("Z");
89 //paint each sub-zones, in each zones
90 c[2]->cd(2);
91 painter->Draw("ZS");
92 //paint each row segments, in each sub-zone, ...
93 c[2]->cd(3);
94 painter->Draw("ZSS");
95 // each motifs, in each row segments, ...
96 c[2]->cd(4);
97 painter->Draw("ZSSM");
98
99 ///////////////////////////////
100 //now paint each zones with its name
101 c[3]->cd(1);
102 painter->Draw("ZT");
103 //paint each sub-zones, in each zones with its name
104 c[3]->cd(2);
105 painter->Draw("ZST");
106 //paint each row segments, in each sub-zone, ... with its name
107 c[3]->cd(3);
108 painter->Draw("ZSST");
109 // each motifs, in each row segments, ... with its name
110 c[3]->cd(4);
111 painter->Draw("ZSSMT");
f05d3eb1 112
66e0997c 113 // now, draw a specific motif, in a whole canvas, and
114 // print all its pad names
115 Int_t id = sector->GetRow(5)->GetRowSegment(0)->GetMotifPositionId(0);
116 AliMpMotifPosition* motifPos = sector->GetMotifMap()->FindMotifPosition(id);
f05d3eb1 117 AliMpVPainter* motifPainter = AliMpVPainter::CreatePainter(motifPos);
6aa39548 118 CreateTCanvas("onepad ","One motif ", station, plane);
66e0997c 119 motifPainter->Draw("PT");
db8a279f 120
121 //////////////////////////////
122 //now paint motifs with their real contours and mani Ids
123 canvas2->cd();
124 painter->Draw("RSMCI");
66e0997c 125}
f05d3eb1 126
6aa39548 127void testSt12Graphics()
f05d3eb1 128{
129 AliMq::Station12Type station[2] = { AliMq::kStation1, AliMq::kStation2 };
130 AliMp::PlaneType plane[2] = { AliMp::kBendingPlane, AliMp::kNonBendingPlane };
131
132 for ( Int_t is = 0; is < 2; is++ ) {
133 for ( Int_t ip = 0; ip < 2; ip++ ) {
134
135 cout << "Running testGraphics for "
136 << AliMq::Station12TypeName(station[is]) << " "
137 << AliMp::PlaneTypeName(plane[ip]) << " ... " << endl;
138
139 testGraphics(station[is], plane[ip]);
140
141 cout << "... end running " << endl << endl;
142 }
143 }
144}
145