#include "AliMUONManuPadPainter.h"
#include "AliLog.h"
#include "AliMUONPainterGroup.h"
#include "AliMUONPainterHelper.h"
#include "AliMUONTrackerDataHistogrammer.h"
#include "AliMUONVCalibParam.h"
#include "AliMUONVDigit.h"
#include "AliMUONVTrackerData.h"
#include "AliMpConnection.h"
#include "AliMpConstants.h"
#include "AliMpDDLStore.h"
#include "AliMpPad.h"
#include "AliMpSegmentation.h"
#include "AliMpVSegmentation.h"
#include <TCanvas.h>
#include <TH1.h>
#include <TVirtualPad.h>
#include <TVirtualX.h>
#include <float.h>
ClassImp(AliMUONManuPadPainter)
AliMUONManuPadPainter::AliMUONManuPadPainter()
: AliMUONVPainter(),
fDetElemId(-1),
fManuId(-1),
fLineColorBck(-1),
fLineWidthBck(-1),
fFillColorBck(-1),
fFillStyleBck(-1)
{
}
AliMUONManuPadPainter::AliMUONManuPadPainter(TRootIOCtor* ioCtor)
: AliMUONVPainter(ioCtor),
fDetElemId(-1),
fManuId(-1),
fLineColorBck(-1),
fLineWidthBck(-1),
fFillColorBck(-1),
fFillStyleBck(-1)
{
}
AliMUONManuPadPainter::AliMUONManuPadPainter(const AliMUONVPainter& mother,
Int_t detElemId,
Int_t manuId)
: AliMUONVPainter("PAD"),
fDetElemId(detElemId),
fManuId(manuId),
fLineColorBck(-1),
fLineWidthBck(-1),
fFillColorBck(-1),
fFillStyleBck(-1)
{
SetID(detElemId,manuId);
SetName(Form("%s/PAD",mother.GetName()));
SetPathName(Form("%s/PAD",mother.PathName().Data()));
SetContour(mother.Contour());
}
AliMUONManuPadPainter::~AliMUONManuPadPainter()
{
}
void
AliMUONManuPadPainter::BackupStyle()
{
fFillStyleBck = gVirtualX->GetFillStyle();
fFillColorBck = gVirtualX->GetFillColor();
fLineColorBck = gVirtualX->GetLineColor();
fLineWidthBck = gVirtualX->GetLineWidth();
}
void
AliMUONManuPadPainter::ComputeDataRange(const AliMUONVTrackerData& data,
Int_t dataIndex,
Double_t& dataMin, Double_t& dataMax) const
{
const AliMpVSegmentation* seg = AliMpSegmentation::Instance()->GetMpSegmentationByElectronics(fDetElemId,fManuId);
dataMin = FLT_MAX;
dataMax = -FLT_MAX;
for ( Int_t manuChannel = 0; manuChannel < AliMpConstants::ManuNofChannels();
++manuChannel )
{
if ( seg->HasPadByLocation(fManuId,manuChannel) )
{
Double_t value = data.Channel(fDetElemId, fManuId, manuChannel, dataIndex);
dataMin = TMath::Min(value,dataMin);
dataMax = TMath::Max(value,dataMax);
}
}
}
char*
AliMUONManuPadPainter::GetObjectInfo(Int_t px, Int_t py) const
{
return const_cast<char*>(Form("%s:%d:%d",GetName(),px,py));
}
TString
AliMUONManuPadPainter::NameAtPosition(Double_t x, Double_t y) const
{
TString name("invalid");
AliMpPad pad = PadByPosition(x,y);
if ( pad.IsValid() )
{
name = Form("%s%d",PathName().Data(),pad.GetManuChannel());
}
return name;
}
Bool_t
AliMUONManuPadPainter::IsIncluded() const
{
return ( InteractiveReadOutConfig()->Manu(fDetElemId,fManuId) > 0 );
}
TString
AliMUONManuPadPainter::Describe(const AliMUONVTrackerData& data, Int_t dataIndex,
Double_t x, Double_t y)
{
if ( ! data.HasManu(fDetElemId,fManuId) ) return "";
AliMpPad pad = PadByPosition(x,y);
if ( pad.IsValid() )
{
Double_t value = data.Channel(fDetElemId,fManuId,pad.GetManuChannel(),dataIndex);
return AliMUONPainterHelper::Instance()->FormatValue(data.DimensionName(dataIndex).Data(),value);
}
else
{
return "invalid";
}
}
void
AliMUONManuPadPainter::DrawHistogramClone(Double_t* values) const
{
if ( !values ) return;
AliMUONPainterGroup* group = Master()->PlotterGroup();
if ( !group ) return;
AliMpPad pad = PadByPosition(values[0],values[1]);
AliMUONVTrackerData* data = group->Data();
AliMUONTrackerDataHistogrammer tdh(*data,0,-1);
fHistogram = tdh.CreateChannelHisto(fDetElemId, fManuId,pad.GetManuChannel());
if (fHistogram)
{
new TCanvas();
fHistogram->Draw();
}
}
void
AliMUONManuPadPainter::PaintArea(const AliMUONVTrackerData& data,
Int_t dataIndex,
Double_t min,
Double_t max)
{
if ( !gPad ) return;
if ( ! data.HasManu(fDetElemId,fManuId) ) return;
AliMUONPainterHelper* h = AliMUONPainterHelper::Instance();
BackupStyle();
gVirtualX->SetLineColor(-1);
gVirtualX->SetFillStyle(1001);
const AliMpVSegmentation* seg = AliMpSegmentation::Instance()->GetMpSegmentationByElectronics(fDetElemId,fManuId);
for ( Int_t i = 0; i < AliMpConstants::ManuNofChannels(); ++i )
{
AliMpPad pad = seg->PadByLocation(fManuId,i,kFALSE);
if ( pad.IsValid() )
{
Double_t value = data.Channel(fDetElemId,fManuId,i,dataIndex);
if ( value >= AliMUONVCalibParam::InvalidFloatValue() ) continue;
Int_t color = h->ColorFromValue(value,min,max);
if ( value > 0 )
{
AliDebug(1,Form("DE %d manuId %d channel %d value %e min %e max %e color %d",
fDetElemId,fManuId,i,value,min,max,
color));
}
gVirtualX->SetFillColor(color);
PaintPad(pad);
}
}
RestoreStyle();
}
void
AliMUONManuPadPainter::PaintPad(const AliMpPad& pad) const
{
Double_t blx = pad.GetPositionX()-pad.GetDimensionX();
Double_t bly = pad.GetPositionY()-pad.GetDimensionY();
Double_t urx = pad.GetPositionX()+pad.GetDimensionX();
Double_t ury = pad.GetPositionY()+pad.GetDimensionY();
Double_t xe1,ye1,xe2,ye2,z;
AliMUONPainterHelper::Instance()->Local2Global(fDetElemId,blx,bly,0,xe1,ye1,z);
AliMUONPainterHelper::Instance()->Local2Global(fDetElemId,urx,ury,0,xe2,ye2,z);
gPad->PaintBox(xe1,ye1,xe2,ye2);
}
void
AliMUONManuPadPainter::PaintOutline(Int_t color, Int_t, Double_t x, Double_t y)
{
if ( !gPad ) return;
Int_t lineColor = color >= 0 ? color : GetLineColor();
if ( lineColor > 0 )
{
BackupStyle();
gVirtualX->SetLineColor(lineColor);
gVirtualX->SetFillStyle(0);
if ( x < FLT_MAX && y < FLT_MAX )
{
AliMpPad pad = PadByPosition(x,y);
PaintPad(pad);
}
else
{
const AliMpVSegmentation* seg = AliMpSegmentation::Instance()->GetMpSegmentationByElectronics(fDetElemId,fManuId);
for ( Int_t i = 0; i < AliMpConstants::ManuNofChannels(); ++i )
{
AliMpPad pad = seg->PadByLocation(fManuId,i,kFALSE);
if (pad.IsValid()) PaintPad(pad);
PaintPad(pad);
}
}
RestoreStyle();
}
}
AliMpPad
AliMUONManuPadPainter::PadByPosition(Double_t x, Double_t y) const
{
const AliMpVSegmentation* seg = AliMpSegmentation::Instance()->GetMpSegmentationByElectronics(fDetElemId,fManuId);
Double_t xg,yg,zg;
Double_t xl,yl,zl;
AliMUONPainterHelper::Instance()->Local2Global(fDetElemId,0.0,0.0,0.0,xg,yg,zg);
AliMUONPainterHelper::Instance()->Global2Local(fDetElemId,x,y,zg,xl,yl,zl);
return seg->PadByPosition(xl,yl);
}
void
AliMUONManuPadPainter::RestoreStyle()
{
gVirtualX->SetFillStyle(fFillStyleBck);
gVirtualX->SetFillColor(fFillColorBck);
gVirtualX->SetLineColor(fLineColorBck);
gVirtualX->SetLineWidth(fLineWidthBck);
}
AliMUONManuPadPainter.cxx:1 AliMUONManuPadPainter.cxx:2 AliMUONManuPadPainter.cxx:3 AliMUONManuPadPainter.cxx:4 AliMUONManuPadPainter.cxx:5 AliMUONManuPadPainter.cxx:6 AliMUONManuPadPainter.cxx:7 AliMUONManuPadPainter.cxx:8 AliMUONManuPadPainter.cxx:9 AliMUONManuPadPainter.cxx:10 AliMUONManuPadPainter.cxx:11 AliMUONManuPadPainter.cxx:12 AliMUONManuPadPainter.cxx:13 AliMUONManuPadPainter.cxx:14 AliMUONManuPadPainter.cxx:15 AliMUONManuPadPainter.cxx:16 AliMUONManuPadPainter.cxx:17 AliMUONManuPadPainter.cxx:18 AliMUONManuPadPainter.cxx:19 AliMUONManuPadPainter.cxx:20 AliMUONManuPadPainter.cxx:21 AliMUONManuPadPainter.cxx:22 AliMUONManuPadPainter.cxx:23 AliMUONManuPadPainter.cxx:24 AliMUONManuPadPainter.cxx:25 AliMUONManuPadPainter.cxx:26 AliMUONManuPadPainter.cxx:27 AliMUONManuPadPainter.cxx:28 AliMUONManuPadPainter.cxx:29 AliMUONManuPadPainter.cxx:30 AliMUONManuPadPainter.cxx:31 AliMUONManuPadPainter.cxx:32 AliMUONManuPadPainter.cxx:33 AliMUONManuPadPainter.cxx:34 AliMUONManuPadPainter.cxx:35 AliMUONManuPadPainter.cxx:36 AliMUONManuPadPainter.cxx:37 AliMUONManuPadPainter.cxx:38 AliMUONManuPadPainter.cxx:39 AliMUONManuPadPainter.cxx:40 AliMUONManuPadPainter.cxx:41 AliMUONManuPadPainter.cxx:42 AliMUONManuPadPainter.cxx:43 AliMUONManuPadPainter.cxx:44 AliMUONManuPadPainter.cxx:45 AliMUONManuPadPainter.cxx:46 AliMUONManuPadPainter.cxx:47 AliMUONManuPadPainter.cxx:48 AliMUONManuPadPainter.cxx:49 AliMUONManuPadPainter.cxx:50 AliMUONManuPadPainter.cxx:51 AliMUONManuPadPainter.cxx:52 AliMUONManuPadPainter.cxx:53 AliMUONManuPadPainter.cxx:54 AliMUONManuPadPainter.cxx:55 AliMUONManuPadPainter.cxx:56 AliMUONManuPadPainter.cxx:57 AliMUONManuPadPainter.cxx:58 AliMUONManuPadPainter.cxx:59 AliMUONManuPadPainter.cxx:60 AliMUONManuPadPainter.cxx:61 AliMUONManuPadPainter.cxx:62 AliMUONManuPadPainter.cxx:63 AliMUONManuPadPainter.cxx:64 AliMUONManuPadPainter.cxx:65 AliMUONManuPadPainter.cxx:66 AliMUONManuPadPainter.cxx:67 AliMUONManuPadPainter.cxx:68 AliMUONManuPadPainter.cxx:69 AliMUONManuPadPainter.cxx:70 AliMUONManuPadPainter.cxx:71 AliMUONManuPadPainter.cxx:72 AliMUONManuPadPainter.cxx:73 AliMUONManuPadPainter.cxx:74 AliMUONManuPadPainter.cxx:75 AliMUONManuPadPainter.cxx:76 AliMUONManuPadPainter.cxx:77 AliMUONManuPadPainter.cxx:78 AliMUONManuPadPainter.cxx:79 AliMUONManuPadPainter.cxx:80 AliMUONManuPadPainter.cxx:81 AliMUONManuPadPainter.cxx:82 AliMUONManuPadPainter.cxx:83 AliMUONManuPadPainter.cxx:84 AliMUONManuPadPainter.cxx:85 AliMUONManuPadPainter.cxx:86 AliMUONManuPadPainter.cxx:87 AliMUONManuPadPainter.cxx:88 AliMUONManuPadPainter.cxx:89 AliMUONManuPadPainter.cxx:90 AliMUONManuPadPainter.cxx:91 AliMUONManuPadPainter.cxx:92 AliMUONManuPadPainter.cxx:93 AliMUONManuPadPainter.cxx:94 AliMUONManuPadPainter.cxx:95 AliMUONManuPadPainter.cxx:96 AliMUONManuPadPainter.cxx:97 AliMUONManuPadPainter.cxx:98 AliMUONManuPadPainter.cxx:99 AliMUONManuPadPainter.cxx:100 AliMUONManuPadPainter.cxx:101 AliMUONManuPadPainter.cxx:102 AliMUONManuPadPainter.cxx:103 AliMUONManuPadPainter.cxx:104 AliMUONManuPadPainter.cxx:105 AliMUONManuPadPainter.cxx:106 AliMUONManuPadPainter.cxx:107 AliMUONManuPadPainter.cxx:108 AliMUONManuPadPainter.cxx:109 AliMUONManuPadPainter.cxx:110 AliMUONManuPadPainter.cxx:111 AliMUONManuPadPainter.cxx:112 AliMUONManuPadPainter.cxx:113 AliMUONManuPadPainter.cxx:114 AliMUONManuPadPainter.cxx:115 AliMUONManuPadPainter.cxx:116 AliMUONManuPadPainter.cxx:117 AliMUONManuPadPainter.cxx:118 AliMUONManuPadPainter.cxx:119 AliMUONManuPadPainter.cxx:120 AliMUONManuPadPainter.cxx:121 AliMUONManuPadPainter.cxx:122 AliMUONManuPadPainter.cxx:123 AliMUONManuPadPainter.cxx:124 AliMUONManuPadPainter.cxx:125 AliMUONManuPadPainter.cxx:126 AliMUONManuPadPainter.cxx:127 AliMUONManuPadPainter.cxx:128 AliMUONManuPadPainter.cxx:129 AliMUONManuPadPainter.cxx:130 AliMUONManuPadPainter.cxx:131 AliMUONManuPadPainter.cxx:132 AliMUONManuPadPainter.cxx:133 AliMUONManuPadPainter.cxx:134 AliMUONManuPadPainter.cxx:135 AliMUONManuPadPainter.cxx:136 AliMUONManuPadPainter.cxx:137 AliMUONManuPadPainter.cxx:138 AliMUONManuPadPainter.cxx:139 AliMUONManuPadPainter.cxx:140 AliMUONManuPadPainter.cxx:141 AliMUONManuPadPainter.cxx:142 AliMUONManuPadPainter.cxx:143 AliMUONManuPadPainter.cxx:144 AliMUONManuPadPainter.cxx:145 AliMUONManuPadPainter.cxx:146 AliMUONManuPadPainter.cxx:147 AliMUONManuPadPainter.cxx:148 AliMUONManuPadPainter.cxx:149 AliMUONManuPadPainter.cxx:150 AliMUONManuPadPainter.cxx:151 AliMUONManuPadPainter.cxx:152 AliMUONManuPadPainter.cxx:153 AliMUONManuPadPainter.cxx:154 AliMUONManuPadPainter.cxx:155 AliMUONManuPadPainter.cxx:156 AliMUONManuPadPainter.cxx:157 AliMUONManuPadPainter.cxx:158 AliMUONManuPadPainter.cxx:159 AliMUONManuPadPainter.cxx:160 AliMUONManuPadPainter.cxx:161 AliMUONManuPadPainter.cxx:162 AliMUONManuPadPainter.cxx:163 AliMUONManuPadPainter.cxx:164 AliMUONManuPadPainter.cxx:165 AliMUONManuPadPainter.cxx:166 AliMUONManuPadPainter.cxx:167 AliMUONManuPadPainter.cxx:168 AliMUONManuPadPainter.cxx:169 AliMUONManuPadPainter.cxx:170 AliMUONManuPadPainter.cxx:171 AliMUONManuPadPainter.cxx:172 AliMUONManuPadPainter.cxx:173 AliMUONManuPadPainter.cxx:174 AliMUONManuPadPainter.cxx:175 AliMUONManuPadPainter.cxx:176 AliMUONManuPadPainter.cxx:177 AliMUONManuPadPainter.cxx:178 AliMUONManuPadPainter.cxx:179 AliMUONManuPadPainter.cxx:180 AliMUONManuPadPainter.cxx:181 AliMUONManuPadPainter.cxx:182 AliMUONManuPadPainter.cxx:183 AliMUONManuPadPainter.cxx:184 AliMUONManuPadPainter.cxx:185 AliMUONManuPadPainter.cxx:186 AliMUONManuPadPainter.cxx:187 AliMUONManuPadPainter.cxx:188 AliMUONManuPadPainter.cxx:189 AliMUONManuPadPainter.cxx:190 AliMUONManuPadPainter.cxx:191 AliMUONManuPadPainter.cxx:192 AliMUONManuPadPainter.cxx:193 AliMUONManuPadPainter.cxx:194 AliMUONManuPadPainter.cxx:195 AliMUONManuPadPainter.cxx:196 AliMUONManuPadPainter.cxx:197 AliMUONManuPadPainter.cxx:198 AliMUONManuPadPainter.cxx:199 AliMUONManuPadPainter.cxx:200 AliMUONManuPadPainter.cxx:201 AliMUONManuPadPainter.cxx:202 AliMUONManuPadPainter.cxx:203 AliMUONManuPadPainter.cxx:204 AliMUONManuPadPainter.cxx:205 AliMUONManuPadPainter.cxx:206 AliMUONManuPadPainter.cxx:207 AliMUONManuPadPainter.cxx:208 AliMUONManuPadPainter.cxx:209 AliMUONManuPadPainter.cxx:210 AliMUONManuPadPainter.cxx:211 AliMUONManuPadPainter.cxx:212 AliMUONManuPadPainter.cxx:213 AliMUONManuPadPainter.cxx:214 AliMUONManuPadPainter.cxx:215 AliMUONManuPadPainter.cxx:216 AliMUONManuPadPainter.cxx:217 AliMUONManuPadPainter.cxx:218 AliMUONManuPadPainter.cxx:219 AliMUONManuPadPainter.cxx:220 AliMUONManuPadPainter.cxx:221 AliMUONManuPadPainter.cxx:222 AliMUONManuPadPainter.cxx:223 AliMUONManuPadPainter.cxx:224 AliMUONManuPadPainter.cxx:225 AliMUONManuPadPainter.cxx:226 AliMUONManuPadPainter.cxx:227 AliMUONManuPadPainter.cxx:228 AliMUONManuPadPainter.cxx:229 AliMUONManuPadPainter.cxx:230 AliMUONManuPadPainter.cxx:231 AliMUONManuPadPainter.cxx:232 AliMUONManuPadPainter.cxx:233 AliMUONManuPadPainter.cxx:234 AliMUONManuPadPainter.cxx:235 AliMUONManuPadPainter.cxx:236 AliMUONManuPadPainter.cxx:237 AliMUONManuPadPainter.cxx:238 AliMUONManuPadPainter.cxx:239 AliMUONManuPadPainter.cxx:240 AliMUONManuPadPainter.cxx:241 AliMUONManuPadPainter.cxx:242 AliMUONManuPadPainter.cxx:243 AliMUONManuPadPainter.cxx:244 AliMUONManuPadPainter.cxx:245 AliMUONManuPadPainter.cxx:246 AliMUONManuPadPainter.cxx:247 AliMUONManuPadPainter.cxx:248 AliMUONManuPadPainter.cxx:249 AliMUONManuPadPainter.cxx:250 AliMUONManuPadPainter.cxx:251 AliMUONManuPadPainter.cxx:252 AliMUONManuPadPainter.cxx:253 AliMUONManuPadPainter.cxx:254 AliMUONManuPadPainter.cxx:255 AliMUONManuPadPainter.cxx:256 AliMUONManuPadPainter.cxx:257 AliMUONManuPadPainter.cxx:258 AliMUONManuPadPainter.cxx:259 AliMUONManuPadPainter.cxx:260 AliMUONManuPadPainter.cxx:261 AliMUONManuPadPainter.cxx:262 AliMUONManuPadPainter.cxx:263 AliMUONManuPadPainter.cxx:264 AliMUONManuPadPainter.cxx:265 AliMUONManuPadPainter.cxx:266 AliMUONManuPadPainter.cxx:267 AliMUONManuPadPainter.cxx:268 AliMUONManuPadPainter.cxx:269 AliMUONManuPadPainter.cxx:270 AliMUONManuPadPainter.cxx:271 AliMUONManuPadPainter.cxx:272 AliMUONManuPadPainter.cxx:273 AliMUONManuPadPainter.cxx:274 AliMUONManuPadPainter.cxx:275 AliMUONManuPadPainter.cxx:276 AliMUONManuPadPainter.cxx:277 AliMUONManuPadPainter.cxx:278 AliMUONManuPadPainter.cxx:279 AliMUONManuPadPainter.cxx:280 AliMUONManuPadPainter.cxx:281 AliMUONManuPadPainter.cxx:282 AliMUONManuPadPainter.cxx:283 AliMUONManuPadPainter.cxx:284 AliMUONManuPadPainter.cxx:285 AliMUONManuPadPainter.cxx:286 AliMUONManuPadPainter.cxx:287 AliMUONManuPadPainter.cxx:288 AliMUONManuPadPainter.cxx:289 AliMUONManuPadPainter.cxx:290 AliMUONManuPadPainter.cxx:291 AliMUONManuPadPainter.cxx:292 AliMUONManuPadPainter.cxx:293 AliMUONManuPadPainter.cxx:294 AliMUONManuPadPainter.cxx:295 AliMUONManuPadPainter.cxx:296 AliMUONManuPadPainter.cxx:297 AliMUONManuPadPainter.cxx:298 AliMUONManuPadPainter.cxx:299 AliMUONManuPadPainter.cxx:300 AliMUONManuPadPainter.cxx:301 AliMUONManuPadPainter.cxx:302 AliMUONManuPadPainter.cxx:303 AliMUONManuPadPainter.cxx:304 AliMUONManuPadPainter.cxx:305 AliMUONManuPadPainter.cxx:306 AliMUONManuPadPainter.cxx:307 AliMUONManuPadPainter.cxx:308 AliMUONManuPadPainter.cxx:309 AliMUONManuPadPainter.cxx:310 AliMUONManuPadPainter.cxx:311 AliMUONManuPadPainter.cxx:312 AliMUONManuPadPainter.cxx:313 AliMUONManuPadPainter.cxx:314 AliMUONManuPadPainter.cxx:315 AliMUONManuPadPainter.cxx:316 AliMUONManuPadPainter.cxx:317 AliMUONManuPadPainter.cxx:318 AliMUONManuPadPainter.cxx:319 AliMUONManuPadPainter.cxx:320 AliMUONManuPadPainter.cxx:321 AliMUONManuPadPainter.cxx:322 AliMUONManuPadPainter.cxx:323 AliMUONManuPadPainter.cxx:324 AliMUONManuPadPainter.cxx:325 AliMUONManuPadPainter.cxx:326 AliMUONManuPadPainter.cxx:327 AliMUONManuPadPainter.cxx:328 AliMUONManuPadPainter.cxx:329 AliMUONManuPadPainter.cxx:330 AliMUONManuPadPainter.cxx:331 AliMUONManuPadPainter.cxx:332 AliMUONManuPadPainter.cxx:333 AliMUONManuPadPainter.cxx:334 AliMUONManuPadPainter.cxx:335 AliMUONManuPadPainter.cxx:336 AliMUONManuPadPainter.cxx:337 AliMUONManuPadPainter.cxx:338 AliMUONManuPadPainter.cxx:339 AliMUONManuPadPainter.cxx:340 AliMUONManuPadPainter.cxx:341 AliMUONManuPadPainter.cxx:342 AliMUONManuPadPainter.cxx:343 AliMUONManuPadPainter.cxx:344 AliMUONManuPadPainter.cxx:345 AliMUONManuPadPainter.cxx:346 AliMUONManuPadPainter.cxx:347 AliMUONManuPadPainter.cxx:348 AliMUONManuPadPainter.cxx:349 AliMUONManuPadPainter.cxx:350 AliMUONManuPadPainter.cxx:351 AliMUONManuPadPainter.cxx:352 AliMUONManuPadPainter.cxx:353 AliMUONManuPadPainter.cxx:354 AliMUONManuPadPainter.cxx:355 AliMUONManuPadPainter.cxx:356 AliMUONManuPadPainter.cxx:357 AliMUONManuPadPainter.cxx:358 AliMUONManuPadPainter.cxx:359 AliMUONManuPadPainter.cxx:360 AliMUONManuPadPainter.cxx:361