#include "AliEMCALTriggerSTURawStream.h"
#include "AliRawReader.h"
#include "AliLog.h"
#include "Riostream.h"
#include "TBits.h"
#include <cstdlib>
namespace
{
const Int_t kPayLoadSizeV0 = 236;
const Int_t kPayLoadSizeV1 = 245;
const Int_t kPayLoadSizeV2 = 390;
}
using std::cout;
using std::setw;
using std::endl;
ClassImp(AliEMCALTriggerSTURawStream)
AliEMCALTriggerSTURawStream::AliEMCALTriggerSTURawStream() : TObject(),
fRawReader(0x0),
fL1JetThreshold(),
fL1GammaThreshold(),
fL0GammaPatchIndex(),
fL1GammaPatchIndex(),
fL1JetPatchIndex(),
fNL0GammaPatch(0),
fNL1JetPatch(),
fNL1GammaPatch(),
fGetRawData(0),
fV0A(0),
fV0C(0),
fG(),
fJ(),
fRegionEnable(0),
fFrameReceived(0),
fFwVersion(0)
{
for (int i = 0; i < 2; i++) {
fL1JetThreshold[i] = fL1GammaThreshold[i] = 0;
fNL1JetPatch[i] = fNL1GammaPatch[i] = 0;
}
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 2; j++) {
fG[i][j] = fJ[i][j] = 0;
}
}
for (int i = 0; i < 3100; i++) {
fL0GammaPatchIndex[i] = 0;
for (int j = 0; j < 2; j++) {
fL1GammaPatchIndex[i][j] = 0;
}
}
for (int i = 0; i < 200; i++) {
for (int j = 0; j < 2; j++) {
fL1JetPatchIndex[i][j] = 0;
}
}
}
AliEMCALTriggerSTURawStream::AliEMCALTriggerSTURawStream(AliRawReader* rawReader) : TObject(),
fRawReader(rawReader),
fL1JetThreshold(),
fL1GammaThreshold(),
fL0GammaPatchIndex(),
fL1GammaPatchIndex(),
fL1JetPatchIndex(),
fNL0GammaPatch(0),
fNL1JetPatch(),
fNL1GammaPatch(),
fGetRawData(0),
fV0A(0),
fV0C(0),
fG(),
fJ(),
fRegionEnable(0),
fFrameReceived(0),
fFwVersion(0)
{
fRawReader->Reset();
fRawReader->Select("EMCAL",44);
for (int i = 0; i < 2; i++) {
fL1JetThreshold[i] = fL1GammaThreshold[i] = 0;
fNL1JetPatch[i] = fNL1GammaPatch[i] = 0;
}
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 2; j++) {
fG[i][j] = fJ[i][j] = 0;
}
}
for (int i = 0; i < 3100; i++) {
fL0GammaPatchIndex[i] = 0;
for (int j = 0; j < 2; j++) {
fL1GammaPatchIndex[i][j] = 0;
}
}
for (int i = 0; i < 200; i++) {
for (int j = 0; j < 2; j++) {
fL1JetPatchIndex[i][j] = 0;
}
}
}
AliEMCALTriggerSTURawStream::~AliEMCALTriggerSTURawStream()
{
}
void AliEMCALTriggerSTURawStream::Reset()
{
if (fRawReader) fRawReader->Reset();
fNL0GammaPatch = 0;
fNL1GammaPatch[0] = fNL1GammaPatch[1] = 0;
fNL1JetPatch[0] = fNL1JetPatch[1] = 0;
}
Bool_t AliEMCALTriggerSTURawStream::ReadPayLoad()
{
UInt_t word32[kPayLoadSizeV2 + 1536];
for (Int_t i = 0;i < kPayLoadSizeV2 + 1536; i++) word32[i] = 0;
Int_t iword = 0;
fNL0GammaPatch = 0;
fNL1GammaPatch[0] = fNL1GammaPatch[1] = 0;
fNL1JetPatch[0] = fNL1JetPatch[1] = 0;
Int_t eqId = -1, eqSize = 0;
UInt_t w32;
while (fRawReader->ReadNextInt(w32))
{
if (!iword)
{
eqId = fRawReader->GetEquipmentId();
eqSize = fRawReader->GetEquipmentSize();
}
word32[iword++] = w32;
}
if (iword != kPayLoadSizeV0 && iword != kPayLoadSizeV1 && iword != kPayLoadSizeV2
&&
iword != (kPayLoadSizeV0 + 1536) && iword != (kPayLoadSizeV1 + 1536) && iword != (kPayLoadSizeV2 + 1536))
{
AliError(Form("STU payload (eqId: %d, eqSize: %d) doesn't match expected size! %d word32",
eqId, eqSize, iword));
return kFALSE;
}
AliDebug(1, Form("STU (eqId: %d, eqSize: %d) payload size: %d word32",
eqId, eqSize, iword));
int offset = 1;
int nthres = 1;
switch (iword)
{
case kPayLoadSizeV0:
case kPayLoadSizeV0 + 1536:
{
fL1JetThreshold[0] = ((word32[0]>>16) & 0xFFFF);
fL1GammaThreshold[0] = (word32[0] & 0xFFFF);
break;
}
case kPayLoadSizeV1:
case kPayLoadSizeV1 + 1536:
{
fV0A = ((word32[0]>>16) & 0xFFFF);
fV0C = (word32[0] & 0xFFFF);
fG[0][0] = word32[1];
fG[1][0] = word32[2];
fG[2][0] = word32[3];
fJ[0][0] = word32[4];
fJ[1][0] = word32[5];
fJ[2][0] = word32[6];
fRegionEnable = word32[7];
fFrameReceived = word32[8];
fFwVersion = word32[9];
fL1JetThreshold[0] = GetThreshold(fJ[0][0], fJ[1][0], fJ[2][0], fV0A, fV0C);
fL1GammaThreshold[0] = GetThreshold(fG[0][0], fG[1][0], fG[2][0], fV0A, fV0C);
offset = 10;
break;
}
case kPayLoadSizeV2:
case kPayLoadSizeV2 + 1536:
{
fV0A = ((word32[0]>>16) & 0xFFFF);
fV0C = (word32[0] & 0xFFFF);
fG[0][0] = word32[1];
fG[1][0] = word32[2];
fG[2][0] = word32[3];
fJ[0][0] = word32[4];
fJ[1][0] = word32[5];
fJ[2][0] = word32[6];
fG[0][1] = word32[7];
fG[1][1] = word32[8];
fG[2][1] = word32[9];
fJ[0][1] = word32[10];
fJ[1][1] = word32[11];
fJ[2][1] = word32[12];
fRegionEnable = word32[13];
fFrameReceived = word32[14];
fFwVersion = word32[15];
for (int i = 0; i < 2; i++) {
fL1JetThreshold[i] = GetThreshold(fJ[0][i], fJ[1][i], fJ[2][i], fV0A, fV0C);
fL1GammaThreshold[i] = GetThreshold(fG[0][i], fG[1][i], fG[2][i], fV0A, fV0C);
}
offset = 16;
nthres = 2;
break;
}
}
for (int i = 0; i < nthres; i++) {
DecodeL1JetPatchIndexes(i, word32, offset);
offset += 11;
}
DecodeL0GammaPatchIndexes(word32, offset);
offset += 96;
for (int i = 0; i < nthres; i++) {
DecodeL1GammaPatchIndexes(i, word32, offset);
offset += 128;
}
if (iword == kPayLoadSizeV0 || iword == kPayLoadSizeV1 || iword == kPayLoadSizeV2) {
fGetRawData = 0;
return kTRUE;
}
fGetRawData = 1;
DecodeTRUADC(word32, offset);
return kTRUE;
}
void AliEMCALTriggerSTURawStream::DecodeL0GammaPatchIndexes(UInt_t *word32, const int offset)
{
unsigned short truL0indexes[32][6];
for (Int_t index=0;index<6;index++)
{
for (Int_t tru_num=0;tru_num<16;tru_num++)
{
truL0indexes[2*tru_num ][index] = ( word32[offset + index * 16 + tru_num] & 0xFFFF);
truL0indexes[2*tru_num+1][index] = ((word32[offset + index * 16 + tru_num] >> 16) & 0xFFFF);
}
}
for (Int_t tru_num=0;tru_num<32;tru_num++)
{
for (Int_t index=0;index<6;index++)
{
for (Int_t bit_num=0;bit_num<12;bit_num++)
{
if ((truL0indexes[tru_num][index] & (1 << bit_num)))
{
Int_t idx = 12 * index + bit_num;
fNL0GammaPatch++;
fL0GammaPatchIndex[fNL0GammaPatch-1] = (((idx << 5) & 0x7E0) | (tru_num & 0x1F));
}
}
}
}
}
void AliEMCALTriggerSTURawStream::DecodeL1JetPatchIndexes(const int i, UInt_t *word32, const int offset)
{
int jetSize = 2 + (fFwVersion >> 16);
for (Int_t jet_row = 0; jet_row < 12 - (jetSize - 1); jet_row++)
{
UInt_t currentrow = word32[offset + jet_row];
for (Int_t jet_col = 0; jet_col < 15; jet_col++)
{
if (currentrow & (1 << jet_col))
{
fNL1JetPatch[i] = fNL1JetPatch[i] + 1;
fL1JetPatchIndex[fNL1JetPatch[i] - 1][i] = ((jet_row << 8) & 0xFF00) | (jet_col & 0xFF);
}
}
}
}
void AliEMCALTriggerSTURawStream::DecodeL1GammaPatchIndexes(const int i, UInt_t *word32, const int offset)
{
unsigned short truL1indexes[32][8];
for (Int_t index=0;index<8;index++)
{
for (Int_t tru_num=0;tru_num<16;tru_num++)
{
truL1indexes[2*tru_num ][index] = ( word32[offset + index * 16 + tru_num] & 0xFFFF);
truL1indexes[2*tru_num+1][index] = ((word32[offset + index * 16 + tru_num] >> 16) & 0xFFFF);
}
}
int gammacolnum;
short indexcopy;
for (Int_t tru_num=0;tru_num<32;tru_num++)
{
for (Int_t index=0;index<8;index++)
{
for (Int_t bit_num=0; bit_num<12; bit_num++)
{
if ((truL1indexes[tru_num][index] & (1<<bit_num)) != 0)
{
if (index<4)
{
gammacolnum = (2*bit_num );
indexcopy = index;
}
else
{
gammacolnum = (2*bit_num+1);
indexcopy = index-4;
}
fNL1GammaPatch[i] = fNL1GammaPatch[i] + 1;
fL1GammaPatchIndex[fNL1GammaPatch[i] - 1][i] = (((indexcopy << 10) & 0xC00) | ((gammacolnum << 5) & 0x3E0) | (tru_num & 0x1F));
}
}
}
}
}
void AliEMCALTriggerSTURawStream::DecodeTRUADC(UInt_t *word32, const int offset)
{
for (Int_t index=0;index<96;index++)
{
for (Int_t tru_num=0;tru_num<16;tru_num++)
{
fADC[2*tru_num ][index] = ( word32[offset + index * 16 + tru_num] & 0xFFFF);
fADC[2*tru_num+1][index] = ((word32[offset + index * 16 + tru_num] >> 16) & 0xFFFF);
}
}
for (Int_t tru_num=16;tru_num<32;tru_num++)
{
Int_t v[96];
for (Int_t index=0;index<96;index++) v[index] = fADC[tru_num][95-index];
for (Int_t index=0;index<96;index++) fADC[tru_num][index] = v[index];
}
}
Bool_t AliEMCALTriggerSTURawStream::GetL0GammaPatch(const Int_t i, Int_t& tru, Int_t& idx) const
{
if (i > fNL0GammaPatch) return kFALSE;
tru = fL0GammaPatchIndex[i] & 0x1F;
idx = (fL0GammaPatchIndex[i] & 0x7E0) >> 5;
return kTRUE;
}
Bool_t AliEMCALTriggerSTURawStream::GetL1GammaPatch(const Int_t i, const Int_t j, Int_t& tru, Int_t& col, Int_t& row) const
{
if (j >= 2 || i > fNL1GammaPatch[j]) return kFALSE;
tru = fL1GammaPatchIndex[i][j] & 0x1F;
col = (fL1GammaPatchIndex[i][j] & 0x3E0) >> 5;
row = (fL1GammaPatchIndex[i][j] & 0xC00) >> 10;
return kTRUE;
}
Bool_t AliEMCALTriggerSTURawStream::GetL1JetPatch(const Int_t i, const Int_t j, Int_t& col, Int_t& row) const
{
if (j >= 2 || i > fNL1JetPatch[j]) return kFALSE;
col = fL1JetPatchIndex[i][j] & 0xFF;
row = (fL1JetPatchIndex[i][j] & 0xFF00) >> 8;
return kTRUE;
}
void AliEMCALTriggerSTURawStream::GetADC(Int_t iTRU, UInt_t ADC[])
{
for (Int_t i=0; i<96; i++) ADC[i] = fADC[iTRU][i];
}
void AliEMCALTriggerSTURawStream::DumpPayLoad(const Option_t *option) const
{
TString op = option;
printf("V0A: %d\n", fV0A);
printf("V0C: %d\n", fV0C);
printf("RawData: %d\n", fGetRawData);
printf("RegionEnable: %8x\n", fRegionEnable);
printf("FrameReceived: %8x\n", fFrameReceived);
printf("FwVersion: %x\n", fFwVersion);
printf("Number of L0: %d\n", fNL0GammaPatch);
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 3; j++) {
printf("G[%d][%d]: %d\n", j, i, fG[j][i]);
printf("J[%d][%d]: %d\n", j, i, fJ[j][i]);
}
printf("Gamma threshold[%d]: %d\n", i, fL1GammaThreshold[i]);
printf("Jet Threshold[%d]: %d\n", i, fL1JetThreshold[i]);
printf("Number of L1-g[%d]: %d\n", i, fNL1GammaPatch[i]);
printf("Number of L1-j[%d]: %d\n", i, fNL1JetPatch[i]);
}
Int_t itru, col, row;
if (op.Contains("L0") || op.Contains("ALL"))
{
for (Int_t i = 0;i < fNL0GammaPatch; i++) {
if (GetL0GammaPatch(i,itru,col))
cout << "> Found L0 gamma in TRU #" << setw(2) << itru << " at idx: " << setw(2) << col << endl;
}
}
if (op.Contains("L1") || op.Contains("ALL")) {
for (int j = 0; j < 2; j++) {
for (Int_t i = 0; i < fNL1GammaPatch[j]; i++) {
if (GetL1GammaPatch(i, j, itru, col, row))
cout << "> Found L1 gamma " << j << " in TRU #" << setw(2) << itru << " at: ( col: " << setw(2) << col << " , row: " << setw(2) << row << " )" << endl;
}
for (Int_t i = 0; i < fNL1JetPatch[j]; i++) {
if (GetL1JetPatch(i, j, col, row)) cout << "> Found L1 jet " << j << " at: ( col: " << setw(2) << col << " , row: " << setw(2) << row << " )" << endl;
}
}
}
if ((op.Contains("ADC") || op.Contains("ALL")) && fGetRawData) {
for (Int_t i = 0; i < 32; i++) {
cout << "--------\n";
cout << "TRU #" << setw(2) << i << ":";
for (Int_t j = 0;j < 96; j++) {
if ((j % 4) == 0) cout << endl;
printf("%2d: %3x / ",j,fADC[i][j]);
}
cout << "\n";
}
}
}
UShort_t AliEMCALTriggerSTURawStream::GetThreshold(Short_t A, Short_t B, Short_t C, UShort_t V0A, UShort_t V0C) const
{
ULong64_t v0sum = V0A + V0C;
ULong64_t sqrV0 = v0sum * v0sum;
sqrV0 *= A;
sqrV0 >>= 32;
v0sum *= B;
v0sum >>= 16;
return (UShort_t)(sqrV0 + v0sum + C);
}
AliEMCALTriggerSTURawStream.cxx:1 AliEMCALTriggerSTURawStream.cxx:2 AliEMCALTriggerSTURawStream.cxx:3 AliEMCALTriggerSTURawStream.cxx:4 AliEMCALTriggerSTURawStream.cxx:5 AliEMCALTriggerSTURawStream.cxx:6 AliEMCALTriggerSTURawStream.cxx:7 AliEMCALTriggerSTURawStream.cxx:8 AliEMCALTriggerSTURawStream.cxx:9 AliEMCALTriggerSTURawStream.cxx:10 AliEMCALTriggerSTURawStream.cxx:11 AliEMCALTriggerSTURawStream.cxx:12 AliEMCALTriggerSTURawStream.cxx:13 AliEMCALTriggerSTURawStream.cxx:14 AliEMCALTriggerSTURawStream.cxx:15 AliEMCALTriggerSTURawStream.cxx:16 AliEMCALTriggerSTURawStream.cxx:17 AliEMCALTriggerSTURawStream.cxx:18 AliEMCALTriggerSTURawStream.cxx:19 AliEMCALTriggerSTURawStream.cxx:20 AliEMCALTriggerSTURawStream.cxx:21 AliEMCALTriggerSTURawStream.cxx:22 AliEMCALTriggerSTURawStream.cxx:23 AliEMCALTriggerSTURawStream.cxx:24 AliEMCALTriggerSTURawStream.cxx:25 AliEMCALTriggerSTURawStream.cxx:26 AliEMCALTriggerSTURawStream.cxx:27 AliEMCALTriggerSTURawStream.cxx:28 AliEMCALTriggerSTURawStream.cxx:29 AliEMCALTriggerSTURawStream.cxx:30 AliEMCALTriggerSTURawStream.cxx:31 AliEMCALTriggerSTURawStream.cxx:32 AliEMCALTriggerSTURawStream.cxx:33 AliEMCALTriggerSTURawStream.cxx:34 AliEMCALTriggerSTURawStream.cxx:35 AliEMCALTriggerSTURawStream.cxx:36 AliEMCALTriggerSTURawStream.cxx:37 AliEMCALTriggerSTURawStream.cxx:38 AliEMCALTriggerSTURawStream.cxx:39 AliEMCALTriggerSTURawStream.cxx:40 AliEMCALTriggerSTURawStream.cxx:41 AliEMCALTriggerSTURawStream.cxx:42 AliEMCALTriggerSTURawStream.cxx:43 AliEMCALTriggerSTURawStream.cxx:44 AliEMCALTriggerSTURawStream.cxx:45 AliEMCALTriggerSTURawStream.cxx:46 AliEMCALTriggerSTURawStream.cxx:47 AliEMCALTriggerSTURawStream.cxx:48 AliEMCALTriggerSTURawStream.cxx:49 AliEMCALTriggerSTURawStream.cxx:50 AliEMCALTriggerSTURawStream.cxx:51 AliEMCALTriggerSTURawStream.cxx:52 AliEMCALTriggerSTURawStream.cxx:53 AliEMCALTriggerSTURawStream.cxx:54 AliEMCALTriggerSTURawStream.cxx:55 AliEMCALTriggerSTURawStream.cxx:56 AliEMCALTriggerSTURawStream.cxx:57 AliEMCALTriggerSTURawStream.cxx:58 AliEMCALTriggerSTURawStream.cxx:59 AliEMCALTriggerSTURawStream.cxx:60 AliEMCALTriggerSTURawStream.cxx:61 AliEMCALTriggerSTURawStream.cxx:62 AliEMCALTriggerSTURawStream.cxx:63 AliEMCALTriggerSTURawStream.cxx:64 AliEMCALTriggerSTURawStream.cxx:65 AliEMCALTriggerSTURawStream.cxx:66 AliEMCALTriggerSTURawStream.cxx:67 AliEMCALTriggerSTURawStream.cxx:68 AliEMCALTriggerSTURawStream.cxx:69 AliEMCALTriggerSTURawStream.cxx:70 AliEMCALTriggerSTURawStream.cxx:71 AliEMCALTriggerSTURawStream.cxx:72 AliEMCALTriggerSTURawStream.cxx:73 AliEMCALTriggerSTURawStream.cxx:74 AliEMCALTriggerSTURawStream.cxx:75 AliEMCALTriggerSTURawStream.cxx:76 AliEMCALTriggerSTURawStream.cxx:77 AliEMCALTriggerSTURawStream.cxx:78 AliEMCALTriggerSTURawStream.cxx:79 AliEMCALTriggerSTURawStream.cxx:80 AliEMCALTriggerSTURawStream.cxx:81 AliEMCALTriggerSTURawStream.cxx:82 AliEMCALTriggerSTURawStream.cxx:83 AliEMCALTriggerSTURawStream.cxx:84 AliEMCALTriggerSTURawStream.cxx:85 AliEMCALTriggerSTURawStream.cxx:86 AliEMCALTriggerSTURawStream.cxx:87 AliEMCALTriggerSTURawStream.cxx:88 AliEMCALTriggerSTURawStream.cxx:89 AliEMCALTriggerSTURawStream.cxx:90 AliEMCALTriggerSTURawStream.cxx:91 AliEMCALTriggerSTURawStream.cxx:92 AliEMCALTriggerSTURawStream.cxx:93 AliEMCALTriggerSTURawStream.cxx:94 AliEMCALTriggerSTURawStream.cxx:95 AliEMCALTriggerSTURawStream.cxx:96 AliEMCALTriggerSTURawStream.cxx:97 AliEMCALTriggerSTURawStream.cxx:98 AliEMCALTriggerSTURawStream.cxx:99 AliEMCALTriggerSTURawStream.cxx:100 AliEMCALTriggerSTURawStream.cxx:101 AliEMCALTriggerSTURawStream.cxx:102 AliEMCALTriggerSTURawStream.cxx:103 AliEMCALTriggerSTURawStream.cxx:104 AliEMCALTriggerSTURawStream.cxx:105 AliEMCALTriggerSTURawStream.cxx:106 AliEMCALTriggerSTURawStream.cxx:107 AliEMCALTriggerSTURawStream.cxx:108 AliEMCALTriggerSTURawStream.cxx:109 AliEMCALTriggerSTURawStream.cxx:110 AliEMCALTriggerSTURawStream.cxx:111 AliEMCALTriggerSTURawStream.cxx:112 AliEMCALTriggerSTURawStream.cxx:113 AliEMCALTriggerSTURawStream.cxx:114 AliEMCALTriggerSTURawStream.cxx:115 AliEMCALTriggerSTURawStream.cxx:116 AliEMCALTriggerSTURawStream.cxx:117 AliEMCALTriggerSTURawStream.cxx:118 AliEMCALTriggerSTURawStream.cxx:119 AliEMCALTriggerSTURawStream.cxx:120 AliEMCALTriggerSTURawStream.cxx:121 AliEMCALTriggerSTURawStream.cxx:122 AliEMCALTriggerSTURawStream.cxx:123 AliEMCALTriggerSTURawStream.cxx:124 AliEMCALTriggerSTURawStream.cxx:125 AliEMCALTriggerSTURawStream.cxx:126 AliEMCALTriggerSTURawStream.cxx:127 AliEMCALTriggerSTURawStream.cxx:128 AliEMCALTriggerSTURawStream.cxx:129 AliEMCALTriggerSTURawStream.cxx:130 AliEMCALTriggerSTURawStream.cxx:131 AliEMCALTriggerSTURawStream.cxx:132 AliEMCALTriggerSTURawStream.cxx:133 AliEMCALTriggerSTURawStream.cxx:134 AliEMCALTriggerSTURawStream.cxx:135 AliEMCALTriggerSTURawStream.cxx:136 AliEMCALTriggerSTURawStream.cxx:137 AliEMCALTriggerSTURawStream.cxx:138 AliEMCALTriggerSTURawStream.cxx:139 AliEMCALTriggerSTURawStream.cxx:140 AliEMCALTriggerSTURawStream.cxx:141 AliEMCALTriggerSTURawStream.cxx:142 AliEMCALTriggerSTURawStream.cxx:143 AliEMCALTriggerSTURawStream.cxx:144 AliEMCALTriggerSTURawStream.cxx:145 AliEMCALTriggerSTURawStream.cxx:146 AliEMCALTriggerSTURawStream.cxx:147 AliEMCALTriggerSTURawStream.cxx:148 AliEMCALTriggerSTURawStream.cxx:149 AliEMCALTriggerSTURawStream.cxx:150 AliEMCALTriggerSTURawStream.cxx:151 AliEMCALTriggerSTURawStream.cxx:152 AliEMCALTriggerSTURawStream.cxx:153 AliEMCALTriggerSTURawStream.cxx:154 AliEMCALTriggerSTURawStream.cxx:155 AliEMCALTriggerSTURawStream.cxx:156 AliEMCALTriggerSTURawStream.cxx:157 AliEMCALTriggerSTURawStream.cxx:158 AliEMCALTriggerSTURawStream.cxx:159 AliEMCALTriggerSTURawStream.cxx:160 AliEMCALTriggerSTURawStream.cxx:161 AliEMCALTriggerSTURawStream.cxx:162 AliEMCALTriggerSTURawStream.cxx:163 AliEMCALTriggerSTURawStream.cxx:164 AliEMCALTriggerSTURawStream.cxx:165 AliEMCALTriggerSTURawStream.cxx:166 AliEMCALTriggerSTURawStream.cxx:167 AliEMCALTriggerSTURawStream.cxx:168 AliEMCALTriggerSTURawStream.cxx:169 AliEMCALTriggerSTURawStream.cxx:170 AliEMCALTriggerSTURawStream.cxx:171 AliEMCALTriggerSTURawStream.cxx:172 AliEMCALTriggerSTURawStream.cxx:173 AliEMCALTriggerSTURawStream.cxx:174 AliEMCALTriggerSTURawStream.cxx:175 AliEMCALTriggerSTURawStream.cxx:176 AliEMCALTriggerSTURawStream.cxx:177 AliEMCALTriggerSTURawStream.cxx:178 AliEMCALTriggerSTURawStream.cxx:179 AliEMCALTriggerSTURawStream.cxx:180 AliEMCALTriggerSTURawStream.cxx:181 AliEMCALTriggerSTURawStream.cxx:182 AliEMCALTriggerSTURawStream.cxx:183 AliEMCALTriggerSTURawStream.cxx:184 AliEMCALTriggerSTURawStream.cxx:185 AliEMCALTriggerSTURawStream.cxx:186 AliEMCALTriggerSTURawStream.cxx:187 AliEMCALTriggerSTURawStream.cxx:188 AliEMCALTriggerSTURawStream.cxx:189 AliEMCALTriggerSTURawStream.cxx:190 AliEMCALTriggerSTURawStream.cxx:191 AliEMCALTriggerSTURawStream.cxx:192 AliEMCALTriggerSTURawStream.cxx:193 AliEMCALTriggerSTURawStream.cxx:194 AliEMCALTriggerSTURawStream.cxx:195 AliEMCALTriggerSTURawStream.cxx:196 AliEMCALTriggerSTURawStream.cxx:197 AliEMCALTriggerSTURawStream.cxx:198 AliEMCALTriggerSTURawStream.cxx:199 AliEMCALTriggerSTURawStream.cxx:200 AliEMCALTriggerSTURawStream.cxx:201 AliEMCALTriggerSTURawStream.cxx:202 AliEMCALTriggerSTURawStream.cxx:203 AliEMCALTriggerSTURawStream.cxx:204 AliEMCALTriggerSTURawStream.cxx:205 AliEMCALTriggerSTURawStream.cxx:206 AliEMCALTriggerSTURawStream.cxx:207 AliEMCALTriggerSTURawStream.cxx:208 AliEMCALTriggerSTURawStream.cxx:209 AliEMCALTriggerSTURawStream.cxx:210 AliEMCALTriggerSTURawStream.cxx:211 AliEMCALTriggerSTURawStream.cxx:212 AliEMCALTriggerSTURawStream.cxx:213 AliEMCALTriggerSTURawStream.cxx:214 AliEMCALTriggerSTURawStream.cxx:215 AliEMCALTriggerSTURawStream.cxx:216 AliEMCALTriggerSTURawStream.cxx:217 AliEMCALTriggerSTURawStream.cxx:218 AliEMCALTriggerSTURawStream.cxx:219 AliEMCALTriggerSTURawStream.cxx:220 AliEMCALTriggerSTURawStream.cxx:221 AliEMCALTriggerSTURawStream.cxx:222 AliEMCALTriggerSTURawStream.cxx:223 AliEMCALTriggerSTURawStream.cxx:224 AliEMCALTriggerSTURawStream.cxx:225 AliEMCALTriggerSTURawStream.cxx:226 AliEMCALTriggerSTURawStream.cxx:227 AliEMCALTriggerSTURawStream.cxx:228 AliEMCALTriggerSTURawStream.cxx:229 AliEMCALTriggerSTURawStream.cxx:230 AliEMCALTriggerSTURawStream.cxx:231 AliEMCALTriggerSTURawStream.cxx:232 AliEMCALTriggerSTURawStream.cxx:233 AliEMCALTriggerSTURawStream.cxx:234 AliEMCALTriggerSTURawStream.cxx:235 AliEMCALTriggerSTURawStream.cxx:236 AliEMCALTriggerSTURawStream.cxx:237 AliEMCALTriggerSTURawStream.cxx:238 AliEMCALTriggerSTURawStream.cxx:239 AliEMCALTriggerSTURawStream.cxx:240 AliEMCALTriggerSTURawStream.cxx:241 AliEMCALTriggerSTURawStream.cxx:242 AliEMCALTriggerSTURawStream.cxx:243 AliEMCALTriggerSTURawStream.cxx:244 AliEMCALTriggerSTURawStream.cxx:245 AliEMCALTriggerSTURawStream.cxx:246 AliEMCALTriggerSTURawStream.cxx:247 AliEMCALTriggerSTURawStream.cxx:248 AliEMCALTriggerSTURawStream.cxx:249 AliEMCALTriggerSTURawStream.cxx:250 AliEMCALTriggerSTURawStream.cxx:251 AliEMCALTriggerSTURawStream.cxx:252 AliEMCALTriggerSTURawStream.cxx:253 AliEMCALTriggerSTURawStream.cxx:254 AliEMCALTriggerSTURawStream.cxx:255 AliEMCALTriggerSTURawStream.cxx:256 AliEMCALTriggerSTURawStream.cxx:257 AliEMCALTriggerSTURawStream.cxx:258 AliEMCALTriggerSTURawStream.cxx:259 AliEMCALTriggerSTURawStream.cxx:260 AliEMCALTriggerSTURawStream.cxx:261 AliEMCALTriggerSTURawStream.cxx:262 AliEMCALTriggerSTURawStream.cxx:263 AliEMCALTriggerSTURawStream.cxx:264 AliEMCALTriggerSTURawStream.cxx:265 AliEMCALTriggerSTURawStream.cxx:266 AliEMCALTriggerSTURawStream.cxx:267 AliEMCALTriggerSTURawStream.cxx:268 AliEMCALTriggerSTURawStream.cxx:269 AliEMCALTriggerSTURawStream.cxx:270 AliEMCALTriggerSTURawStream.cxx:271 AliEMCALTriggerSTURawStream.cxx:272 AliEMCALTriggerSTURawStream.cxx:273 AliEMCALTriggerSTURawStream.cxx:274 AliEMCALTriggerSTURawStream.cxx:275 AliEMCALTriggerSTURawStream.cxx:276 AliEMCALTriggerSTURawStream.cxx:277 AliEMCALTriggerSTURawStream.cxx:278 AliEMCALTriggerSTURawStream.cxx:279 AliEMCALTriggerSTURawStream.cxx:280 AliEMCALTriggerSTURawStream.cxx:281 AliEMCALTriggerSTURawStream.cxx:282 AliEMCALTriggerSTURawStream.cxx:283 AliEMCALTriggerSTURawStream.cxx:284 AliEMCALTriggerSTURawStream.cxx:285 AliEMCALTriggerSTURawStream.cxx:286 AliEMCALTriggerSTURawStream.cxx:287 AliEMCALTriggerSTURawStream.cxx:288 AliEMCALTriggerSTURawStream.cxx:289 AliEMCALTriggerSTURawStream.cxx:290 AliEMCALTriggerSTURawStream.cxx:291 AliEMCALTriggerSTURawStream.cxx:292 AliEMCALTriggerSTURawStream.cxx:293 AliEMCALTriggerSTURawStream.cxx:294 AliEMCALTriggerSTURawStream.cxx:295 AliEMCALTriggerSTURawStream.cxx:296 AliEMCALTriggerSTURawStream.cxx:297 AliEMCALTriggerSTURawStream.cxx:298 AliEMCALTriggerSTURawStream.cxx:299 AliEMCALTriggerSTURawStream.cxx:300 AliEMCALTriggerSTURawStream.cxx:301 AliEMCALTriggerSTURawStream.cxx:302 AliEMCALTriggerSTURawStream.cxx:303 AliEMCALTriggerSTURawStream.cxx:304 AliEMCALTriggerSTURawStream.cxx:305 AliEMCALTriggerSTURawStream.cxx:306 AliEMCALTriggerSTURawStream.cxx:307 AliEMCALTriggerSTURawStream.cxx:308 AliEMCALTriggerSTURawStream.cxx:309 AliEMCALTriggerSTURawStream.cxx:310 AliEMCALTriggerSTURawStream.cxx:311 AliEMCALTriggerSTURawStream.cxx:312 AliEMCALTriggerSTURawStream.cxx:313 AliEMCALTriggerSTURawStream.cxx:314 AliEMCALTriggerSTURawStream.cxx:315 AliEMCALTriggerSTURawStream.cxx:316 AliEMCALTriggerSTURawStream.cxx:317 AliEMCALTriggerSTURawStream.cxx:318 AliEMCALTriggerSTURawStream.cxx:319 AliEMCALTriggerSTURawStream.cxx:320 AliEMCALTriggerSTURawStream.cxx:321 AliEMCALTriggerSTURawStream.cxx:322 AliEMCALTriggerSTURawStream.cxx:323 AliEMCALTriggerSTURawStream.cxx:324 AliEMCALTriggerSTURawStream.cxx:325 AliEMCALTriggerSTURawStream.cxx:326 AliEMCALTriggerSTURawStream.cxx:327 AliEMCALTriggerSTURawStream.cxx:328 AliEMCALTriggerSTURawStream.cxx:329 AliEMCALTriggerSTURawStream.cxx:330 AliEMCALTriggerSTURawStream.cxx:331 AliEMCALTriggerSTURawStream.cxx:332 AliEMCALTriggerSTURawStream.cxx:333 AliEMCALTriggerSTURawStream.cxx:334 AliEMCALTriggerSTURawStream.cxx:335 AliEMCALTriggerSTURawStream.cxx:336 AliEMCALTriggerSTURawStream.cxx:337 AliEMCALTriggerSTURawStream.cxx:338 AliEMCALTriggerSTURawStream.cxx:339 AliEMCALTriggerSTURawStream.cxx:340 AliEMCALTriggerSTURawStream.cxx:341 AliEMCALTriggerSTURawStream.cxx:342 AliEMCALTriggerSTURawStream.cxx:343 AliEMCALTriggerSTURawStream.cxx:344 AliEMCALTriggerSTURawStream.cxx:345 AliEMCALTriggerSTURawStream.cxx:346 AliEMCALTriggerSTURawStream.cxx:347 AliEMCALTriggerSTURawStream.cxx:348 AliEMCALTriggerSTURawStream.cxx:349 AliEMCALTriggerSTURawStream.cxx:350 AliEMCALTriggerSTURawStream.cxx:351 AliEMCALTriggerSTURawStream.cxx:352 AliEMCALTriggerSTURawStream.cxx:353 AliEMCALTriggerSTURawStream.cxx:354 AliEMCALTriggerSTURawStream.cxx:355 AliEMCALTriggerSTURawStream.cxx:356 AliEMCALTriggerSTURawStream.cxx:357 AliEMCALTriggerSTURawStream.cxx:358 AliEMCALTriggerSTURawStream.cxx:359 AliEMCALTriggerSTURawStream.cxx:360 AliEMCALTriggerSTURawStream.cxx:361 AliEMCALTriggerSTURawStream.cxx:362 AliEMCALTriggerSTURawStream.cxx:363 AliEMCALTriggerSTURawStream.cxx:364 AliEMCALTriggerSTURawStream.cxx:365 AliEMCALTriggerSTURawStream.cxx:366 AliEMCALTriggerSTURawStream.cxx:367 AliEMCALTriggerSTURawStream.cxx:368 AliEMCALTriggerSTURawStream.cxx:369 AliEMCALTriggerSTURawStream.cxx:370 AliEMCALTriggerSTURawStream.cxx:371 AliEMCALTriggerSTURawStream.cxx:372 AliEMCALTriggerSTURawStream.cxx:373 AliEMCALTriggerSTURawStream.cxx:374 AliEMCALTriggerSTURawStream.cxx:375 AliEMCALTriggerSTURawStream.cxx:376 AliEMCALTriggerSTURawStream.cxx:377 AliEMCALTriggerSTURawStream.cxx:378 AliEMCALTriggerSTURawStream.cxx:379 AliEMCALTriggerSTURawStream.cxx:380 AliEMCALTriggerSTURawStream.cxx:381 AliEMCALTriggerSTURawStream.cxx:382 AliEMCALTriggerSTURawStream.cxx:383 AliEMCALTriggerSTURawStream.cxx:384 AliEMCALTriggerSTURawStream.cxx:385 AliEMCALTriggerSTURawStream.cxx:386 AliEMCALTriggerSTURawStream.cxx:387 AliEMCALTriggerSTURawStream.cxx:388 AliEMCALTriggerSTURawStream.cxx:389 AliEMCALTriggerSTURawStream.cxx:390 AliEMCALTriggerSTURawStream.cxx:391 AliEMCALTriggerSTURawStream.cxx:392 AliEMCALTriggerSTURawStream.cxx:393 AliEMCALTriggerSTURawStream.cxx:394 AliEMCALTriggerSTURawStream.cxx:395 AliEMCALTriggerSTURawStream.cxx:396 AliEMCALTriggerSTURawStream.cxx:397 AliEMCALTriggerSTURawStream.cxx:398 AliEMCALTriggerSTURawStream.cxx:399 AliEMCALTriggerSTURawStream.cxx:400 AliEMCALTriggerSTURawStream.cxx:401 AliEMCALTriggerSTURawStream.cxx:402 AliEMCALTriggerSTURawStream.cxx:403 AliEMCALTriggerSTURawStream.cxx:404 AliEMCALTriggerSTURawStream.cxx:405 AliEMCALTriggerSTURawStream.cxx:406 AliEMCALTriggerSTURawStream.cxx:407 AliEMCALTriggerSTURawStream.cxx:408 AliEMCALTriggerSTURawStream.cxx:409 AliEMCALTriggerSTURawStream.cxx:410 AliEMCALTriggerSTURawStream.cxx:411 AliEMCALTriggerSTURawStream.cxx:412 AliEMCALTriggerSTURawStream.cxx:413 AliEMCALTriggerSTURawStream.cxx:414 AliEMCALTriggerSTURawStream.cxx:415 AliEMCALTriggerSTURawStream.cxx:416 AliEMCALTriggerSTURawStream.cxx:417 AliEMCALTriggerSTURawStream.cxx:418 AliEMCALTriggerSTURawStream.cxx:419 AliEMCALTriggerSTURawStream.cxx:420 AliEMCALTriggerSTURawStream.cxx:421 AliEMCALTriggerSTURawStream.cxx:422 AliEMCALTriggerSTURawStream.cxx:423 AliEMCALTriggerSTURawStream.cxx:424 AliEMCALTriggerSTURawStream.cxx:425 AliEMCALTriggerSTURawStream.cxx:426 AliEMCALTriggerSTURawStream.cxx:427 AliEMCALTriggerSTURawStream.cxx:428 AliEMCALTriggerSTURawStream.cxx:429 AliEMCALTriggerSTURawStream.cxx:430 AliEMCALTriggerSTURawStream.cxx:431 AliEMCALTriggerSTURawStream.cxx:432 AliEMCALTriggerSTURawStream.cxx:433 AliEMCALTriggerSTURawStream.cxx:434 AliEMCALTriggerSTURawStream.cxx:435 AliEMCALTriggerSTURawStream.cxx:436 AliEMCALTriggerSTURawStream.cxx:437 AliEMCALTriggerSTURawStream.cxx:438 AliEMCALTriggerSTURawStream.cxx:439 AliEMCALTriggerSTURawStream.cxx:440 AliEMCALTriggerSTURawStream.cxx:441 AliEMCALTriggerSTURawStream.cxx:442 AliEMCALTriggerSTURawStream.cxx:443 AliEMCALTriggerSTURawStream.cxx:444 AliEMCALTriggerSTURawStream.cxx:445 AliEMCALTriggerSTURawStream.cxx:446 AliEMCALTriggerSTURawStream.cxx:447 AliEMCALTriggerSTURawStream.cxx:448 AliEMCALTriggerSTURawStream.cxx:449 AliEMCALTriggerSTURawStream.cxx:450 AliEMCALTriggerSTURawStream.cxx:451 AliEMCALTriggerSTURawStream.cxx:452 AliEMCALTriggerSTURawStream.cxx:453 AliEMCALTriggerSTURawStream.cxx:454 AliEMCALTriggerSTURawStream.cxx:455 AliEMCALTriggerSTURawStream.cxx:456 AliEMCALTriggerSTURawStream.cxx:457 AliEMCALTriggerSTURawStream.cxx:458 AliEMCALTriggerSTURawStream.cxx:459 AliEMCALTriggerSTURawStream.cxx:460 AliEMCALTriggerSTURawStream.cxx:461 AliEMCALTriggerSTURawStream.cxx:462 AliEMCALTriggerSTURawStream.cxx:463 AliEMCALTriggerSTURawStream.cxx:464 AliEMCALTriggerSTURawStream.cxx:465 AliEMCALTriggerSTURawStream.cxx:466 AliEMCALTriggerSTURawStream.cxx:467 AliEMCALTriggerSTURawStream.cxx:468 AliEMCALTriggerSTURawStream.cxx:469 AliEMCALTriggerSTURawStream.cxx:470 AliEMCALTriggerSTURawStream.cxx:471 AliEMCALTriggerSTURawStream.cxx:472 AliEMCALTriggerSTURawStream.cxx:473 AliEMCALTriggerSTURawStream.cxx:474 AliEMCALTriggerSTURawStream.cxx:475 AliEMCALTriggerSTURawStream.cxx:476 AliEMCALTriggerSTURawStream.cxx:477 AliEMCALTriggerSTURawStream.cxx:478 AliEMCALTriggerSTURawStream.cxx:479 AliEMCALTriggerSTURawStream.cxx:480 AliEMCALTriggerSTURawStream.cxx:481 AliEMCALTriggerSTURawStream.cxx:482 AliEMCALTriggerSTURawStream.cxx:483 AliEMCALTriggerSTURawStream.cxx:484 AliEMCALTriggerSTURawStream.cxx:485 AliEMCALTriggerSTURawStream.cxx:486 AliEMCALTriggerSTURawStream.cxx:487 AliEMCALTriggerSTURawStream.cxx:488 AliEMCALTriggerSTURawStream.cxx:489 AliEMCALTriggerSTURawStream.cxx:490 AliEMCALTriggerSTURawStream.cxx:491 AliEMCALTriggerSTURawStream.cxx:492 AliEMCALTriggerSTURawStream.cxx:493 AliEMCALTriggerSTURawStream.cxx:494 AliEMCALTriggerSTURawStream.cxx:495 AliEMCALTriggerSTURawStream.cxx:496 AliEMCALTriggerSTURawStream.cxx:497 AliEMCALTriggerSTURawStream.cxx:498 AliEMCALTriggerSTURawStream.cxx:499 AliEMCALTriggerSTURawStream.cxx:500 AliEMCALTriggerSTURawStream.cxx:501 AliEMCALTriggerSTURawStream.cxx:502 AliEMCALTriggerSTURawStream.cxx:503 AliEMCALTriggerSTURawStream.cxx:504 AliEMCALTriggerSTURawStream.cxx:505 AliEMCALTriggerSTURawStream.cxx:506 AliEMCALTriggerSTURawStream.cxx:507 AliEMCALTriggerSTURawStream.cxx:508 AliEMCALTriggerSTURawStream.cxx:509 AliEMCALTriggerSTURawStream.cxx:510 AliEMCALTriggerSTURawStream.cxx:511 AliEMCALTriggerSTURawStream.cxx:512 AliEMCALTriggerSTURawStream.cxx:513 AliEMCALTriggerSTURawStream.cxx:514 AliEMCALTriggerSTURawStream.cxx:515 AliEMCALTriggerSTURawStream.cxx:516 AliEMCALTriggerSTURawStream.cxx:517 AliEMCALTriggerSTURawStream.cxx:518 AliEMCALTriggerSTURawStream.cxx:519 AliEMCALTriggerSTURawStream.cxx:520 AliEMCALTriggerSTURawStream.cxx:521 AliEMCALTriggerSTURawStream.cxx:522 AliEMCALTriggerSTURawStream.cxx:523 AliEMCALTriggerSTURawStream.cxx:524 AliEMCALTriggerSTURawStream.cxx:525 AliEMCALTriggerSTURawStream.cxx:526 AliEMCALTriggerSTURawStream.cxx:527 AliEMCALTriggerSTURawStream.cxx:528 AliEMCALTriggerSTURawStream.cxx:529 AliEMCALTriggerSTURawStream.cxx:530 AliEMCALTriggerSTURawStream.cxx:531 AliEMCALTriggerSTURawStream.cxx:532 AliEMCALTriggerSTURawStream.cxx:533 AliEMCALTriggerSTURawStream.cxx:534 AliEMCALTriggerSTURawStream.cxx:535 AliEMCALTriggerSTURawStream.cxx:536 AliEMCALTriggerSTURawStream.cxx:537 AliEMCALTriggerSTURawStream.cxx:538 AliEMCALTriggerSTURawStream.cxx:539 AliEMCALTriggerSTURawStream.cxx:540 AliEMCALTriggerSTURawStream.cxx:541 AliEMCALTriggerSTURawStream.cxx:542 AliEMCALTriggerSTURawStream.cxx:543 AliEMCALTriggerSTURawStream.cxx:544 AliEMCALTriggerSTURawStream.cxx:545 AliEMCALTriggerSTURawStream.cxx:546 AliEMCALTriggerSTURawStream.cxx:547 AliEMCALTriggerSTURawStream.cxx:548 AliEMCALTriggerSTURawStream.cxx:549 AliEMCALTriggerSTURawStream.cxx:550 AliEMCALTriggerSTURawStream.cxx:551 AliEMCALTriggerSTURawStream.cxx:552 AliEMCALTriggerSTURawStream.cxx:553 AliEMCALTriggerSTURawStream.cxx:554 AliEMCALTriggerSTURawStream.cxx:555 AliEMCALTriggerSTURawStream.cxx:556 AliEMCALTriggerSTURawStream.cxx:557 AliEMCALTriggerSTURawStream.cxx:558 AliEMCALTriggerSTURawStream.cxx:559 AliEMCALTriggerSTURawStream.cxx:560 AliEMCALTriggerSTURawStream.cxx:561 AliEMCALTriggerSTURawStream.cxx:562 AliEMCALTriggerSTURawStream.cxx:563 AliEMCALTriggerSTURawStream.cxx:564 AliEMCALTriggerSTURawStream.cxx:565 AliEMCALTriggerSTURawStream.cxx:566 AliEMCALTriggerSTURawStream.cxx:567 AliEMCALTriggerSTURawStream.cxx:568 AliEMCALTriggerSTURawStream.cxx:569 AliEMCALTriggerSTURawStream.cxx:570 AliEMCALTriggerSTURawStream.cxx:571 AliEMCALTriggerSTURawStream.cxx:572 AliEMCALTriggerSTURawStream.cxx:573 AliEMCALTriggerSTURawStream.cxx:574 AliEMCALTriggerSTURawStream.cxx:575 AliEMCALTriggerSTURawStream.cxx:576 AliEMCALTriggerSTURawStream.cxx:577 AliEMCALTriggerSTURawStream.cxx:578 AliEMCALTriggerSTURawStream.cxx:579 AliEMCALTriggerSTURawStream.cxx:580 AliEMCALTriggerSTURawStream.cxx:581 AliEMCALTriggerSTURawStream.cxx:582 AliEMCALTriggerSTURawStream.cxx:583 AliEMCALTriggerSTURawStream.cxx:584 AliEMCALTriggerSTURawStream.cxx:585 AliEMCALTriggerSTURawStream.cxx:586 AliEMCALTriggerSTURawStream.cxx:587 AliEMCALTriggerSTURawStream.cxx:588 AliEMCALTriggerSTURawStream.cxx:589 AliEMCALTriggerSTURawStream.cxx:590 AliEMCALTriggerSTURawStream.cxx:591 AliEMCALTriggerSTURawStream.cxx:592 AliEMCALTriggerSTURawStream.cxx:593 AliEMCALTriggerSTURawStream.cxx:594