#include "AliMUONPainterMasterFrame.h"
#include "AliMUONChamberPainter.h"
#include "AliMUONPainterGroup.h"
#include "AliMUONPainterMatrix.h"
#include "AliMUONPainterMatrixFrame.h"
#include "AliMUONPainterInterfaceHelper.h"
#include "AliMUONPainterRegistry.h"
#include "AliMUONAttPainterSelectorFrame.h"
#include "AliMUONVPainter.h"
#include "AliCodeTimer.h"
#include "AliLog.h"
#include <Riostream.h>
#include <TApplication.h>
#include <TCanvas.h>
#include <TEnv.h>
#include <TGComboBox.h>
#include <TGFileDialog.h>
#include <TGLabel.h>
#include <TObjArray.h>
#include <TObjString.h>
#include <TGButtonGroup.h>
#include <TGMsgBox.h>
#include <TSystem.h>
ClassImp(AliMUONPainterMasterFrame)
const Int_t AliMUONPainterMasterFrame::fgkBorderSize = 10;
AliMUONPainterMasterFrame::AliMUONPainterMasterFrame(const TGWindow* p,
UInt_t w, UInt_t h, AliMUONPainterMatrix* matrix)
: TGCompositeFrame(p,w,h,kVerticalFrame),
fNavigationFrame(0x0),
fPainterMatrixFrame(0x0),
fBackButton(0x0),
fForwardButton(0x0),
fGroupTitle(0x0),
fPrintMeButton(0x0),
fPrintAsButton(0x0),
fNavigation(),
fCurrentNavigationPosition(-1),
fAttPainterSelectorFrame(0x0)
{
UInt_t wi = w - fgkBorderSize*2;
UInt_t hi = h - fgkBorderSize*3;
fNavigationFrame = new TGHorizontalFrame(this,wi);
AddFrame(fNavigationFrame,new TGLayoutHints(kLHintsExpandX|kLHintsTop,
fgkBorderSize,fgkBorderSize,
fgkBorderSize,fgkBorderSize));
fBackButton = new TGPictureButton(fNavigationFrame,
gClient->GetPicture("tb_back.xpm"));
fForwardButton = new TGPictureButton(fNavigationFrame,
gClient->GetPicture("tb_forw.xpm"));
fPrintMeButton = new TGTextButton(fNavigationFrame,"Print");
fPrintAsButton = new TGTextButton(fNavigationFrame,"Print As...");
fAttPainterSelectorFrame = new AliMUONAttPainterSelectorFrame(fNavigationFrame,w/2,20);
fGroupTitle = new TGLabel(fNavigationFrame,"");
fNavigationFrame->AddFrame(fBackButton,new TGLayoutHints(kLHintsCenterY));
fNavigationFrame->AddFrame(fForwardButton,new TGLayoutHints(kLHintsCenterY));
fNavigationFrame->AddFrame(fAttPainterSelectorFrame,new TGLayoutHints(kLHintsCenterY,10));
fNavigationFrame->AddFrame(fPrintMeButton,new TGLayoutHints(kLHintsCenterY,10));
fNavigationFrame->AddFrame(fPrintAsButton,new TGLayoutHints(kLHintsCenterY,10));
fAttPainterSelectorFrame->Connect("Clicked(AliMUONAttPainter*)",
"AliMUONPainterMasterFrame",
this,
"AttributesChanged(AliMUONAttPainter*)");
fNavigationFrame->AddFrame(fGroupTitle,new TGLayoutHints(kLHintsExpandX|kLHintsCenterX|kLHintsCenterY,10));
fForwardButton->Connect("Clicked()","AliMUONPainterMasterFrame",
this,
"Forward()");
fBackButton->Connect("Clicked()","AliMUONPainterMasterFrame",
this,
"Backward()");
fPrintMeButton->Connect("Clicked()","AliMUONPainterMasterFrame",
this,
"PrintMe()");
fPrintAsButton->Connect("Clicked()","AliMUONPainterMasterFrame",
this,
"PrintAs()");
UInt_t w1 = wi;
UInt_t h1 = hi - 7*12;
MakeTopPainterMatrix(w1,h1,matrix);
AddFrame(fPainterMatrixFrame,new TGLayoutHints(kLHintsExpandX,
fgkBorderSize,fgkBorderSize,
0,fgkBorderSize));
AliMUONPainterInterfaceHelper::SetBackgroundColor("MasterFrame.Navigation",*fNavigationFrame);
AliMUONPainterInterfaceHelper::SetBackgroundColor("MasterFrame.Main",*this);
AliDebug(1,Form("fNavigation=%p",&fNavigation));
AliMUONPainterRegistry::Instance()->Connect("PainterMatrixWantToShow(AliMUONPainterMatrix*)",
"AliMUONPainterMasterFrame",
this,
"PainterMatrixWantToShow(AliMUONPainterMatrix*)");
fPainterMatrixFrame->DataSourceWasChanged(matrix->DataPattern().Data(),matrix->Data(),matrix->DataIndex());
}
AliMUONPainterMasterFrame::~AliMUONPainterMasterFrame()
{
Cleanup();
}
void
AliMUONPainterMasterFrame::AddPainterMatrix(AliMUONPainterMatrix* painterMatrix)
{
AliDebug(1,Form("matrix=%p %s",painterMatrix,painterMatrix->GetName()));
Int_t i = AliMUONPainterRegistry::Instance()->Register(painterMatrix);
SetNavigation(i);
}
void
AliMUONPainterMasterFrame::PainterMatrixWantToShow(AliMUONPainterMatrix* group)
{
AliDebug(1,Form("group=%p %s",group,group->GetName()));
Int_t i = AliMUONPainterRegistry::Instance()->FindIndexOf(group);
Int_t alreadyThere(-1);
for ( Int_t j = 0; j < fNavigation.GetSize(); ++j )
{
if ( fNavigation[j] == i ) alreadyThere = j;
}
if (alreadyThere<0)
{
SetNavigation(i);
}
else
{
fCurrentNavigationPosition = alreadyThere;
}
ShowPainterMatrix(group);
}
void
AliMUONPainterMasterFrame::PrintAs() const
{
TGFileInfo fileInfo;
new TGFileDialog(gClient->GetRoot(),gClient->GetRoot(),
kFDSave,&fileInfo);
if ( fileInfo.fFilename )
{
SaveAs(gSystem->ExpandPathName(Form("%s",fileInfo.fFilename)),"RECREATE");
}
}
void
AliMUONPainterMasterFrame::PrintMe() const
{
SaveAs(gSystem->ExpandPathName(Form("%s.png",fPainterMatrixFrame->Matrix()->GetName())),"RECREATE");
}
void
AliMUONPainterMasterFrame::SetNavigation(Int_t i)
{
++fCurrentNavigationPosition;
fNavigation.Set(fCurrentNavigationPosition+1);
fNavigation[fCurrentNavigationPosition] = i;
}
void
AliMUONPainterMasterFrame::ShowPainterMatrix(AliMUONPainterMatrix* painterMatrix)
{
fPainterMatrixFrame->Use(painterMatrix);
painterMatrix->Connect("Clicked(AliMUONVPainter*,Double_t*)",
"AliMUONPainterMasterFrame",this,
"Clicked(AliMUONVPainter*,Double_t*)");
painterMatrix->Connect("ShiftClicked(AliMUONVPainter*,Double_t*)",
"AliMUONPainterMasterFrame",this,
"ShiftClicked(AliMUONVPainter*,Double_t*)");
fPainterMatrixFrame->Connect("TitleHasChanged(const char*)",
"AliMUONPainterMasterFrame",this,
"ChangeTitle(const char*)");
UpdateNavigation();
UpdateAttributes(*(fPainterMatrixFrame->Matrix()));
AliMUONPainterRegistry::Instance()->AddToHistory(painterMatrix);
Layout();
}
void
AliMUONPainterMasterFrame::ChangeTitle(const char* newTitle)
{
fGroupTitle->SetText(newTitle);
fGroupTitle->Resize();
Layout();
}
void
AliMUONPainterMasterFrame::Backward()
{
--fCurrentNavigationPosition;
AliMUONPainterMatrix* group =
AliMUONPainterRegistry::Instance()->PainterMatrix(fNavigation[fCurrentNavigationPosition]);
ShowPainterMatrix(group);
UpdateNavigation();
}
void
AliMUONPainterMasterFrame::Forward()
{
++fCurrentNavigationPosition;
AliMUONPainterMatrix* group =
AliMUONPainterRegistry::Instance()->PainterMatrix(fNavigation[fCurrentNavigationPosition]);
ShowPainterMatrix(group);
UpdateNavigation();
}
void
AliMUONPainterMasterFrame::Clicked(AliMUONVPainter* painter, Double_t* values)
{
if ( painter->CanBeDetached() )
{
fPainterMatrixFrame->MouseLeave(painter);
AliMUONPainterMatrix* matrix = new AliMUONPainterMatrix(painter->Name().Data());
AliMUONVPainter* p = painter->Detach();
p->SetResponder(1);
matrix->Adopt(p);
AddPainterMatrix(matrix);
ShowPainterMatrix(matrix);
}
else
{
painter->DrawHistogram(values);
}
}
void
AliMUONPainterMasterFrame::ShiftClicked(AliMUONVPainter* painter, Double_t*)
{
if ( !painter->CanBeDetached() ) return;
AliMUONPainterMatrix* currentMatrix = fPainterMatrixFrame->Matrix();
AliMUONAttPainter a = painter->Attributes();
TString basename(Form("%s-DUAL",painter->GetName()));
TString newName = AliMUONPainterMatrix::NameIt(currentMatrix->Whatname(),basename.Data(),a);
AliMUONPainterMatrix* matrix = AliMUONPainterRegistry::Instance()->PainterMatrix(newName.Data());
if (!matrix)
{
AliMUONAttPainter a1(a);
AliMUONAttPainter a2(a);
a2.Invert();
a1.SetCathodeAndPlaneDisabled(kTRUE);
a2.SetCathodeAndPlaneDisabled(kTRUE);
AliMUONVPainter* p1 = AliMUONVPainter::CreatePainter(painter->ClassName(),
a1,
painter->ID0(),
painter->ID1());
AliMUONVPainter* p2 = AliMUONVPainter::CreatePainter(painter->ClassName(),
a2,
painter->ID0(),
painter->ID1());
if (!p1 || !p2)
{
Int_t ret;
new TGMsgBox(gClient->GetRoot(), this,
"Invalid combination", "Cannot create 2 views from this painter",
kMBIconExclamation, kMBOk, &ret);
PainterMatrixWantToShow(currentMatrix);
delete p1;
delete p2;
return;
}
p1->UpdateGroupsFrom(*(painter->Master()));
p2->UpdateGroupsFrom(*(painter->Master()));
p1->SetResponder(1);
p2->SetResponder(1);
Int_t nx(2);
Int_t ny(1);
AliMpArea area(painter->Area());
if ( area.GetDimensionX() > 1.2*area.GetDimensionY() )
{
nx = 1;
ny = 2;
}
matrix = new AliMUONPainterMatrix(basename.Data(),nx,ny);
matrix->Adopt(p1);
matrix->Adopt(p2);
AddPainterMatrix(matrix);
}
matrix->SetData(currentMatrix->DataPattern(),
currentMatrix->Data(),
currentMatrix->DataIndex());
fPainterMatrixFrame->MouseLeave(painter);
PainterMatrixWantToShow(matrix);
}
void
AliMUONPainterMasterFrame::SaveAs(const char* filename, Option_t* option) const
{
fPainterMatrixFrame->SaveAs(filename,option);
}
void
AliMUONPainterMasterFrame::Update()
{
fPainterMatrixFrame->Update();
fPainterMatrixFrame->UpdateInterface(kFALSE);
}
void
AliMUONPainterMasterFrame::UpdateAttributes(const AliMUONPainterMatrix& painterMatrix)
{
fAttPainterSelectorFrame->Update(painterMatrix.Attributes());
}
void
AliMUONPainterMasterFrame::MakeTopPainterMatrix(UInt_t w, UInt_t h, AliMUONPainterMatrix* matrix)
{
fPainterMatrixFrame = new AliMUONPainterMatrixFrame(this,w,h);
if (matrix)
{
PainterMatrixWantToShow(matrix);
}
else
{
AliError("Cannot work without a painterMatrix");
}
}
void
AliMUONPainterMasterFrame::UpdateNavigation()
{
fBackButton->SetEnabled(kTRUE);
fForwardButton->SetEnabled(kTRUE);
if ( fCurrentNavigationPosition == 0 )
{
fBackButton->SetEnabled(kFALSE);
}
if ( fCurrentNavigationPosition == fNavigation.GetSize()-1 )
{
fForwardButton->SetEnabled(kFALSE);
}
}
void
AliMUONPainterMasterFrame::AttributesChanged(const AliMUONAttPainter* newValues)
{
AliMUONPainterMatrix* currentMatrix = fPainterMatrixFrame->Matrix();
AliMUONAttPainter a = currentMatrix->Validate(*newValues);
if (!a.IsValid())
{
Int_t ret;
new TGMsgBox(gClient->GetRoot(), this,
"Invalid combination", "Change of attributes not possible for this object",
kMBIconExclamation, kMBOk, &ret);
PainterMatrixWantToShow(currentMatrix);
return;
}
TString newName = AliMUONPainterMatrix::NameIt(currentMatrix->Whatname(),currentMatrix->Basename(),a);
AliMUONPainterMatrix* matrix = AliMUONPainterRegistry::Instance()->PainterMatrix(newName.Data());
if (!matrix)
{
matrix = currentMatrix->Clone(a);
AddPainterMatrix(matrix);
}
matrix->SetData(currentMatrix->DataPattern(),
currentMatrix->Data(),
currentMatrix->DataIndex());
PainterMatrixWantToShow(matrix);
}
AliMUONPainterMasterFrame.cxx:1 AliMUONPainterMasterFrame.cxx:2 AliMUONPainterMasterFrame.cxx:3 AliMUONPainterMasterFrame.cxx:4 AliMUONPainterMasterFrame.cxx:5 AliMUONPainterMasterFrame.cxx:6 AliMUONPainterMasterFrame.cxx:7 AliMUONPainterMasterFrame.cxx:8 AliMUONPainterMasterFrame.cxx:9 AliMUONPainterMasterFrame.cxx:10 AliMUONPainterMasterFrame.cxx:11 AliMUONPainterMasterFrame.cxx:12 AliMUONPainterMasterFrame.cxx:13 AliMUONPainterMasterFrame.cxx:14 AliMUONPainterMasterFrame.cxx:15 AliMUONPainterMasterFrame.cxx:16 AliMUONPainterMasterFrame.cxx:17 AliMUONPainterMasterFrame.cxx:18 AliMUONPainterMasterFrame.cxx:19 AliMUONPainterMasterFrame.cxx:20 AliMUONPainterMasterFrame.cxx:21 AliMUONPainterMasterFrame.cxx:22 AliMUONPainterMasterFrame.cxx:23 AliMUONPainterMasterFrame.cxx:24 AliMUONPainterMasterFrame.cxx:25 AliMUONPainterMasterFrame.cxx:26 AliMUONPainterMasterFrame.cxx:27 AliMUONPainterMasterFrame.cxx:28 AliMUONPainterMasterFrame.cxx:29 AliMUONPainterMasterFrame.cxx:30 AliMUONPainterMasterFrame.cxx:31 AliMUONPainterMasterFrame.cxx:32 AliMUONPainterMasterFrame.cxx:33 AliMUONPainterMasterFrame.cxx:34 AliMUONPainterMasterFrame.cxx:35 AliMUONPainterMasterFrame.cxx:36 AliMUONPainterMasterFrame.cxx:37 AliMUONPainterMasterFrame.cxx:38 AliMUONPainterMasterFrame.cxx:39 AliMUONPainterMasterFrame.cxx:40 AliMUONPainterMasterFrame.cxx:41 AliMUONPainterMasterFrame.cxx:42 AliMUONPainterMasterFrame.cxx:43 AliMUONPainterMasterFrame.cxx:44 AliMUONPainterMasterFrame.cxx:45 AliMUONPainterMasterFrame.cxx:46 AliMUONPainterMasterFrame.cxx:47 AliMUONPainterMasterFrame.cxx:48 AliMUONPainterMasterFrame.cxx:49 AliMUONPainterMasterFrame.cxx:50 AliMUONPainterMasterFrame.cxx:51 AliMUONPainterMasterFrame.cxx:52 AliMUONPainterMasterFrame.cxx:53 AliMUONPainterMasterFrame.cxx:54 AliMUONPainterMasterFrame.cxx:55 AliMUONPainterMasterFrame.cxx:56 AliMUONPainterMasterFrame.cxx:57 AliMUONPainterMasterFrame.cxx:58 AliMUONPainterMasterFrame.cxx:59 AliMUONPainterMasterFrame.cxx:60 AliMUONPainterMasterFrame.cxx:61 AliMUONPainterMasterFrame.cxx:62 AliMUONPainterMasterFrame.cxx:63 AliMUONPainterMasterFrame.cxx:64 AliMUONPainterMasterFrame.cxx:65 AliMUONPainterMasterFrame.cxx:66 AliMUONPainterMasterFrame.cxx:67 AliMUONPainterMasterFrame.cxx:68 AliMUONPainterMasterFrame.cxx:69 AliMUONPainterMasterFrame.cxx:70 AliMUONPainterMasterFrame.cxx:71 AliMUONPainterMasterFrame.cxx:72 AliMUONPainterMasterFrame.cxx:73 AliMUONPainterMasterFrame.cxx:74 AliMUONPainterMasterFrame.cxx:75 AliMUONPainterMasterFrame.cxx:76 AliMUONPainterMasterFrame.cxx:77 AliMUONPainterMasterFrame.cxx:78 AliMUONPainterMasterFrame.cxx:79 AliMUONPainterMasterFrame.cxx:80 AliMUONPainterMasterFrame.cxx:81 AliMUONPainterMasterFrame.cxx:82 AliMUONPainterMasterFrame.cxx:83 AliMUONPainterMasterFrame.cxx:84 AliMUONPainterMasterFrame.cxx:85 AliMUONPainterMasterFrame.cxx:86 AliMUONPainterMasterFrame.cxx:87 AliMUONPainterMasterFrame.cxx:88 AliMUONPainterMasterFrame.cxx:89 AliMUONPainterMasterFrame.cxx:90 AliMUONPainterMasterFrame.cxx:91 AliMUONPainterMasterFrame.cxx:92 AliMUONPainterMasterFrame.cxx:93 AliMUONPainterMasterFrame.cxx:94 AliMUONPainterMasterFrame.cxx:95 AliMUONPainterMasterFrame.cxx:96 AliMUONPainterMasterFrame.cxx:97 AliMUONPainterMasterFrame.cxx:98 AliMUONPainterMasterFrame.cxx:99 AliMUONPainterMasterFrame.cxx:100 AliMUONPainterMasterFrame.cxx:101 AliMUONPainterMasterFrame.cxx:102 AliMUONPainterMasterFrame.cxx:103 AliMUONPainterMasterFrame.cxx:104 AliMUONPainterMasterFrame.cxx:105 AliMUONPainterMasterFrame.cxx:106 AliMUONPainterMasterFrame.cxx:107 AliMUONPainterMasterFrame.cxx:108 AliMUONPainterMasterFrame.cxx:109 AliMUONPainterMasterFrame.cxx:110 AliMUONPainterMasterFrame.cxx:111 AliMUONPainterMasterFrame.cxx:112 AliMUONPainterMasterFrame.cxx:113 AliMUONPainterMasterFrame.cxx:114 AliMUONPainterMasterFrame.cxx:115 AliMUONPainterMasterFrame.cxx:116 AliMUONPainterMasterFrame.cxx:117 AliMUONPainterMasterFrame.cxx:118 AliMUONPainterMasterFrame.cxx:119 AliMUONPainterMasterFrame.cxx:120 AliMUONPainterMasterFrame.cxx:121 AliMUONPainterMasterFrame.cxx:122 AliMUONPainterMasterFrame.cxx:123 AliMUONPainterMasterFrame.cxx:124 AliMUONPainterMasterFrame.cxx:125 AliMUONPainterMasterFrame.cxx:126 AliMUONPainterMasterFrame.cxx:127 AliMUONPainterMasterFrame.cxx:128 AliMUONPainterMasterFrame.cxx:129 AliMUONPainterMasterFrame.cxx:130 AliMUONPainterMasterFrame.cxx:131 AliMUONPainterMasterFrame.cxx:132 AliMUONPainterMasterFrame.cxx:133 AliMUONPainterMasterFrame.cxx:134 AliMUONPainterMasterFrame.cxx:135 AliMUONPainterMasterFrame.cxx:136 AliMUONPainterMasterFrame.cxx:137 AliMUONPainterMasterFrame.cxx:138 AliMUONPainterMasterFrame.cxx:139 AliMUONPainterMasterFrame.cxx:140 AliMUONPainterMasterFrame.cxx:141 AliMUONPainterMasterFrame.cxx:142 AliMUONPainterMasterFrame.cxx:143 AliMUONPainterMasterFrame.cxx:144 AliMUONPainterMasterFrame.cxx:145 AliMUONPainterMasterFrame.cxx:146 AliMUONPainterMasterFrame.cxx:147 AliMUONPainterMasterFrame.cxx:148 AliMUONPainterMasterFrame.cxx:149 AliMUONPainterMasterFrame.cxx:150 AliMUONPainterMasterFrame.cxx:151 AliMUONPainterMasterFrame.cxx:152 AliMUONPainterMasterFrame.cxx:153 AliMUONPainterMasterFrame.cxx:154 AliMUONPainterMasterFrame.cxx:155 AliMUONPainterMasterFrame.cxx:156 AliMUONPainterMasterFrame.cxx:157 AliMUONPainterMasterFrame.cxx:158 AliMUONPainterMasterFrame.cxx:159 AliMUONPainterMasterFrame.cxx:160 AliMUONPainterMasterFrame.cxx:161 AliMUONPainterMasterFrame.cxx:162 AliMUONPainterMasterFrame.cxx:163 AliMUONPainterMasterFrame.cxx:164 AliMUONPainterMasterFrame.cxx:165 AliMUONPainterMasterFrame.cxx:166 AliMUONPainterMasterFrame.cxx:167 AliMUONPainterMasterFrame.cxx:168 AliMUONPainterMasterFrame.cxx:169 AliMUONPainterMasterFrame.cxx:170 AliMUONPainterMasterFrame.cxx:171 AliMUONPainterMasterFrame.cxx:172 AliMUONPainterMasterFrame.cxx:173 AliMUONPainterMasterFrame.cxx:174 AliMUONPainterMasterFrame.cxx:175 AliMUONPainterMasterFrame.cxx:176 AliMUONPainterMasterFrame.cxx:177 AliMUONPainterMasterFrame.cxx:178 AliMUONPainterMasterFrame.cxx:179 AliMUONPainterMasterFrame.cxx:180 AliMUONPainterMasterFrame.cxx:181 AliMUONPainterMasterFrame.cxx:182 AliMUONPainterMasterFrame.cxx:183 AliMUONPainterMasterFrame.cxx:184 AliMUONPainterMasterFrame.cxx:185 AliMUONPainterMasterFrame.cxx:186 AliMUONPainterMasterFrame.cxx:187 AliMUONPainterMasterFrame.cxx:188 AliMUONPainterMasterFrame.cxx:189 AliMUONPainterMasterFrame.cxx:190 AliMUONPainterMasterFrame.cxx:191 AliMUONPainterMasterFrame.cxx:192 AliMUONPainterMasterFrame.cxx:193 AliMUONPainterMasterFrame.cxx:194 AliMUONPainterMasterFrame.cxx:195 AliMUONPainterMasterFrame.cxx:196 AliMUONPainterMasterFrame.cxx:197 AliMUONPainterMasterFrame.cxx:198 AliMUONPainterMasterFrame.cxx:199 AliMUONPainterMasterFrame.cxx:200 AliMUONPainterMasterFrame.cxx:201 AliMUONPainterMasterFrame.cxx:202 AliMUONPainterMasterFrame.cxx:203 AliMUONPainterMasterFrame.cxx:204 AliMUONPainterMasterFrame.cxx:205 AliMUONPainterMasterFrame.cxx:206 AliMUONPainterMasterFrame.cxx:207 AliMUONPainterMasterFrame.cxx:208 AliMUONPainterMasterFrame.cxx:209 AliMUONPainterMasterFrame.cxx:210 AliMUONPainterMasterFrame.cxx:211 AliMUONPainterMasterFrame.cxx:212 AliMUONPainterMasterFrame.cxx:213 AliMUONPainterMasterFrame.cxx:214 AliMUONPainterMasterFrame.cxx:215 AliMUONPainterMasterFrame.cxx:216 AliMUONPainterMasterFrame.cxx:217 AliMUONPainterMasterFrame.cxx:218 AliMUONPainterMasterFrame.cxx:219 AliMUONPainterMasterFrame.cxx:220 AliMUONPainterMasterFrame.cxx:221 AliMUONPainterMasterFrame.cxx:222 AliMUONPainterMasterFrame.cxx:223 AliMUONPainterMasterFrame.cxx:224 AliMUONPainterMasterFrame.cxx:225 AliMUONPainterMasterFrame.cxx:226 AliMUONPainterMasterFrame.cxx:227 AliMUONPainterMasterFrame.cxx:228 AliMUONPainterMasterFrame.cxx:229 AliMUONPainterMasterFrame.cxx:230 AliMUONPainterMasterFrame.cxx:231 AliMUONPainterMasterFrame.cxx:232 AliMUONPainterMasterFrame.cxx:233 AliMUONPainterMasterFrame.cxx:234 AliMUONPainterMasterFrame.cxx:235 AliMUONPainterMasterFrame.cxx:236 AliMUONPainterMasterFrame.cxx:237 AliMUONPainterMasterFrame.cxx:238 AliMUONPainterMasterFrame.cxx:239 AliMUONPainterMasterFrame.cxx:240 AliMUONPainterMasterFrame.cxx:241 AliMUONPainterMasterFrame.cxx:242 AliMUONPainterMasterFrame.cxx:243 AliMUONPainterMasterFrame.cxx:244 AliMUONPainterMasterFrame.cxx:245 AliMUONPainterMasterFrame.cxx:246 AliMUONPainterMasterFrame.cxx:247 AliMUONPainterMasterFrame.cxx:248 AliMUONPainterMasterFrame.cxx:249 AliMUONPainterMasterFrame.cxx:250 AliMUONPainterMasterFrame.cxx:251 AliMUONPainterMasterFrame.cxx:252 AliMUONPainterMasterFrame.cxx:253 AliMUONPainterMasterFrame.cxx:254 AliMUONPainterMasterFrame.cxx:255 AliMUONPainterMasterFrame.cxx:256 AliMUONPainterMasterFrame.cxx:257 AliMUONPainterMasterFrame.cxx:258 AliMUONPainterMasterFrame.cxx:259 AliMUONPainterMasterFrame.cxx:260 AliMUONPainterMasterFrame.cxx:261 AliMUONPainterMasterFrame.cxx:262 AliMUONPainterMasterFrame.cxx:263 AliMUONPainterMasterFrame.cxx:264 AliMUONPainterMasterFrame.cxx:265 AliMUONPainterMasterFrame.cxx:266 AliMUONPainterMasterFrame.cxx:267 AliMUONPainterMasterFrame.cxx:268 AliMUONPainterMasterFrame.cxx:269 AliMUONPainterMasterFrame.cxx:270 AliMUONPainterMasterFrame.cxx:271 AliMUONPainterMasterFrame.cxx:272 AliMUONPainterMasterFrame.cxx:273 AliMUONPainterMasterFrame.cxx:274 AliMUONPainterMasterFrame.cxx:275 AliMUONPainterMasterFrame.cxx:276 AliMUONPainterMasterFrame.cxx:277 AliMUONPainterMasterFrame.cxx:278 AliMUONPainterMasterFrame.cxx:279 AliMUONPainterMasterFrame.cxx:280 AliMUONPainterMasterFrame.cxx:281 AliMUONPainterMasterFrame.cxx:282 AliMUONPainterMasterFrame.cxx:283 AliMUONPainterMasterFrame.cxx:284 AliMUONPainterMasterFrame.cxx:285 AliMUONPainterMasterFrame.cxx:286 AliMUONPainterMasterFrame.cxx:287 AliMUONPainterMasterFrame.cxx:288 AliMUONPainterMasterFrame.cxx:289 AliMUONPainterMasterFrame.cxx:290 AliMUONPainterMasterFrame.cxx:291 AliMUONPainterMasterFrame.cxx:292 AliMUONPainterMasterFrame.cxx:293 AliMUONPainterMasterFrame.cxx:294 AliMUONPainterMasterFrame.cxx:295 AliMUONPainterMasterFrame.cxx:296 AliMUONPainterMasterFrame.cxx:297 AliMUONPainterMasterFrame.cxx:298 AliMUONPainterMasterFrame.cxx:299 AliMUONPainterMasterFrame.cxx:300 AliMUONPainterMasterFrame.cxx:301 AliMUONPainterMasterFrame.cxx:302 AliMUONPainterMasterFrame.cxx:303 AliMUONPainterMasterFrame.cxx:304 AliMUONPainterMasterFrame.cxx:305 AliMUONPainterMasterFrame.cxx:306 AliMUONPainterMasterFrame.cxx:307 AliMUONPainterMasterFrame.cxx:308 AliMUONPainterMasterFrame.cxx:309 AliMUONPainterMasterFrame.cxx:310 AliMUONPainterMasterFrame.cxx:311 AliMUONPainterMasterFrame.cxx:312 AliMUONPainterMasterFrame.cxx:313 AliMUONPainterMasterFrame.cxx:314 AliMUONPainterMasterFrame.cxx:315 AliMUONPainterMasterFrame.cxx:316 AliMUONPainterMasterFrame.cxx:317 AliMUONPainterMasterFrame.cxx:318 AliMUONPainterMasterFrame.cxx:319 AliMUONPainterMasterFrame.cxx:320 AliMUONPainterMasterFrame.cxx:321 AliMUONPainterMasterFrame.cxx:322 AliMUONPainterMasterFrame.cxx:323 AliMUONPainterMasterFrame.cxx:324 AliMUONPainterMasterFrame.cxx:325 AliMUONPainterMasterFrame.cxx:326 AliMUONPainterMasterFrame.cxx:327 AliMUONPainterMasterFrame.cxx:328 AliMUONPainterMasterFrame.cxx:329 AliMUONPainterMasterFrame.cxx:330 AliMUONPainterMasterFrame.cxx:331 AliMUONPainterMasterFrame.cxx:332 AliMUONPainterMasterFrame.cxx:333 AliMUONPainterMasterFrame.cxx:334 AliMUONPainterMasterFrame.cxx:335 AliMUONPainterMasterFrame.cxx:336 AliMUONPainterMasterFrame.cxx:337 AliMUONPainterMasterFrame.cxx:338 AliMUONPainterMasterFrame.cxx:339 AliMUONPainterMasterFrame.cxx:340 AliMUONPainterMasterFrame.cxx:341 AliMUONPainterMasterFrame.cxx:342 AliMUONPainterMasterFrame.cxx:343 AliMUONPainterMasterFrame.cxx:344 AliMUONPainterMasterFrame.cxx:345 AliMUONPainterMasterFrame.cxx:346 AliMUONPainterMasterFrame.cxx:347 AliMUONPainterMasterFrame.cxx:348 AliMUONPainterMasterFrame.cxx:349 AliMUONPainterMasterFrame.cxx:350 AliMUONPainterMasterFrame.cxx:351 AliMUONPainterMasterFrame.cxx:352 AliMUONPainterMasterFrame.cxx:353 AliMUONPainterMasterFrame.cxx:354 AliMUONPainterMasterFrame.cxx:355 AliMUONPainterMasterFrame.cxx:356 AliMUONPainterMasterFrame.cxx:357 AliMUONPainterMasterFrame.cxx:358 AliMUONPainterMasterFrame.cxx:359 AliMUONPainterMasterFrame.cxx:360 AliMUONPainterMasterFrame.cxx:361 AliMUONPainterMasterFrame.cxx:362 AliMUONPainterMasterFrame.cxx:363 AliMUONPainterMasterFrame.cxx:364 AliMUONPainterMasterFrame.cxx:365 AliMUONPainterMasterFrame.cxx:366 AliMUONPainterMasterFrame.cxx:367 AliMUONPainterMasterFrame.cxx:368 AliMUONPainterMasterFrame.cxx:369 AliMUONPainterMasterFrame.cxx:370 AliMUONPainterMasterFrame.cxx:371 AliMUONPainterMasterFrame.cxx:372 AliMUONPainterMasterFrame.cxx:373 AliMUONPainterMasterFrame.cxx:374 AliMUONPainterMasterFrame.cxx:375 AliMUONPainterMasterFrame.cxx:376 AliMUONPainterMasterFrame.cxx:377 AliMUONPainterMasterFrame.cxx:378 AliMUONPainterMasterFrame.cxx:379 AliMUONPainterMasterFrame.cxx:380 AliMUONPainterMasterFrame.cxx:381 AliMUONPainterMasterFrame.cxx:382 AliMUONPainterMasterFrame.cxx:383 AliMUONPainterMasterFrame.cxx:384 AliMUONPainterMasterFrame.cxx:385 AliMUONPainterMasterFrame.cxx:386 AliMUONPainterMasterFrame.cxx:387 AliMUONPainterMasterFrame.cxx:388 AliMUONPainterMasterFrame.cxx:389 AliMUONPainterMasterFrame.cxx:390 AliMUONPainterMasterFrame.cxx:391 AliMUONPainterMasterFrame.cxx:392 AliMUONPainterMasterFrame.cxx:393 AliMUONPainterMasterFrame.cxx:394 AliMUONPainterMasterFrame.cxx:395 AliMUONPainterMasterFrame.cxx:396 AliMUONPainterMasterFrame.cxx:397 AliMUONPainterMasterFrame.cxx:398 AliMUONPainterMasterFrame.cxx:399 AliMUONPainterMasterFrame.cxx:400 AliMUONPainterMasterFrame.cxx:401 AliMUONPainterMasterFrame.cxx:402 AliMUONPainterMasterFrame.cxx:403 AliMUONPainterMasterFrame.cxx:404 AliMUONPainterMasterFrame.cxx:405 AliMUONPainterMasterFrame.cxx:406 AliMUONPainterMasterFrame.cxx:407 AliMUONPainterMasterFrame.cxx:408 AliMUONPainterMasterFrame.cxx:409 AliMUONPainterMasterFrame.cxx:410 AliMUONPainterMasterFrame.cxx:411 AliMUONPainterMasterFrame.cxx:412 AliMUONPainterMasterFrame.cxx:413 AliMUONPainterMasterFrame.cxx:414 AliMUONPainterMasterFrame.cxx:415 AliMUONPainterMasterFrame.cxx:416 AliMUONPainterMasterFrame.cxx:417 AliMUONPainterMasterFrame.cxx:418 AliMUONPainterMasterFrame.cxx:419 AliMUONPainterMasterFrame.cxx:420 AliMUONPainterMasterFrame.cxx:421 AliMUONPainterMasterFrame.cxx:422 AliMUONPainterMasterFrame.cxx:423 AliMUONPainterMasterFrame.cxx:424 AliMUONPainterMasterFrame.cxx:425 AliMUONPainterMasterFrame.cxx:426 AliMUONPainterMasterFrame.cxx:427 AliMUONPainterMasterFrame.cxx:428 AliMUONPainterMasterFrame.cxx:429 AliMUONPainterMasterFrame.cxx:430 AliMUONPainterMasterFrame.cxx:431 AliMUONPainterMasterFrame.cxx:432 AliMUONPainterMasterFrame.cxx:433 AliMUONPainterMasterFrame.cxx:434 AliMUONPainterMasterFrame.cxx:435 AliMUONPainterMasterFrame.cxx:436 AliMUONPainterMasterFrame.cxx:437 AliMUONPainterMasterFrame.cxx:438 AliMUONPainterMasterFrame.cxx:439 AliMUONPainterMasterFrame.cxx:440 AliMUONPainterMasterFrame.cxx:441 AliMUONPainterMasterFrame.cxx:442 AliMUONPainterMasterFrame.cxx:443 AliMUONPainterMasterFrame.cxx:444 AliMUONPainterMasterFrame.cxx:445 AliMUONPainterMasterFrame.cxx:446 AliMUONPainterMasterFrame.cxx:447 AliMUONPainterMasterFrame.cxx:448 AliMUONPainterMasterFrame.cxx:449 AliMUONPainterMasterFrame.cxx:450 AliMUONPainterMasterFrame.cxx:451 AliMUONPainterMasterFrame.cxx:452 AliMUONPainterMasterFrame.cxx:453 AliMUONPainterMasterFrame.cxx:454 AliMUONPainterMasterFrame.cxx:455 AliMUONPainterMasterFrame.cxx:456 AliMUONPainterMasterFrame.cxx:457 AliMUONPainterMasterFrame.cxx:458 AliMUONPainterMasterFrame.cxx:459 AliMUONPainterMasterFrame.cxx:460 AliMUONPainterMasterFrame.cxx:461 AliMUONPainterMasterFrame.cxx:462 AliMUONPainterMasterFrame.cxx:463 AliMUONPainterMasterFrame.cxx:464 AliMUONPainterMasterFrame.cxx:465 AliMUONPainterMasterFrame.cxx:466 AliMUONPainterMasterFrame.cxx:467 AliMUONPainterMasterFrame.cxx:468 AliMUONPainterMasterFrame.cxx:469 AliMUONPainterMasterFrame.cxx:470 AliMUONPainterMasterFrame.cxx:471 AliMUONPainterMasterFrame.cxx:472 AliMUONPainterMasterFrame.cxx:473 AliMUONPainterMasterFrame.cxx:474 AliMUONPainterMasterFrame.cxx:475 AliMUONPainterMasterFrame.cxx:476 AliMUONPainterMasterFrame.cxx:477 AliMUONPainterMasterFrame.cxx:478 AliMUONPainterMasterFrame.cxx:479 AliMUONPainterMasterFrame.cxx:480 AliMUONPainterMasterFrame.cxx:481 AliMUONPainterMasterFrame.cxx:482 AliMUONPainterMasterFrame.cxx:483 AliMUONPainterMasterFrame.cxx:484 AliMUONPainterMasterFrame.cxx:485 AliMUONPainterMasterFrame.cxx:486 AliMUONPainterMasterFrame.cxx:487 AliMUONPainterMasterFrame.cxx:488 AliMUONPainterMasterFrame.cxx:489 AliMUONPainterMasterFrame.cxx:490 AliMUONPainterMasterFrame.cxx:491 AliMUONPainterMasterFrame.cxx:492 AliMUONPainterMasterFrame.cxx:493 AliMUONPainterMasterFrame.cxx:494 AliMUONPainterMasterFrame.cxx:495 AliMUONPainterMasterFrame.cxx:496 AliMUONPainterMasterFrame.cxx:497 AliMUONPainterMasterFrame.cxx:498 AliMUONPainterMasterFrame.cxx:499 AliMUONPainterMasterFrame.cxx:500 AliMUONPainterMasterFrame.cxx:501 AliMUONPainterMasterFrame.cxx:502 AliMUONPainterMasterFrame.cxx:503 AliMUONPainterMasterFrame.cxx:504 AliMUONPainterMasterFrame.cxx:505 AliMUONPainterMasterFrame.cxx:506 AliMUONPainterMasterFrame.cxx:507 AliMUONPainterMasterFrame.cxx:508 AliMUONPainterMasterFrame.cxx:509 AliMUONPainterMasterFrame.cxx:510 AliMUONPainterMasterFrame.cxx:511 AliMUONPainterMasterFrame.cxx:512 AliMUONPainterMasterFrame.cxx:513 AliMUONPainterMasterFrame.cxx:514 AliMUONPainterMasterFrame.cxx:515 AliMUONPainterMasterFrame.cxx:516 AliMUONPainterMasterFrame.cxx:517 AliMUONPainterMasterFrame.cxx:518 AliMUONPainterMasterFrame.cxx:519 AliMUONPainterMasterFrame.cxx:520 AliMUONPainterMasterFrame.cxx:521 AliMUONPainterMasterFrame.cxx:522 AliMUONPainterMasterFrame.cxx:523 AliMUONPainterMasterFrame.cxx:524 AliMUONPainterMasterFrame.cxx:525 AliMUONPainterMasterFrame.cxx:526 AliMUONPainterMasterFrame.cxx:527 AliMUONPainterMasterFrame.cxx:528