#include <iostream>
#include <vector>
#include <TString.h>
#include <TEveFrameBox.h>
#include <TEveQuadSet.h>
#include <TEvePointSet.h>
#include <TEveRGBAPalette.h>
#include "AliEveEMCALSModule.h"
class Riostream;
class TEveTrans;
class TEveElement;
class TClonesArray;
class TStyle;
class TBuffer3DTypes;
class TBuffer3D;
class TVirtualPad;
class TVirtualViewer3D;
class AliEveEMCALData;
class AliEMCALHit;
class AliEMCALDigit;
class AliEveEMCALSModuleData;
ClassImp(AliEveEMCALSModule)
Bool_t AliEveEMCALSModule::fgStaticInit = kFALSE;
Float_t AliEveEMCALSModule::fgSMBigBBox[3];
Float_t AliEveEMCALSModule::fgSMSmallBBox[3];
TEveFrameBox* AliEveEMCALSModule::fgFrameBigBox = 0;
TEveFrameBox* AliEveEMCALSModule::fgFrameSmallBox = 0;
TEveRGBAPalette* AliEveEMCALSModule::fgFrameDigPalette = 0;
TEveRGBAPalette* AliEveEMCALSModule::fgFrameCluPalette = 0;
AliEveEMCALSModule::AliEveEMCALSModule(Int_t smid, const Text_t* n, const Text_t* t) :
TEveElement(fFrameColor),
TNamed(n,t),
TAtt3D(),
fEMCALData(0),
fEMCALSModuleData(0),
fFrameColor((Color_t)10),
fSModuleID(smid),
fQuadSet(new TEveQuadSet(n,t)),
fQuadSet2(new TEveQuadSet(n,t)),
fPointSet(new TEvePointSet(n)),
fClusterSize(5),
fHitSize(5),
fDebug(0)
{
Char_t name[256];
if (smid < 10) {
snprintf(name,256,"Full Super Module %02d",smid);
} else {
snprintf(name,256,"Half Super Module %02d",smid);
}
SetName(name);
fPointSet->IncDenyDestroy();
AddElement(fPointSet);
fQuadSet->IncDenyDestroy();
AddElement(fQuadSet);
fQuadSet2->IncDenyDestroy();
AddElement(fQuadSet2);
}
AliEveEMCALSModule::AliEveEMCALSModule(const AliEveEMCALSModule &esm) :
TEveElement(fFrameColor),
TNamed(),
TAtt3D(),
fEMCALData(esm.fEMCALData),
fEMCALSModuleData(esm.fEMCALSModuleData),
fFrameColor(esm.fFrameColor),
fSModuleID(esm.fSModuleID),
fQuadSet(esm.fQuadSet),
fQuadSet2(esm.fQuadSet2),
fPointSet(esm.fPointSet),
fClusterSize(esm.fClusterSize),
fHitSize(esm.fHitSize),
fDebug(esm.fDebug)
{
Char_t name[256];
if (fSModuleID < 10) {
snprintf(name,256,"Full Super Module %02d",fSModuleID);
} else {
snprintf(name,256,"Half Super Module %02d",fSModuleID);
}
SetName(name);
fPointSet->IncDenyDestroy();
AddElement(fPointSet);
fQuadSet->IncDenyDestroy();
AddElement(fQuadSet);
fQuadSet2->IncDenyDestroy();
AddElement(fQuadSet2);
}
AliEveEMCALSModule::~AliEveEMCALSModule()
{
fPointSet->DecDenyDestroy();
fQuadSet->DecDenyDestroy();
fQuadSet2->DecDenyDestroy();
if(fEMCALData) fEMCALData->DecRefCount();
}
void AliEveEMCALSModule::DropData() const
{
return;
}
void AliEveEMCALSModule::InitStatics(AliEveEMCALSModuleData* md)
{
if (fgStaticInit) return;
fgStaticInit = kTRUE;
md->GetSModuleBigBox(fgSMBigBBox[0],fgSMBigBBox[1], fgSMBigBBox[2]);
md->GetSModuleSmallBox(fgSMSmallBBox[0],fgSMSmallBBox[1], fgSMSmallBBox[2]);
fgFrameBigBox = new TEveFrameBox();
fgFrameBigBox->SetAABoxCenterHalfSize(0, 0, 0, fgSMBigBBox[0], fgSMBigBBox[1], fgSMBigBBox[2]);
fgFrameBigBox->SetFrameColor((Color_t)10);
fgFrameBigBox->IncRefCount();
fgFrameDigPalette = new TEveRGBAPalette(0,512);
fgFrameDigPalette->SetLimits(0, 1024);
fgFrameDigPalette->IncRefCount();
fgFrameSmallBox = new TEveFrameBox();
fgFrameSmallBox->SetAABoxCenterHalfSize(0, 0, 0, fgSMSmallBBox[0], fgSMSmallBBox[1], fgSMSmallBBox[2]);
fgFrameSmallBox->SetFrameColor((Color_t)10);
fgFrameSmallBox->IncRefCount();
fgFrameCluPalette = new TEveRGBAPalette(0,512);
fgFrameCluPalette->SetLimits(0, 1024);
fgFrameCluPalette->IncRefCount();
}
void AliEveEMCALSModule::SetClusterSize(Int_t size)
{
fClusterSize = TMath::Max(1, size);
}
void AliEveEMCALSModule::SetHitSize(Int_t size)
{
fHitSize = TMath::Max(1, size);
}
void AliEveEMCALSModule::SetDataSource(AliEveEMCALData* const data)
{
if (data == fEMCALData) return;
if(fEMCALData) fEMCALData->DecRefCount();
fEMCALData = data;
if(fEMCALData) fEMCALData->IncRefCount();
fEMCALSModuleData = GetSModuleData();
}
AliEveEMCALSModuleData* AliEveEMCALSModule::GetSModuleData() const
{
return fEMCALData ? fEMCALData->GetSModuleData(fSModuleID) : 0;
}
void AliEveEMCALSModule::UpdateQuads()
{
std::vector< std::vector<Double_t> > bufferDigit;
std::vector< std::vector<Double_t> > bufferCluster;
std::vector< std::vector<Float_t> > bufferHit;
Int_t nDigits, nClusters, nHits, oldSize;
Float_t hitX, hitY, hitZ;
Int_t smId = fEMCALSModuleData->GetSmId();
fPointSet->Reset();
if (!fgStaticInit)
InitStatics(fEMCALSModuleData);
fQuadSet->SetOwnIds(kTRUE);
fQuadSet->Reset(TEveQuadSet::kQT_RectangleYZFixedDimX, kFALSE, 32);
fQuadSet->SetDefWidth (fEMCALSModuleData->GetPhiTileSize());
fQuadSet->SetDefHeight(fEMCALSModuleData->GetEtaTileSize());
fQuadSet->RefMainTrans().SetFrom(*fEMCALSModuleData->GetSModuleMatrix());
fQuadSet->SetPalette(fgFrameDigPalette);
if(smId<fEMCALSModuleData->GetNsmf())
fQuadSet->SetFrame(fgFrameBigBox);
else fQuadSet->SetFrame(fgFrameSmallBox);
bufferDigit = fEMCALSModuleData->GetDigitBuffer();
if(!bufferDigit.empty())
{
nDigits = fEMCALSModuleData->GetNDigits();
if(fDebug>1) Info("AliEveEMCALSModule::UpdateQuads", "nDigits: %d", nDigits );
for (Int_t id = 0; id < nDigits; id++) {
Double_t iamp = bufferDigit[id][2];
Int_t amp = (Int_t)(iamp+0.5);
Double_t iy = bufferDigit[id][4];
Double_t iz = bufferDigit[id][5];
fQuadSet->AddQuad(iy, iz);
fQuadSet->QuadValue(amp);
}
}
else { if (fDebug) Info("AliEveEMCALSModule::UpdateQuads", "There is no digits in SM %d \n", smId); }
bufferHit = fEMCALSModuleData->GetHitBuffer();
if(!bufferHit.empty())
{
char form[1000];
nHits = fEMCALSModuleData->GetNHits();
if(fDebug>1) Info("AliEveEMCALSModule::UpdateQuads", "nHits: %d", nHits);
oldSize = fPointSet->GrowFor(nHits);
for (Int_t ih = 0; ih < nHits; ih++) {
hitX = bufferHit[ih][3];
hitY = bufferHit[ih][4];
hitZ = bufferHit[ih][5];
fPointSet->SetPoint(ih,hitX,hitY,hitZ);
snprintf(form,1000,"N=%d", fPointSet->Size());
fPointSet->SetTitle(form);
fPointSet->SetMarkerSize(.5);
fPointSet->SetMarkerColor((Color_t)2);
}
}
else { if (fDebug) printf("There is no hits in SM %d \n", smId); }
fQuadSet2->SetOwnIds(kTRUE);
fQuadSet2->Reset(TEveQuadSet::kQT_RectangleYZFixedDimX, kFALSE, 32);
fQuadSet2->SetDefWidth (fEMCALSModuleData->GetPhiTileSize());
fQuadSet2->SetDefHeight(fEMCALSModuleData->GetEtaTileSize());
fQuadSet2->RefMainTrans().SetFrom(*fEMCALSModuleData->GetSModuleMatrix());
fQuadSet2->SetPalette(fgFrameCluPalette);
if(smId<fEMCALSModuleData->GetNsmf())
fQuadSet2->SetFrame(fgFrameBigBox);
else fQuadSet2->SetFrame(fgFrameSmallBox);
bufferCluster = fEMCALSModuleData->GetClusterBuffer();
if(!bufferCluster.empty())
{
nClusters = fEMCALSModuleData->GetNClusters();
if(fDebug>1) Info("AliEveEMCALSModule::UpdateQuads", "nClusters: %d", nClusters );
for (Int_t id = 0; id < nClusters; id++) {
if(fDebug>1) {
Info("AliEveEMCALSModule::UpdateQuads", "bufferCluster[%d][0]: %f", id, bufferCluster[id][0] );
Info("AliEveEMCALSModule::UpdateQuads", "bufferCluster[%d][1]: %f", id, bufferCluster[id][1] );
Info("AliEveEMCALSModule::UpdateQuads", "bufferCluster[%d][2]: %f", id, bufferCluster[id][2] );
Info("AliEveEMCALSModule::UpdateQuads", "bufferCluster[%d][3]: %f", id, bufferCluster[id][3] );
Info("AliEveEMCALSModule::UpdateQuads", "bufferCluster[%d][4]: %f", id, bufferCluster[id][4] );
}
Double_t iamp = bufferCluster[id][1];
Int_t amp = (Int_t)(iamp+0.5);
Double_t iy = bufferCluster[id][3];
Double_t iz = bufferCluster[id][4];
fQuadSet2->AddQuad(iy, iz);
fQuadSet2->QuadValue(amp);
}
}
else { if (fDebug) Info("AliEveEMCALSModule::UpdateQuads", "There is no clusters in SM %d \n", smId); }
}
void AliEveEMCALSModule::SetSModuleID(Int_t id)
{
if (id < 0) id = 0;
if (id > 12) id = 12;
fSModuleID = id;
}
AliEveEMCALSModule.cxx:10 AliEveEMCALSModule.cxx:11 AliEveEMCALSModule.cxx:12 AliEveEMCALSModule.cxx:13 AliEveEMCALSModule.cxx:14 AliEveEMCALSModule.cxx:15 AliEveEMCALSModule.cxx:16 AliEveEMCALSModule.cxx:17 AliEveEMCALSModule.cxx:18 AliEveEMCALSModule.cxx:19 AliEveEMCALSModule.cxx:20 AliEveEMCALSModule.cxx:21 AliEveEMCALSModule.cxx:22 AliEveEMCALSModule.cxx:23 AliEveEMCALSModule.cxx:24 AliEveEMCALSModule.cxx:25 AliEveEMCALSModule.cxx:26 AliEveEMCALSModule.cxx:27 AliEveEMCALSModule.cxx:28 AliEveEMCALSModule.cxx:29 AliEveEMCALSModule.cxx:30 AliEveEMCALSModule.cxx:31 AliEveEMCALSModule.cxx:32 AliEveEMCALSModule.cxx:33 AliEveEMCALSModule.cxx:34 AliEveEMCALSModule.cxx:35 AliEveEMCALSModule.cxx:36 AliEveEMCALSModule.cxx:37 AliEveEMCALSModule.cxx:38 AliEveEMCALSModule.cxx:39 AliEveEMCALSModule.cxx:40 AliEveEMCALSModule.cxx:41 AliEveEMCALSModule.cxx:42 AliEveEMCALSModule.cxx:43 AliEveEMCALSModule.cxx:44 AliEveEMCALSModule.cxx:45 AliEveEMCALSModule.cxx:46 AliEveEMCALSModule.cxx:47 AliEveEMCALSModule.cxx:48 AliEveEMCALSModule.cxx:49 AliEveEMCALSModule.cxx:50 AliEveEMCALSModule.cxx:51 AliEveEMCALSModule.cxx:52 AliEveEMCALSModule.cxx:53 AliEveEMCALSModule.cxx:54 AliEveEMCALSModule.cxx:55 AliEveEMCALSModule.cxx:56 AliEveEMCALSModule.cxx:57 AliEveEMCALSModule.cxx:58 AliEveEMCALSModule.cxx:59 AliEveEMCALSModule.cxx:60 AliEveEMCALSModule.cxx:61 AliEveEMCALSModule.cxx:62 AliEveEMCALSModule.cxx:63 AliEveEMCALSModule.cxx:64 AliEveEMCALSModule.cxx:65 AliEveEMCALSModule.cxx:66 AliEveEMCALSModule.cxx:67 AliEveEMCALSModule.cxx:68 AliEveEMCALSModule.cxx:69 AliEveEMCALSModule.cxx:70 AliEveEMCALSModule.cxx:71 AliEveEMCALSModule.cxx:72 AliEveEMCALSModule.cxx:73 AliEveEMCALSModule.cxx:74 AliEveEMCALSModule.cxx:75 AliEveEMCALSModule.cxx:76 AliEveEMCALSModule.cxx:77 AliEveEMCALSModule.cxx:78 AliEveEMCALSModule.cxx:79 AliEveEMCALSModule.cxx:80 AliEveEMCALSModule.cxx:81 AliEveEMCALSModule.cxx:82 AliEveEMCALSModule.cxx:83 AliEveEMCALSModule.cxx:84 AliEveEMCALSModule.cxx:85 AliEveEMCALSModule.cxx:86 AliEveEMCALSModule.cxx:87 AliEveEMCALSModule.cxx:88 AliEveEMCALSModule.cxx:89 AliEveEMCALSModule.cxx:90 AliEveEMCALSModule.cxx:91 AliEveEMCALSModule.cxx:92 AliEveEMCALSModule.cxx:93 AliEveEMCALSModule.cxx:94 AliEveEMCALSModule.cxx:95 AliEveEMCALSModule.cxx:96 AliEveEMCALSModule.cxx:97 AliEveEMCALSModule.cxx:98 AliEveEMCALSModule.cxx:99 AliEveEMCALSModule.cxx:100 AliEveEMCALSModule.cxx:101 AliEveEMCALSModule.cxx:102 AliEveEMCALSModule.cxx:103 AliEveEMCALSModule.cxx:104 AliEveEMCALSModule.cxx:105 AliEveEMCALSModule.cxx:106 AliEveEMCALSModule.cxx:107 AliEveEMCALSModule.cxx:108 AliEveEMCALSModule.cxx:109 AliEveEMCALSModule.cxx:110 AliEveEMCALSModule.cxx:111 AliEveEMCALSModule.cxx:112 AliEveEMCALSModule.cxx:113 AliEveEMCALSModule.cxx:114 AliEveEMCALSModule.cxx:115 AliEveEMCALSModule.cxx:116 AliEveEMCALSModule.cxx:117 AliEveEMCALSModule.cxx:118 AliEveEMCALSModule.cxx:119 AliEveEMCALSModule.cxx:120 AliEveEMCALSModule.cxx:121 AliEveEMCALSModule.cxx:122 AliEveEMCALSModule.cxx:123 AliEveEMCALSModule.cxx:124 AliEveEMCALSModule.cxx:125 AliEveEMCALSModule.cxx:126 AliEveEMCALSModule.cxx:127 AliEveEMCALSModule.cxx:128 AliEveEMCALSModule.cxx:129 AliEveEMCALSModule.cxx:130 AliEveEMCALSModule.cxx:131 AliEveEMCALSModule.cxx:132 AliEveEMCALSModule.cxx:133 AliEveEMCALSModule.cxx:134 AliEveEMCALSModule.cxx:135 AliEveEMCALSModule.cxx:136 AliEveEMCALSModule.cxx:137 AliEveEMCALSModule.cxx:138 AliEveEMCALSModule.cxx:139 AliEveEMCALSModule.cxx:140 AliEveEMCALSModule.cxx:141 AliEveEMCALSModule.cxx:142 AliEveEMCALSModule.cxx:143 AliEveEMCALSModule.cxx:144 AliEveEMCALSModule.cxx:145 AliEveEMCALSModule.cxx:146 AliEveEMCALSModule.cxx:147 AliEveEMCALSModule.cxx:148 AliEveEMCALSModule.cxx:149 AliEveEMCALSModule.cxx:150 AliEveEMCALSModule.cxx:151 AliEveEMCALSModule.cxx:152 AliEveEMCALSModule.cxx:153 AliEveEMCALSModule.cxx:154 AliEveEMCALSModule.cxx:155 AliEveEMCALSModule.cxx:156 AliEveEMCALSModule.cxx:157 AliEveEMCALSModule.cxx:158 AliEveEMCALSModule.cxx:159 AliEveEMCALSModule.cxx:160 AliEveEMCALSModule.cxx:161 AliEveEMCALSModule.cxx:162 AliEveEMCALSModule.cxx:163 AliEveEMCALSModule.cxx:164 AliEveEMCALSModule.cxx:165 AliEveEMCALSModule.cxx:166 AliEveEMCALSModule.cxx:167 AliEveEMCALSModule.cxx:168 AliEveEMCALSModule.cxx:169 AliEveEMCALSModule.cxx:170 AliEveEMCALSModule.cxx:171 AliEveEMCALSModule.cxx:172 AliEveEMCALSModule.cxx:173 AliEveEMCALSModule.cxx:174 AliEveEMCALSModule.cxx:175 AliEveEMCALSModule.cxx:176 AliEveEMCALSModule.cxx:177 AliEveEMCALSModule.cxx:178 AliEveEMCALSModule.cxx:179 AliEveEMCALSModule.cxx:180 AliEveEMCALSModule.cxx:181 AliEveEMCALSModule.cxx:182 AliEveEMCALSModule.cxx:183 AliEveEMCALSModule.cxx:184 AliEveEMCALSModule.cxx:185 AliEveEMCALSModule.cxx:186 AliEveEMCALSModule.cxx:187 AliEveEMCALSModule.cxx:188 AliEveEMCALSModule.cxx:189 AliEveEMCALSModule.cxx:190 AliEveEMCALSModule.cxx:191 AliEveEMCALSModule.cxx:192 AliEveEMCALSModule.cxx:193 AliEveEMCALSModule.cxx:194 AliEveEMCALSModule.cxx:195 AliEveEMCALSModule.cxx:196 AliEveEMCALSModule.cxx:197 AliEveEMCALSModule.cxx:198 AliEveEMCALSModule.cxx:199 AliEveEMCALSModule.cxx:200 AliEveEMCALSModule.cxx:201 AliEveEMCALSModule.cxx:202 AliEveEMCALSModule.cxx:203 AliEveEMCALSModule.cxx:204 AliEveEMCALSModule.cxx:205 AliEveEMCALSModule.cxx:206 AliEveEMCALSModule.cxx:207 AliEveEMCALSModule.cxx:208 AliEveEMCALSModule.cxx:209 AliEveEMCALSModule.cxx:210 AliEveEMCALSModule.cxx:211 AliEveEMCALSModule.cxx:212 AliEveEMCALSModule.cxx:213 AliEveEMCALSModule.cxx:214 AliEveEMCALSModule.cxx:215 AliEveEMCALSModule.cxx:216 AliEveEMCALSModule.cxx:217 AliEveEMCALSModule.cxx:218 AliEveEMCALSModule.cxx:219 AliEveEMCALSModule.cxx:220 AliEveEMCALSModule.cxx:221 AliEveEMCALSModule.cxx:222 AliEveEMCALSModule.cxx:223 AliEveEMCALSModule.cxx:224 AliEveEMCALSModule.cxx:225 AliEveEMCALSModule.cxx:226 AliEveEMCALSModule.cxx:227 AliEveEMCALSModule.cxx:228 AliEveEMCALSModule.cxx:229 AliEveEMCALSModule.cxx:230 AliEveEMCALSModule.cxx:231 AliEveEMCALSModule.cxx:232 AliEveEMCALSModule.cxx:233 AliEveEMCALSModule.cxx:234 AliEveEMCALSModule.cxx:235 AliEveEMCALSModule.cxx:236 AliEveEMCALSModule.cxx:237 AliEveEMCALSModule.cxx:238 AliEveEMCALSModule.cxx:239 AliEveEMCALSModule.cxx:240 AliEveEMCALSModule.cxx:241 AliEveEMCALSModule.cxx:242 AliEveEMCALSModule.cxx:243 AliEveEMCALSModule.cxx:244 AliEveEMCALSModule.cxx:245 AliEveEMCALSModule.cxx:246 AliEveEMCALSModule.cxx:247 AliEveEMCALSModule.cxx:248 AliEveEMCALSModule.cxx:249 AliEveEMCALSModule.cxx:250 AliEveEMCALSModule.cxx:251 AliEveEMCALSModule.cxx:252 AliEveEMCALSModule.cxx:253 AliEveEMCALSModule.cxx:254 AliEveEMCALSModule.cxx:255 AliEveEMCALSModule.cxx:256 AliEveEMCALSModule.cxx:257 AliEveEMCALSModule.cxx:258 AliEveEMCALSModule.cxx:259 AliEveEMCALSModule.cxx:260 AliEveEMCALSModule.cxx:261 AliEveEMCALSModule.cxx:262 AliEveEMCALSModule.cxx:263 AliEveEMCALSModule.cxx:264 AliEveEMCALSModule.cxx:265 AliEveEMCALSModule.cxx:266 AliEveEMCALSModule.cxx:267 AliEveEMCALSModule.cxx:268 AliEveEMCALSModule.cxx:269 AliEveEMCALSModule.cxx:270 AliEveEMCALSModule.cxx:271 AliEveEMCALSModule.cxx:272 AliEveEMCALSModule.cxx:273 AliEveEMCALSModule.cxx:274 AliEveEMCALSModule.cxx:275 AliEveEMCALSModule.cxx:276 AliEveEMCALSModule.cxx:277 AliEveEMCALSModule.cxx:278 AliEveEMCALSModule.cxx:279 AliEveEMCALSModule.cxx:280 AliEveEMCALSModule.cxx:281 AliEveEMCALSModule.cxx:282 AliEveEMCALSModule.cxx:283 AliEveEMCALSModule.cxx:284 AliEveEMCALSModule.cxx:285 AliEveEMCALSModule.cxx:286 AliEveEMCALSModule.cxx:287 AliEveEMCALSModule.cxx:288 AliEveEMCALSModule.cxx:289 AliEveEMCALSModule.cxx:290 AliEveEMCALSModule.cxx:291 AliEveEMCALSModule.cxx:292 AliEveEMCALSModule.cxx:293 AliEveEMCALSModule.cxx:294 AliEveEMCALSModule.cxx:295 AliEveEMCALSModule.cxx:296 AliEveEMCALSModule.cxx:297 AliEveEMCALSModule.cxx:298 AliEveEMCALSModule.cxx:299 AliEveEMCALSModule.cxx:300 AliEveEMCALSModule.cxx:301 AliEveEMCALSModule.cxx:302 AliEveEMCALSModule.cxx:303 AliEveEMCALSModule.cxx:304 AliEveEMCALSModule.cxx:305 AliEveEMCALSModule.cxx:306 AliEveEMCALSModule.cxx:307 AliEveEMCALSModule.cxx:308 AliEveEMCALSModule.cxx:309 AliEveEMCALSModule.cxx:310 AliEveEMCALSModule.cxx:311 AliEveEMCALSModule.cxx:312 AliEveEMCALSModule.cxx:313 AliEveEMCALSModule.cxx:314 AliEveEMCALSModule.cxx:315 AliEveEMCALSModule.cxx:316 AliEveEMCALSModule.cxx:317 AliEveEMCALSModule.cxx:318 AliEveEMCALSModule.cxx:319 AliEveEMCALSModule.cxx:320 AliEveEMCALSModule.cxx:321 AliEveEMCALSModule.cxx:322 AliEveEMCALSModule.cxx:323 AliEveEMCALSModule.cxx:324 AliEveEMCALSModule.cxx:325 AliEveEMCALSModule.cxx:326 AliEveEMCALSModule.cxx:327 AliEveEMCALSModule.cxx:328 AliEveEMCALSModule.cxx:329 AliEveEMCALSModule.cxx:330 AliEveEMCALSModule.cxx:331 AliEveEMCALSModule.cxx:332 AliEveEMCALSModule.cxx:333 AliEveEMCALSModule.cxx:334 AliEveEMCALSModule.cxx:335 AliEveEMCALSModule.cxx:336 AliEveEMCALSModule.cxx:337 AliEveEMCALSModule.cxx:338 AliEveEMCALSModule.cxx:339 AliEveEMCALSModule.cxx:340 AliEveEMCALSModule.cxx:341 AliEveEMCALSModule.cxx:342 AliEveEMCALSModule.cxx:343 AliEveEMCALSModule.cxx:344 AliEveEMCALSModule.cxx:345 AliEveEMCALSModule.cxx:346 AliEveEMCALSModule.cxx:347 AliEveEMCALSModule.cxx:348 AliEveEMCALSModule.cxx:349 AliEveEMCALSModule.cxx:350 AliEveEMCALSModule.cxx:351 AliEveEMCALSModule.cxx:352 AliEveEMCALSModule.cxx:353 AliEveEMCALSModule.cxx:354 AliEveEMCALSModule.cxx:355 AliEveEMCALSModule.cxx:356 AliEveEMCALSModule.cxx:357 AliEveEMCALSModule.cxx:358 AliEveEMCALSModule.cxx:359 AliEveEMCALSModule.cxx:360 AliEveEMCALSModule.cxx:361 AliEveEMCALSModule.cxx:362 AliEveEMCALSModule.cxx:363 AliEveEMCALSModule.cxx:364 AliEveEMCALSModule.cxx:365 AliEveEMCALSModule.cxx:366 AliEveEMCALSModule.cxx:367 AliEveEMCALSModule.cxx:368 AliEveEMCALSModule.cxx:369 AliEveEMCALSModule.cxx:370