#include "AliMUONPainterDataSourceItem.h"
#include "AliMUONPainterEnv.h"
#include "AliMUONPainterHelper.h"
#include "AliMUONPainterDataRegistry.h"
#include "AliMUONVTrackerDataMaker.h"
#include "AliMUONVTrackerData.h"
#include "AliLog.h"
#include <TFile.h>
#include <TGFileDialog.h>
#include <TGLabel.h>
#include <TGButton.h>
#include <TSystem.h>
#include <TThread.h>
#include <Riostream.h>
ClassImp(AliMUONPainterDataSourceItem)
namespace
{
void* RunFunction(void* args)
{
Long_t* params = (Long_t*)(args);
AliMUONPainterDataSourceItem* calling = reinterpret_cast<AliMUONPainterDataSourceItem*>(params[0]);
AliMUONVTrackerDataMaker* reader = reinterpret_cast<AliMUONVTrackerDataMaker*> (params[1]);
Bool_t ok(kTRUE);
while ( ok )
{
ok = reader->NextEvent();
if ( reader->IsZombie() )
{
AliMUONPainterDataRegistry::Instance()->DeleteZombies();
return 0x0;
}
if ( !reader->IsRunning() ) gSystem->Sleep(1000);
}
calling->Rewind();
return 0x0;
}
}
AliMUONPainterDataSourceItem::AliMUONPainterDataSourceItem(const TGWindow* p,
UInt_t w, UInt_t h,
AliMUONVTrackerDataMaker* maker)
: TGCompositeFrame(p,w,h,kHorizontalFrame),
fDataMaker(maker),
fSourceName(new TGLabel(this,maker->Data()->Name())),
fSource(new TGLabel(this,maker->Source().Data())),
fNumberOfEvents(new TGLabel(this,Form("%10d",0))),
fRun(0x0),
fStop(0x0),
fRewind(0x0),
fRemove(new TGTextButton(this,"Remove")),
fSave(new TGTextButton(this,"Save")),
fSaveAs(new TGTextButton(this,"Save As...")),
fThread(0x0),
fShouldReset(kFALSE)
{
SetCleanup(kDeepCleanup);
Update();
AddFrame(fSourceName, new TGLayoutHints(kLHintsNormal | kLHintsCenterY,5,5,5,5));
AddFrame(fSource,new TGLayoutHints(kLHintsExpandX | kLHintsCenterY,5,5,5,5));
AddFrame(fNumberOfEvents,new TGLayoutHints(kLHintsNormal | kLHintsCenterY,5,5,5,5));
if ( fDataMaker->IsRunnable() )
{
fRun = new TGTextButton(this,"Run");
fStop = new TGTextButton(this,"Stop");
fRewind = new TGTextButton(this,"Rewind");
fRun->SetEnabled(!maker->Data()->IsSingleEvent());
fRun->Connect("Clicked()",
"AliMUONPainterDataSourceItem",
this,
"Run()");
fStop->SetEnabled(kFALSE);
fStop->Connect("Clicked()",
"AliMUONPainterDataSourceItem",
this,
"Stop()");
fRewind->SetEnabled(kFALSE);
fRewind->Connect("Clicked()",
"AliMUONPainterDataSourceItem",
this,
"Rewind()");
AddFrame(fRun,new TGLayoutHints(kLHintsCenterY | kLHintsCenterY,5,5,5,5));
AddFrame(fStop,new TGLayoutHints(kLHintsCenterY | kLHintsCenterY,5,5,5,5));
AddFrame(fRewind,new TGLayoutHints(kLHintsCenterY | kLHintsCenterY,5,5,5,5));
}
AddFrame(fRemove,new TGLayoutHints(kLHintsCenterY | kLHintsCenterY,5,5,5,5));
AddFrame(fSave,new TGLayoutHints(kLHintsCenterY | kLHintsCenterY,5,5,5,5));
AddFrame(fSaveAs,new TGLayoutHints(kLHintsCenterY | kLHintsCenterY,5,5,5,5));
maker->Data()->Connect("NumberOfEventsChanged()",
"AliMUONPainterDataSourceItem",
this,
"Update()");
fRemove->Connect("Clicked()",
"AliMUONPainterDataSourceItem",
this,
"Remove()");
fSave->Connect("Clicked()",
"AliMUONPainterDataSourceItem",
this,
"Save()");
fSaveAs->Connect("Clicked()",
"AliMUONPainterDataSourceItem",
this,
"SaveWithDialog()");
Resize();
}
AliMUONPainterDataSourceItem::~AliMUONPainterDataSourceItem()
{
TThread::Delete(fThread);
delete fThread;
}
void
AliMUONPainterDataSourceItem::EnableRun()
{
if ( fRun )
{
fRun->SetEnabled(kTRUE);
}
}
void
AliMUONPainterDataSourceItem::DisableRun()
{
if ( fRun )
{
fRun->SetEnabled(kFALSE);
}
}
void
AliMUONPainterDataSourceItem::Remove()
{
MakeZombie();
AliMUONPainterDataRegistry::Instance()->Unregister(fDataMaker);
}
void
AliMUONPainterDataSourceItem::Reset()
{
fDataMaker->Data()->Clear();
}
void
AliMUONPainterDataSourceItem::Rewind()
{
fRewind->SetEnabled(kTRUE);
Stop();
TThread::Delete(fThread);
delete fThread;
fThread = 0x0;
if ( fRun && fStop && fRewind )
{
fRun->SetEnabled(kTRUE);
fStop->SetEnabled(kFALSE);
fRewind->SetEnabled(kFALSE);
}
fDataMaker->Rewind();
fShouldReset = kTRUE;
}
void
AliMUONPainterDataSourceItem::Run()
{
StartRunning();
if ( fShouldReset )
{
Reset();
fShouldReset = kFALSE;
}
fRemove->SetEnabled(kFALSE);
if (!fThread)
{
fParams[0] = (Long_t)(this);
fParams[1] = (Long_t)(fDataMaker);
fThread = new TThread(RunFunction,(void*)(&fParams[0]));
fThread->Run();
}
fDataMaker->SetRunning(kTRUE);
if ( fRun && fStop )
{
fRun->SetEnabled(kFALSE);
fStop->SetEnabled(kTRUE);
}
}
void
AliMUONPainterDataSourceItem::Save(const char* filename)
{
TFile* f = TFile::Open(filename,"RECREATE");
fDataMaker->Write();
f->Write();
f->Close();
delete f;
}
void
AliMUONPainterDataSourceItem::Save()
{
TString dname(fDataMaker->Data()->GetName());
dname.ToLower();
TString outputDir(AliMUONPainterHelper::Instance()->Env()->String("LastSaveDir","."));
TString filename(Form("%s/mchview.%s.root",gSystem->ExpandPathName(outputDir.Data()),dname.Data()));
Save(filename.Data());
}
void
AliMUONPainterDataSourceItem::SaveWithDialog()
{
TGFileInfo fileInfo;
delete[] fileInfo.fIniDir;
AliMUONPainterEnv* env = AliMUONPainterHelper::Instance()->Env();
fileInfo.fIniDir = StrDup(env->String("LastSaveDir","."));
new TGFileDialog(gClient->GetRoot(),gClient->GetRoot(),
kFDSave,&fileInfo);
env->Set("LastSaveDir",fileInfo.fIniDir);
env->Save();
Save(fileInfo.fFilename);
}
void
AliMUONPainterDataSourceItem::Stop()
{
StopRunning();
fDataMaker->SetRunning(kFALSE);
if ( fStop && fRun )
{
fStop->SetEnabled(kFALSE);
fRun->SetEnabled(kTRUE);
}
fRemove->SetEnabled(kTRUE);
}
void
AliMUONPainterDataSourceItem::Update()
{
fNumberOfEvents->SetText(Form("%10d",fDataMaker->Data()->NumberOfEvents(-1)));
}
void
AliMUONPainterDataSourceItem::StartRunning()
{
Emit("StartRunning()");
}
void
AliMUONPainterDataSourceItem::StopRunning()
{
Emit("StopRunning()");
}
AliMUONPainterDataSourceItem.cxx:1 AliMUONPainterDataSourceItem.cxx:2 AliMUONPainterDataSourceItem.cxx:3 AliMUONPainterDataSourceItem.cxx:4 AliMUONPainterDataSourceItem.cxx:5 AliMUONPainterDataSourceItem.cxx:6 AliMUONPainterDataSourceItem.cxx:7 AliMUONPainterDataSourceItem.cxx:8 AliMUONPainterDataSourceItem.cxx:9 AliMUONPainterDataSourceItem.cxx:10 AliMUONPainterDataSourceItem.cxx:11 AliMUONPainterDataSourceItem.cxx:12 AliMUONPainterDataSourceItem.cxx:13 AliMUONPainterDataSourceItem.cxx:14 AliMUONPainterDataSourceItem.cxx:15 AliMUONPainterDataSourceItem.cxx:16 AliMUONPainterDataSourceItem.cxx:17 AliMUONPainterDataSourceItem.cxx:18 AliMUONPainterDataSourceItem.cxx:19 AliMUONPainterDataSourceItem.cxx:20 AliMUONPainterDataSourceItem.cxx:21 AliMUONPainterDataSourceItem.cxx:22 AliMUONPainterDataSourceItem.cxx:23 AliMUONPainterDataSourceItem.cxx:24 AliMUONPainterDataSourceItem.cxx:25 AliMUONPainterDataSourceItem.cxx:26 AliMUONPainterDataSourceItem.cxx:27 AliMUONPainterDataSourceItem.cxx:28 AliMUONPainterDataSourceItem.cxx:29 AliMUONPainterDataSourceItem.cxx:30 AliMUONPainterDataSourceItem.cxx:31 AliMUONPainterDataSourceItem.cxx:32 AliMUONPainterDataSourceItem.cxx:33 AliMUONPainterDataSourceItem.cxx:34 AliMUONPainterDataSourceItem.cxx:35 AliMUONPainterDataSourceItem.cxx:36 AliMUONPainterDataSourceItem.cxx:37 AliMUONPainterDataSourceItem.cxx:38 AliMUONPainterDataSourceItem.cxx:39 AliMUONPainterDataSourceItem.cxx:40 AliMUONPainterDataSourceItem.cxx:41 AliMUONPainterDataSourceItem.cxx:42 AliMUONPainterDataSourceItem.cxx:43 AliMUONPainterDataSourceItem.cxx:44 AliMUONPainterDataSourceItem.cxx:45 AliMUONPainterDataSourceItem.cxx:46 AliMUONPainterDataSourceItem.cxx:47 AliMUONPainterDataSourceItem.cxx:48 AliMUONPainterDataSourceItem.cxx:49 AliMUONPainterDataSourceItem.cxx:50 AliMUONPainterDataSourceItem.cxx:51 AliMUONPainterDataSourceItem.cxx:52 AliMUONPainterDataSourceItem.cxx:53 AliMUONPainterDataSourceItem.cxx:54 AliMUONPainterDataSourceItem.cxx:55 AliMUONPainterDataSourceItem.cxx:56 AliMUONPainterDataSourceItem.cxx:57 AliMUONPainterDataSourceItem.cxx:58 AliMUONPainterDataSourceItem.cxx:59 AliMUONPainterDataSourceItem.cxx:60 AliMUONPainterDataSourceItem.cxx:61 AliMUONPainterDataSourceItem.cxx:62 AliMUONPainterDataSourceItem.cxx:63 AliMUONPainterDataSourceItem.cxx:64 AliMUONPainterDataSourceItem.cxx:65 AliMUONPainterDataSourceItem.cxx:66 AliMUONPainterDataSourceItem.cxx:67 AliMUONPainterDataSourceItem.cxx:68 AliMUONPainterDataSourceItem.cxx:69 AliMUONPainterDataSourceItem.cxx:70 AliMUONPainterDataSourceItem.cxx:71 AliMUONPainterDataSourceItem.cxx:72 AliMUONPainterDataSourceItem.cxx:73 AliMUONPainterDataSourceItem.cxx:74 AliMUONPainterDataSourceItem.cxx:75 AliMUONPainterDataSourceItem.cxx:76 AliMUONPainterDataSourceItem.cxx:77 AliMUONPainterDataSourceItem.cxx:78 AliMUONPainterDataSourceItem.cxx:79 AliMUONPainterDataSourceItem.cxx:80 AliMUONPainterDataSourceItem.cxx:81 AliMUONPainterDataSourceItem.cxx:82 AliMUONPainterDataSourceItem.cxx:83 AliMUONPainterDataSourceItem.cxx:84 AliMUONPainterDataSourceItem.cxx:85 AliMUONPainterDataSourceItem.cxx:86 AliMUONPainterDataSourceItem.cxx:87 AliMUONPainterDataSourceItem.cxx:88 AliMUONPainterDataSourceItem.cxx:89 AliMUONPainterDataSourceItem.cxx:90 AliMUONPainterDataSourceItem.cxx:91 AliMUONPainterDataSourceItem.cxx:92 AliMUONPainterDataSourceItem.cxx:93 AliMUONPainterDataSourceItem.cxx:94 AliMUONPainterDataSourceItem.cxx:95 AliMUONPainterDataSourceItem.cxx:96 AliMUONPainterDataSourceItem.cxx:97 AliMUONPainterDataSourceItem.cxx:98 AliMUONPainterDataSourceItem.cxx:99 AliMUONPainterDataSourceItem.cxx:100 AliMUONPainterDataSourceItem.cxx:101 AliMUONPainterDataSourceItem.cxx:102 AliMUONPainterDataSourceItem.cxx:103 AliMUONPainterDataSourceItem.cxx:104 AliMUONPainterDataSourceItem.cxx:105 AliMUONPainterDataSourceItem.cxx:106 AliMUONPainterDataSourceItem.cxx:107 AliMUONPainterDataSourceItem.cxx:108 AliMUONPainterDataSourceItem.cxx:109 AliMUONPainterDataSourceItem.cxx:110 AliMUONPainterDataSourceItem.cxx:111 AliMUONPainterDataSourceItem.cxx:112 AliMUONPainterDataSourceItem.cxx:113 AliMUONPainterDataSourceItem.cxx:114 AliMUONPainterDataSourceItem.cxx:115 AliMUONPainterDataSourceItem.cxx:116 AliMUONPainterDataSourceItem.cxx:117 AliMUONPainterDataSourceItem.cxx:118 AliMUONPainterDataSourceItem.cxx:119 AliMUONPainterDataSourceItem.cxx:120 AliMUONPainterDataSourceItem.cxx:121 AliMUONPainterDataSourceItem.cxx:122 AliMUONPainterDataSourceItem.cxx:123 AliMUONPainterDataSourceItem.cxx:124 AliMUONPainterDataSourceItem.cxx:125 AliMUONPainterDataSourceItem.cxx:126 AliMUONPainterDataSourceItem.cxx:127 AliMUONPainterDataSourceItem.cxx:128 AliMUONPainterDataSourceItem.cxx:129 AliMUONPainterDataSourceItem.cxx:130 AliMUONPainterDataSourceItem.cxx:131 AliMUONPainterDataSourceItem.cxx:132 AliMUONPainterDataSourceItem.cxx:133 AliMUONPainterDataSourceItem.cxx:134 AliMUONPainterDataSourceItem.cxx:135 AliMUONPainterDataSourceItem.cxx:136 AliMUONPainterDataSourceItem.cxx:137 AliMUONPainterDataSourceItem.cxx:138 AliMUONPainterDataSourceItem.cxx:139 AliMUONPainterDataSourceItem.cxx:140 AliMUONPainterDataSourceItem.cxx:141 AliMUONPainterDataSourceItem.cxx:142 AliMUONPainterDataSourceItem.cxx:143 AliMUONPainterDataSourceItem.cxx:144 AliMUONPainterDataSourceItem.cxx:145 AliMUONPainterDataSourceItem.cxx:146 AliMUONPainterDataSourceItem.cxx:147 AliMUONPainterDataSourceItem.cxx:148 AliMUONPainterDataSourceItem.cxx:149 AliMUONPainterDataSourceItem.cxx:150 AliMUONPainterDataSourceItem.cxx:151 AliMUONPainterDataSourceItem.cxx:152 AliMUONPainterDataSourceItem.cxx:153 AliMUONPainterDataSourceItem.cxx:154 AliMUONPainterDataSourceItem.cxx:155 AliMUONPainterDataSourceItem.cxx:156 AliMUONPainterDataSourceItem.cxx:157 AliMUONPainterDataSourceItem.cxx:158 AliMUONPainterDataSourceItem.cxx:159 AliMUONPainterDataSourceItem.cxx:160 AliMUONPainterDataSourceItem.cxx:161 AliMUONPainterDataSourceItem.cxx:162 AliMUONPainterDataSourceItem.cxx:163 AliMUONPainterDataSourceItem.cxx:164 AliMUONPainterDataSourceItem.cxx:165 AliMUONPainterDataSourceItem.cxx:166 AliMUONPainterDataSourceItem.cxx:167 AliMUONPainterDataSourceItem.cxx:168 AliMUONPainterDataSourceItem.cxx:169 AliMUONPainterDataSourceItem.cxx:170 AliMUONPainterDataSourceItem.cxx:171 AliMUONPainterDataSourceItem.cxx:172 AliMUONPainterDataSourceItem.cxx:173 AliMUONPainterDataSourceItem.cxx:174 AliMUONPainterDataSourceItem.cxx:175 AliMUONPainterDataSourceItem.cxx:176 AliMUONPainterDataSourceItem.cxx:177 AliMUONPainterDataSourceItem.cxx:178 AliMUONPainterDataSourceItem.cxx:179 AliMUONPainterDataSourceItem.cxx:180 AliMUONPainterDataSourceItem.cxx:181 AliMUONPainterDataSourceItem.cxx:182 AliMUONPainterDataSourceItem.cxx:183 AliMUONPainterDataSourceItem.cxx:184 AliMUONPainterDataSourceItem.cxx:185 AliMUONPainterDataSourceItem.cxx:186 AliMUONPainterDataSourceItem.cxx:187 AliMUONPainterDataSourceItem.cxx:188 AliMUONPainterDataSourceItem.cxx:189 AliMUONPainterDataSourceItem.cxx:190 AliMUONPainterDataSourceItem.cxx:191 AliMUONPainterDataSourceItem.cxx:192 AliMUONPainterDataSourceItem.cxx:193 AliMUONPainterDataSourceItem.cxx:194 AliMUONPainterDataSourceItem.cxx:195 AliMUONPainterDataSourceItem.cxx:196 AliMUONPainterDataSourceItem.cxx:197 AliMUONPainterDataSourceItem.cxx:198 AliMUONPainterDataSourceItem.cxx:199 AliMUONPainterDataSourceItem.cxx:200 AliMUONPainterDataSourceItem.cxx:201 AliMUONPainterDataSourceItem.cxx:202 AliMUONPainterDataSourceItem.cxx:203 AliMUONPainterDataSourceItem.cxx:204 AliMUONPainterDataSourceItem.cxx:205 AliMUONPainterDataSourceItem.cxx:206 AliMUONPainterDataSourceItem.cxx:207 AliMUONPainterDataSourceItem.cxx:208 AliMUONPainterDataSourceItem.cxx:209 AliMUONPainterDataSourceItem.cxx:210 AliMUONPainterDataSourceItem.cxx:211 AliMUONPainterDataSourceItem.cxx:212 AliMUONPainterDataSourceItem.cxx:213 AliMUONPainterDataSourceItem.cxx:214 AliMUONPainterDataSourceItem.cxx:215 AliMUONPainterDataSourceItem.cxx:216 AliMUONPainterDataSourceItem.cxx:217 AliMUONPainterDataSourceItem.cxx:218 AliMUONPainterDataSourceItem.cxx:219 AliMUONPainterDataSourceItem.cxx:220 AliMUONPainterDataSourceItem.cxx:221 AliMUONPainterDataSourceItem.cxx:222 AliMUONPainterDataSourceItem.cxx:223 AliMUONPainterDataSourceItem.cxx:224 AliMUONPainterDataSourceItem.cxx:225 AliMUONPainterDataSourceItem.cxx:226 AliMUONPainterDataSourceItem.cxx:227 AliMUONPainterDataSourceItem.cxx:228 AliMUONPainterDataSourceItem.cxx:229 AliMUONPainterDataSourceItem.cxx:230 AliMUONPainterDataSourceItem.cxx:231 AliMUONPainterDataSourceItem.cxx:232 AliMUONPainterDataSourceItem.cxx:233 AliMUONPainterDataSourceItem.cxx:234 AliMUONPainterDataSourceItem.cxx:235 AliMUONPainterDataSourceItem.cxx:236 AliMUONPainterDataSourceItem.cxx:237 AliMUONPainterDataSourceItem.cxx:238 AliMUONPainterDataSourceItem.cxx:239 AliMUONPainterDataSourceItem.cxx:240 AliMUONPainterDataSourceItem.cxx:241 AliMUONPainterDataSourceItem.cxx:242 AliMUONPainterDataSourceItem.cxx:243 AliMUONPainterDataSourceItem.cxx:244 AliMUONPainterDataSourceItem.cxx:245 AliMUONPainterDataSourceItem.cxx:246 AliMUONPainterDataSourceItem.cxx:247 AliMUONPainterDataSourceItem.cxx:248 AliMUONPainterDataSourceItem.cxx:249 AliMUONPainterDataSourceItem.cxx:250 AliMUONPainterDataSourceItem.cxx:251 AliMUONPainterDataSourceItem.cxx:252 AliMUONPainterDataSourceItem.cxx:253 AliMUONPainterDataSourceItem.cxx:254 AliMUONPainterDataSourceItem.cxx:255 AliMUONPainterDataSourceItem.cxx:256 AliMUONPainterDataSourceItem.cxx:257 AliMUONPainterDataSourceItem.cxx:258 AliMUONPainterDataSourceItem.cxx:259 AliMUONPainterDataSourceItem.cxx:260 AliMUONPainterDataSourceItem.cxx:261 AliMUONPainterDataSourceItem.cxx:262 AliMUONPainterDataSourceItem.cxx:263 AliMUONPainterDataSourceItem.cxx:264 AliMUONPainterDataSourceItem.cxx:265 AliMUONPainterDataSourceItem.cxx:266 AliMUONPainterDataSourceItem.cxx:267 AliMUONPainterDataSourceItem.cxx:268 AliMUONPainterDataSourceItem.cxx:269 AliMUONPainterDataSourceItem.cxx:270 AliMUONPainterDataSourceItem.cxx:271 AliMUONPainterDataSourceItem.cxx:272 AliMUONPainterDataSourceItem.cxx:273 AliMUONPainterDataSourceItem.cxx:274 AliMUONPainterDataSourceItem.cxx:275 AliMUONPainterDataSourceItem.cxx:276 AliMUONPainterDataSourceItem.cxx:277 AliMUONPainterDataSourceItem.cxx:278 AliMUONPainterDataSourceItem.cxx:279 AliMUONPainterDataSourceItem.cxx:280 AliMUONPainterDataSourceItem.cxx:281 AliMUONPainterDataSourceItem.cxx:282 AliMUONPainterDataSourceItem.cxx:283 AliMUONPainterDataSourceItem.cxx:284 AliMUONPainterDataSourceItem.cxx:285 AliMUONPainterDataSourceItem.cxx:286 AliMUONPainterDataSourceItem.cxx:287 AliMUONPainterDataSourceItem.cxx:288 AliMUONPainterDataSourceItem.cxx:289 AliMUONPainterDataSourceItem.cxx:290 AliMUONPainterDataSourceItem.cxx:291 AliMUONPainterDataSourceItem.cxx:292 AliMUONPainterDataSourceItem.cxx:293 AliMUONPainterDataSourceItem.cxx:294 AliMUONPainterDataSourceItem.cxx:295 AliMUONPainterDataSourceItem.cxx:296 AliMUONPainterDataSourceItem.cxx:297 AliMUONPainterDataSourceItem.cxx:298 AliMUONPainterDataSourceItem.cxx:299 AliMUONPainterDataSourceItem.cxx:300 AliMUONPainterDataSourceItem.cxx:301 AliMUONPainterDataSourceItem.cxx:302 AliMUONPainterDataSourceItem.cxx:303 AliMUONPainterDataSourceItem.cxx:304 AliMUONPainterDataSourceItem.cxx:305 AliMUONPainterDataSourceItem.cxx:306 AliMUONPainterDataSourceItem.cxx:307 AliMUONPainterDataSourceItem.cxx:308 AliMUONPainterDataSourceItem.cxx:309 AliMUONPainterDataSourceItem.cxx:310 AliMUONPainterDataSourceItem.cxx:311 AliMUONPainterDataSourceItem.cxx:312 AliMUONPainterDataSourceItem.cxx:313 AliMUONPainterDataSourceItem.cxx:314 AliMUONPainterDataSourceItem.cxx:315 AliMUONPainterDataSourceItem.cxx:316 AliMUONPainterDataSourceItem.cxx:317 AliMUONPainterDataSourceItem.cxx:318 AliMUONPainterDataSourceItem.cxx:319 AliMUONPainterDataSourceItem.cxx:320 AliMUONPainterDataSourceItem.cxx:321 AliMUONPainterDataSourceItem.cxx:322 AliMUONPainterDataSourceItem.cxx:323 AliMUONPainterDataSourceItem.cxx:324 AliMUONPainterDataSourceItem.cxx:325 AliMUONPainterDataSourceItem.cxx:326 AliMUONPainterDataSourceItem.cxx:327 AliMUONPainterDataSourceItem.cxx:328 AliMUONPainterDataSourceItem.cxx:329 AliMUONPainterDataSourceItem.cxx:330 AliMUONPainterDataSourceItem.cxx:331 AliMUONPainterDataSourceItem.cxx:332 AliMUONPainterDataSourceItem.cxx:333 AliMUONPainterDataSourceItem.cxx:334 AliMUONPainterDataSourceItem.cxx:335 AliMUONPainterDataSourceItem.cxx:336 AliMUONPainterDataSourceItem.cxx:337 AliMUONPainterDataSourceItem.cxx:338 AliMUONPainterDataSourceItem.cxx:339 AliMUONPainterDataSourceItem.cxx:340 AliMUONPainterDataSourceItem.cxx:341 AliMUONPainterDataSourceItem.cxx:342 AliMUONPainterDataSourceItem.cxx:343 AliMUONPainterDataSourceItem.cxx:344 AliMUONPainterDataSourceItem.cxx:345 AliMUONPainterDataSourceItem.cxx:346 AliMUONPainterDataSourceItem.cxx:347 AliMUONPainterDataSourceItem.cxx:348 AliMUONPainterDataSourceItem.cxx:349 AliMUONPainterDataSourceItem.cxx:350 AliMUONPainterDataSourceItem.cxx:351 AliMUONPainterDataSourceItem.cxx:352 AliMUONPainterDataSourceItem.cxx:353 AliMUONPainterDataSourceItem.cxx:354 AliMUONPainterDataSourceItem.cxx:355 AliMUONPainterDataSourceItem.cxx:356 AliMUONPainterDataSourceItem.cxx:357 AliMUONPainterDataSourceItem.cxx:358 AliMUONPainterDataSourceItem.cxx:359 AliMUONPainterDataSourceItem.cxx:360 AliMUONPainterDataSourceItem.cxx:361 AliMUONPainterDataSourceItem.cxx:362 AliMUONPainterDataSourceItem.cxx:363 AliMUONPainterDataSourceItem.cxx:364 AliMUONPainterDataSourceItem.cxx:365 AliMUONPainterDataSourceItem.cxx:366 AliMUONPainterDataSourceItem.cxx:367 AliMUONPainterDataSourceItem.cxx:368 AliMUONPainterDataSourceItem.cxx:369