1 // $Id: its_raw.C 24929 2008-04-04 13:51:43Z mtadel $
2 // Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
4 /**************************************************************************
5 * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
6 * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for *
7 * full copyright notice. *
8 **************************************************************************/
10 void its_common_foos()
13 AliEveITSModule* its_make_module(Int_t i, TEveElement* parent,
14 AliEveITSDigitsInfo* di,
15 AliEveDigitScaleInfo* si,
16 Bool_t check_empty, Bool_t scaled_modules)
18 AliEveITSModule* m = 0;
21 if (i > 239 && i < 500) det_id = 1;
22 else if (i >= 500) det_id = 2;
24 if (!check_empty || (di->GetDigits(i, det_id) && di->GetDigits(i, det_id)->GetEntriesFast() > 0))
27 m = new AliEveITSScaledModule(i, di, si);
29 m = new AliEveITSModule(i, di);
31 parent->AddElement(m);
37 void its_display_raw_digits(AliEveITSDigitsInfo* di, Int_t mode,
38 Bool_t check_empty = kTRUE,
39 Bool_t scaled_modules = kFALSE)
42 TString bsSector="Sector";
44 TString bsStave="Stave";
46 TString bsLadder="Ladder";
49 Int_t nsec, nstave, nlad, nMod;
51 gEve->DisableRedraw();
53 AliEveDigitScaleInfo* si = 0;
55 si = new AliEveDigitScaleInfo;
58 TEveElementList* l = new TEveElementList("SPD0");
59 l->SetTitle("SPDs' first layer");
62 for (nsec=0; nsec<10; nsec++) {
65 TEveElementList* relSector = new TEveElementList(sSector.Data());
66 relSector->SetMainColor(2);
67 gEve->AddElement(relSector, l);
68 for (nstave=0; nstave<2; nstave++){
71 TEveElementList* relStave = new TEveElementList(sStave.Data());
72 relStave->SetMainColor(2);
73 gEve->AddElement(relStave, relSector);
74 for (nMod=0; nMod<4; ++nMod, ++i)
76 its_make_module(i, relStave, di, si, check_empty, scaled_modules);
85 TEveElementList* l = new TEveElementList("SPD1");
86 l->SetTitle("SPDs' second layer");
90 for (nsec=0; nsec<10; nsec++) {
93 TEveElementList* relSector = new TEveElementList(sSector.Data());
94 relSector->SetMainColor(2);
95 gEve->AddElement(relSector, l);
96 for (nstave=0; nstave<4; nstave++){
99 TEveElementList* relStave = new TEveElementList(sStave.Data());
100 relStave->SetMainColor(2);
101 gEve->AddElement(relStave, relSector);
102 for (nMod=0; nMod<4; ++nMod, ++i)
104 its_make_module(i, relStave, di, si, check_empty, scaled_modules);
113 TEveElementList* l = new TEveElementList("SDD2");
114 l->SetTitle("SDDs' first layer");
118 for (nlad=0; nlad<14; nlad++) {
121 TEveElementList* relLadder = new TEveElementList(sLadder.Data());
122 relLadder->SetMainColor(3);
123 gEve->AddElement(relLadder, l);
124 for (nMod=0; nMod<6; ++nMod, ++i)
126 its_make_module(i, relLadder, di, si, check_empty, scaled_modules);
134 TEveElementList* l = new TEveElementList("SDD3");
135 l->SetTitle("SDDs' second layer");
138 for (nlad=0; nlad<22; nlad++) {
141 TEveElementList* relLadder = new TEveElementList(sLadder.Data());
142 relLadder->SetMainColor(3);
143 gEve->AddElement(relLadder, l);
144 for (nMod=0; nMod<8; ++nMod, ++i)
146 its_make_module(i, relLadder, di, si, check_empty, scaled_modules);
154 TEveElementList* l = new TEveElementList("SSD4");
155 l->SetTitle("SSDs' first layer");
158 for (nlad=0; nlad<34; nlad++) {
161 TEveElementList* relLadder = new TEveElementList(sLadder.Data());
162 relLadder->SetMainColor(4);
163 gEve->AddElement(relLadder, l);
164 for (nMod=0; nMod<22; ++nMod, ++i)
166 its_make_module(i, relLadder, di, si, check_empty, scaled_modules);
174 TEveElementList* l = new TEveElementList("SSD5");
175 l->SetTitle("SSDs' second layer");
178 for (nlad=0; nlad<38; nlad++) {
181 TEveElementList* relLadder = new TEveElementList(sLadder.Data());
182 relLadder->SetMainColor(4);
183 gEve->AddElement(relLadder, l);
184 for (nMod=0; nMod<25; ++nMod, ++i)
186 its_make_module(i, relLadder, di, si, check_empty, scaled_modules);
193 gEve->EnableRedraw();