#include "AliFMDAltroMapping.h"
#include "AliFMDParameters.h"
#include "AliLog.h"
#include "AliFMDDebug.h"
#include <iostream>
#include <iomanip>
ClassImp(AliFMDAltroMapping)
#if 0
;
#endif
AliFMDAltroMapping::AliFMDAltroMapping()
{
}
Bool_t
AliFMDAltroMapping::ReadMapping()
{
return kTRUE;
}
Bool_t
AliFMDAltroMapping::CreateInvMapping()
{
return kTRUE;
}
Bool_t
AliFMDAltroMapping::Channel2StripBase(UShort_t board, UShort_t altro,
UShort_t chan, Char_t& ring,
UShort_t& sec, Short_t& str) const
{
ring = Board2Ring(board);
UShort_t fsec = board < 16 ? 1 : 0;
switch (ring) {
case 'i':
case 'I':
sec = (fsec * 10 + (altro < 1 ? 0 : altro < 2 ? 4 : 6)
+ 2 * (chan / 8) + chan % 2);
str = ((chan % 8) / 2) * 128;
break;
case 'o':
case 'O':
sec = (fsec * 20 + (altro < 1 ? 0 : altro < 2 ? 8 : 12)
+ 2 * (chan / 4) + chan % 2);
str = ((chan % 4) / 2) * 128;
break;
}
if (sec % 2) str += 127;
return kTRUE;
}
void
AliFMDAltroMapping::Timebin2Strip(UShort_t sec,
UShort_t timebin,
UShort_t preSamples,
UShort_t sampleRate,
Short_t& stripOff,
UShort_t& sample) const
{
UShort_t t = (timebin - preSamples);
sample = (t % sampleRate);
t -= sample;
stripOff = (sec % 2 ? -1 : 1) * t / sampleRate;
#if 0
AliInfo(Form("[%2d],%4d -> %d * (%4d - %d)-((%4d - %d) %% %d) / %d = %3d,%d",
sec,timebin, (sec % 2 ? -1 : 1), timebin, preSamples,
timebin, preSamples, sampleRate, sampleRate, stripOff, sample));
#endif
}
Bool_t
AliFMDAltroMapping::Hardware2Detector(UShort_t ddl, UShort_t board,
UShort_t altro, UShort_t chan,
UShort_t timebin, UShort_t preSamples,
UShort_t sampleRate,
UShort_t& det, Char_t& ring,
UShort_t& sec, Short_t& str,
UShort_t& sam) const
{
Short_t baseStrip, stripOffset, tdet = DDL2Detector(ddl);
if (tdet < 0) return kFALSE;
det = tdet;
if (!Channel2StripBase(board, altro, chan, ring, sec, baseStrip))
return kFALSE;
Timebin2Strip(sec, timebin, preSamples, sampleRate, stripOffset, sam);
{
AliFMDDebug(50, ("0x%x/0x%02x/0x%x/0x%x/%04d -> FMD%d%c[%2d,%3d]-%d "
"(pre=%d,rate=%d,base=%3d,off=%3d)",
ddl,
board,
altro,
chan,
timebin,
det,
ring,
sec,
str,
sam,
preSamples,
sampleRate,
baseStrip,
stripOffset));
}
str = baseStrip + stripOffset;
return kTRUE;
}
Bool_t
AliFMDAltroMapping::Hardware2Detector(UShort_t ddl, UShort_t addr,
UShort_t timebin, UShort_t preSamples,
UShort_t sampleRate,
UShort_t& det, Char_t& ring,
UShort_t& sec, Short_t& str,
UShort_t& sam) const
{
UShort_t board, altro, chan;
ChannelAddress(addr, board, altro, chan);
return Hardware2Detector(ddl, board, altro, chan,
timebin, preSamples, sampleRate,
det, ring, sec, str, sam);
}
Short_t
AliFMDAltroMapping::Sector2Board(Char_t ring, UShort_t sec) const
{
switch (ring) {
case 'I':
case 'i':
return (sec < 10 ? 16 : 0);
case 'O':
case 'o':
return (sec < 20 ? 16 : 0) + 1;
}
return -1;
}
Bool_t
AliFMDAltroMapping::Strip2Channel(Char_t ring, UShort_t sec,
UShort_t str, UShort_t& board,
UShort_t& altro, UShort_t& chan) const
{
UInt_t tmp = 0;
UShort_t fboard = 0;
switch (ring) {
case 'I':
case 'i':
fboard = sec < 10 ? 1 : 0;
board = fboard * 16;
altro = (sec % 10) < 4 ? 0 : (sec % 10) < 6 ? 1 : 2;
tmp = (sec % 10) - (altro == 0 ? 0 : altro == 1 ? 4 : 6);
chan = 2 * (str / 128) + (sec % 2) + ((tmp / 2) % 2) * 8;
break;
case 'O':
case 'o':
fboard = sec < 20 ? 1 : 0;
board = fboard * 16 + 1;
altro = (sec % 20) < 8 ? 0 : (sec % 20) < 12 ? 1 : 2;
tmp = (sec % 20) - (altro == 0 ? 0 : altro == 1 ? 8 : 12);
chan = 2 * (str / 128) + (sec % 2) + ((tmp / 2) % 4) * 4;
break;
}
return kTRUE;
}
UShort_t
AliFMDAltroMapping::Strip2Timebin(UShort_t sec, UShort_t strip,
UShort_t sam, UShort_t preSamples,
UShort_t sampleRate) const
{
UShort_t timebin = preSamples;
if (sec % 2) {
timebin += (127 - (strip % 128)) * sampleRate;
#if 0
AliInfo(Form("[%2d,%3d]-%d (%d)-> %d + (127 - (%d %% 128)) * %d + %d = %d",
sec, strip, sam, (strip % 128),
preSamples, strip, sampleRate, sam,
timebin+sam));
#endif
}
else {
timebin += (strip % 128) * sampleRate;
#if 0
AliInfo(Form("[%2d,%3d]-%d (%d)-> %d + (%d %% 128) * %d + %d = %d",
sec, strip, sam, (strip % 128),
preSamples, strip, sampleRate, sam, timebin+sam));
#endif
}
timebin += sam;
return timebin;
}
Bool_t
AliFMDAltroMapping::Detector2Hardware(UShort_t det, Char_t ring,
UShort_t sec, UShort_t str,
UShort_t sam,
UShort_t preSamples,
UShort_t sampleRate,
UShort_t& ddl, UShort_t& board,
UShort_t& altro, UShort_t& channel,
UShort_t& timebin) const
{
ddl = Detector2DDL(det);
if (!Strip2Channel(ring,sec,str,board,altro,channel)) return kFALSE;
timebin = Strip2Timebin(sec, str, sam, preSamples, sampleRate);
return kTRUE;
}
Bool_t
AliFMDAltroMapping::Detector2Hardware(UShort_t det, Char_t ring,
UShort_t sec, UShort_t str,
UShort_t sam,
UShort_t preSamples, UShort_t sampleRate,
UShort_t& ddl, UShort_t& hwaddr,
UShort_t& timebin) const
{
UShort_t board = 0;
UShort_t altro = 0;
UShort_t chan = 0;
if (!Detector2Hardware(det, ring, sec, str, sam,
preSamples, sampleRate,
ddl, board, altro, chan, timebin)) return kFALSE;
hwaddr = ChannelAddress(board, altro, chan);
return kTRUE;
}
UInt_t
AliFMDAltroMapping::ChannelAddress(UShort_t board, UShort_t altro,
UShort_t channel) const
{
return (((board & 0x1F) << 7) | ((altro & 0x7) << 4) | (channel & 0xF));
}
void
AliFMDAltroMapping::ChannelAddress(UShort_t hwaddr, UShort_t& board,
UShort_t& altro, UShort_t& channel) const
{
board = ((hwaddr >> 7) & 0x1F);
altro = ((hwaddr >> 4) & 0x07);
channel = ((hwaddr >> 0) & 0x0F);
}
Int_t
AliFMDAltroMapping::GetHWAddress(Int_t sec, Int_t str, Int_t ring)
{
Char_t r = Char_t(ring);
UShort_t board, altro, channel;
Strip2Channel(r, sec, str, board, altro, channel);
return ChannelAddress(board, altro, channel);
}
Int_t
AliFMDAltroMapping::GetPadRow(Int_t hwaddr) const
{
Char_t ring;
UShort_t board, altro, channel, sector;
Short_t baseStrip;
ChannelAddress(hwaddr, board, altro, channel);
if (!Channel2StripBase(board, altro, channel, ring, sector, baseStrip))
return -1;
return Int_t(sector);
}
Int_t
AliFMDAltroMapping::GetPad(Int_t hwaddr) const
{
Char_t ring;
UShort_t board, altro, channel, sector;
Short_t baseStrip;
ChannelAddress(hwaddr, board, altro, channel);
if (!Channel2StripBase(board, altro, channel, ring, sector, baseStrip))
return -1;
return Int_t(baseStrip);
}
Int_t
AliFMDAltroMapping::GetSector(Int_t hwaddr) const
{
Char_t ring;
UShort_t board, altro, channel, sector;
Short_t baseStrip;
ChannelAddress(hwaddr, board, altro, channel);
if (!Channel2StripBase(board, altro, channel, ring, sector, baseStrip))
return -1;
return Int_t(ring);
}
void
AliFMDAltroMapping::Print(Option_t* option) const
{
TString opt(option);
opt.ToLower();
UShort_t ddl, board, chip, chan, addr;
UShort_t det, sec;
Short_t strBase;
Char_t rng;
if (opt.Contains("hw") || opt.Contains("hardware")) {
std::cout << " DDL | Board | Chip | Chan | Address | Detector\n"
<< "=====+=======+======+======+=========+==============="
<< std::endl;
for (ddl = 0; ddl <= 2; ddl++) {
Int_t boards[] = { 0, 16, (ddl == 0 ? 32 : 1), 17, 32};
Int_t* ptr = boards;
det = DDL2Detector(ddl);
while ((board = *(ptr++)) < 32) {
for (chip = 0; chip <= 2; chip++) {
UShort_t nchan = (chip == 1 ? 8 : 16);
for (chan = 0; chan < nchan; chan++) {
Channel2StripBase(board, chip, chan, rng, sec, strBase);
addr = ChannelAddress(board, chip, chan);
std::cout << " "
<< std::setw(3) << ddl << " | "
<< std::setfill('0') << std::hex << " 0x"
<< std::setw(2) << board << " | 0x"
<< std::setw(1) << chip << " | 0x"
<< std::setw(1) << chan << " | 0x"
<< std::setw(3) << addr << " | "
<< std::setfill(' ') << std::dec << " FMD"
<< std::setw(1) << det << rng << "["
<< std::setw(2) << sec << ","
<< std::setw(3) << strBase << "]" << std::endl;
}
if (chip == 2 && *ptr >= 32) continue;
std::cout << " + + + + + "
<< std::endl;
}
}
std::cout << "-----+-------+------+------+---------+---------------"
<< std::endl;
}
}
if (opt.Contains("det")) {
std::cout << " Detector | DDL | Board | Chip | Chan | Address\n"
<< "===============+=====+=======+======+======+========"
<< std::endl;
for (det = 1; det <= 3; det++) {
Char_t rings[] = { 'I', (det == 1 ? '\0' : 'O'),'\0' };
Char_t* ptr = rings;
ddl = Detector2DDL(det);
while ((rng = *(ptr++)) != '\0') {
UShort_t nsec = (rng == 'I' ? 20 : 40);
UShort_t nstr = (rng == 'I' ? 512 : 256);
for (sec = 0; sec < nsec; sec++) {
for (strBase = 0; strBase < nstr; strBase += 128) {
Strip2Channel(rng, sec, strBase, board, chip, chan);
addr = ChannelAddress(board, chip, chan);
std::cout << std::setfill(' ') << std::dec << " FMD"
<< std::setw(1) << det << rng << "["
<< std::setw(2) << sec << ","
<< std::setw(3) << strBase << "] | "
<< std::setw(3) << ddl << " | 0x"
<< std::setfill('0') << std::hex
<< std::setw(2) << board << " | 0x"
<< std::setw(1) << chip << " | 0x"
<< std::setw(1) << chan << " | 0x"
<< std::setw(3) << addr << std::endl;
}
}
if (*ptr == '\0') continue;
std::cout << " + + + + + "
<< std::endl;
}
std::cout << "---------------+-----+-------+------+------+--------"
<< std::endl;
}
}
}
AliFMDAltroMapping.cxx:10 AliFMDAltroMapping.cxx:11 AliFMDAltroMapping.cxx:12 AliFMDAltroMapping.cxx:13 AliFMDAltroMapping.cxx:14 AliFMDAltroMapping.cxx:15 AliFMDAltroMapping.cxx:16 AliFMDAltroMapping.cxx:17 AliFMDAltroMapping.cxx:18 AliFMDAltroMapping.cxx:19 AliFMDAltroMapping.cxx:20 AliFMDAltroMapping.cxx:21 AliFMDAltroMapping.cxx:22 AliFMDAltroMapping.cxx:23 AliFMDAltroMapping.cxx:24 AliFMDAltroMapping.cxx:25 AliFMDAltroMapping.cxx:26 AliFMDAltroMapping.cxx:27 AliFMDAltroMapping.cxx:28 AliFMDAltroMapping.cxx:29 AliFMDAltroMapping.cxx:30 AliFMDAltroMapping.cxx:31 AliFMDAltroMapping.cxx:32 AliFMDAltroMapping.cxx:33 AliFMDAltroMapping.cxx:34 AliFMDAltroMapping.cxx:35 AliFMDAltroMapping.cxx:36 AliFMDAltroMapping.cxx:37 AliFMDAltroMapping.cxx:38 AliFMDAltroMapping.cxx:39 AliFMDAltroMapping.cxx:40 AliFMDAltroMapping.cxx:41 AliFMDAltroMapping.cxx:42 AliFMDAltroMapping.cxx:43 AliFMDAltroMapping.cxx:44 AliFMDAltroMapping.cxx:45 AliFMDAltroMapping.cxx:46 AliFMDAltroMapping.cxx:47 AliFMDAltroMapping.cxx:48 AliFMDAltroMapping.cxx:49 AliFMDAltroMapping.cxx:50 AliFMDAltroMapping.cxx:51 AliFMDAltroMapping.cxx:52 AliFMDAltroMapping.cxx:53 AliFMDAltroMapping.cxx:54 AliFMDAltroMapping.cxx:55 AliFMDAltroMapping.cxx:56 AliFMDAltroMapping.cxx:57 AliFMDAltroMapping.cxx:58 AliFMDAltroMapping.cxx:59 AliFMDAltroMapping.cxx:60 AliFMDAltroMapping.cxx:61 AliFMDAltroMapping.cxx:62 AliFMDAltroMapping.cxx:63 AliFMDAltroMapping.cxx:64 AliFMDAltroMapping.cxx:65 AliFMDAltroMapping.cxx:66 AliFMDAltroMapping.cxx:67 AliFMDAltroMapping.cxx:68 AliFMDAltroMapping.cxx:69 AliFMDAltroMapping.cxx:70 AliFMDAltroMapping.cxx:71 AliFMDAltroMapping.cxx:72 AliFMDAltroMapping.cxx:73 AliFMDAltroMapping.cxx:74 AliFMDAltroMapping.cxx:75 AliFMDAltroMapping.cxx:76 AliFMDAltroMapping.cxx:77 AliFMDAltroMapping.cxx:78 AliFMDAltroMapping.cxx:79 AliFMDAltroMapping.cxx:80 AliFMDAltroMapping.cxx:81 AliFMDAltroMapping.cxx:82 AliFMDAltroMapping.cxx:83 AliFMDAltroMapping.cxx:84 AliFMDAltroMapping.cxx:85 AliFMDAltroMapping.cxx:86 AliFMDAltroMapping.cxx:87 AliFMDAltroMapping.cxx:88 AliFMDAltroMapping.cxx:89 AliFMDAltroMapping.cxx:90 AliFMDAltroMapping.cxx:91 AliFMDAltroMapping.cxx:92 AliFMDAltroMapping.cxx:93 AliFMDAltroMapping.cxx:94 AliFMDAltroMapping.cxx:95 AliFMDAltroMapping.cxx:96 AliFMDAltroMapping.cxx:97 AliFMDAltroMapping.cxx:98 AliFMDAltroMapping.cxx:99 AliFMDAltroMapping.cxx:100 AliFMDAltroMapping.cxx:101 AliFMDAltroMapping.cxx:102 AliFMDAltroMapping.cxx:103 AliFMDAltroMapping.cxx:104 AliFMDAltroMapping.cxx:105 AliFMDAltroMapping.cxx:106 AliFMDAltroMapping.cxx:107 AliFMDAltroMapping.cxx:108 AliFMDAltroMapping.cxx:109 AliFMDAltroMapping.cxx:110 AliFMDAltroMapping.cxx:111 AliFMDAltroMapping.cxx:112 AliFMDAltroMapping.cxx:113 AliFMDAltroMapping.cxx:114 AliFMDAltroMapping.cxx:115 AliFMDAltroMapping.cxx:116 AliFMDAltroMapping.cxx:117 AliFMDAltroMapping.cxx:118 AliFMDAltroMapping.cxx:119 AliFMDAltroMapping.cxx:120 AliFMDAltroMapping.cxx:121 AliFMDAltroMapping.cxx:122 AliFMDAltroMapping.cxx:123 AliFMDAltroMapping.cxx:124 AliFMDAltroMapping.cxx:125 AliFMDAltroMapping.cxx:126 AliFMDAltroMapping.cxx:127 AliFMDAltroMapping.cxx:128 AliFMDAltroMapping.cxx:129 AliFMDAltroMapping.cxx:130 AliFMDAltroMapping.cxx:131 AliFMDAltroMapping.cxx:132 AliFMDAltroMapping.cxx:133 AliFMDAltroMapping.cxx:134 AliFMDAltroMapping.cxx:135 AliFMDAltroMapping.cxx:136 AliFMDAltroMapping.cxx:137 AliFMDAltroMapping.cxx:138 AliFMDAltroMapping.cxx:139 AliFMDAltroMapping.cxx:140 AliFMDAltroMapping.cxx:141 AliFMDAltroMapping.cxx:142 AliFMDAltroMapping.cxx:143 AliFMDAltroMapping.cxx:144 AliFMDAltroMapping.cxx:145 AliFMDAltroMapping.cxx:146 AliFMDAltroMapping.cxx:147 AliFMDAltroMapping.cxx:148 AliFMDAltroMapping.cxx:149 AliFMDAltroMapping.cxx:150 AliFMDAltroMapping.cxx:151 AliFMDAltroMapping.cxx:152 AliFMDAltroMapping.cxx:153 AliFMDAltroMapping.cxx:154 AliFMDAltroMapping.cxx:155 AliFMDAltroMapping.cxx:156 AliFMDAltroMapping.cxx:157 AliFMDAltroMapping.cxx:158 AliFMDAltroMapping.cxx:159 AliFMDAltroMapping.cxx:160 AliFMDAltroMapping.cxx:161 AliFMDAltroMapping.cxx:162 AliFMDAltroMapping.cxx:163 AliFMDAltroMapping.cxx:164 AliFMDAltroMapping.cxx:165 AliFMDAltroMapping.cxx:166 AliFMDAltroMapping.cxx:167 AliFMDAltroMapping.cxx:168 AliFMDAltroMapping.cxx:169 AliFMDAltroMapping.cxx:170 AliFMDAltroMapping.cxx:171 AliFMDAltroMapping.cxx:172 AliFMDAltroMapping.cxx:173 AliFMDAltroMapping.cxx:174 AliFMDAltroMapping.cxx:175 AliFMDAltroMapping.cxx:176 AliFMDAltroMapping.cxx:177 AliFMDAltroMapping.cxx:178 AliFMDAltroMapping.cxx:179 AliFMDAltroMapping.cxx:180 AliFMDAltroMapping.cxx:181 AliFMDAltroMapping.cxx:182 AliFMDAltroMapping.cxx:183 AliFMDAltroMapping.cxx:184 AliFMDAltroMapping.cxx:185 AliFMDAltroMapping.cxx:186 AliFMDAltroMapping.cxx:187 AliFMDAltroMapping.cxx:188 AliFMDAltroMapping.cxx:189 AliFMDAltroMapping.cxx:190 AliFMDAltroMapping.cxx:191 AliFMDAltroMapping.cxx:192 AliFMDAltroMapping.cxx:193 AliFMDAltroMapping.cxx:194 AliFMDAltroMapping.cxx:195 AliFMDAltroMapping.cxx:196 AliFMDAltroMapping.cxx:197 AliFMDAltroMapping.cxx:198 AliFMDAltroMapping.cxx:199 AliFMDAltroMapping.cxx:200 AliFMDAltroMapping.cxx:201 AliFMDAltroMapping.cxx:202 AliFMDAltroMapping.cxx:203 AliFMDAltroMapping.cxx:204 AliFMDAltroMapping.cxx:205 AliFMDAltroMapping.cxx:206 AliFMDAltroMapping.cxx:207 AliFMDAltroMapping.cxx:208 AliFMDAltroMapping.cxx:209 AliFMDAltroMapping.cxx:210 AliFMDAltroMapping.cxx:211 AliFMDAltroMapping.cxx:212 AliFMDAltroMapping.cxx:213 AliFMDAltroMapping.cxx:214 AliFMDAltroMapping.cxx:215 AliFMDAltroMapping.cxx:216 AliFMDAltroMapping.cxx:217 AliFMDAltroMapping.cxx:218 AliFMDAltroMapping.cxx:219 AliFMDAltroMapping.cxx:220 AliFMDAltroMapping.cxx:221 AliFMDAltroMapping.cxx:222 AliFMDAltroMapping.cxx:223 AliFMDAltroMapping.cxx:224 AliFMDAltroMapping.cxx:225 AliFMDAltroMapping.cxx:226 AliFMDAltroMapping.cxx:227 AliFMDAltroMapping.cxx:228 AliFMDAltroMapping.cxx:229 AliFMDAltroMapping.cxx:230 AliFMDAltroMapping.cxx:231 AliFMDAltroMapping.cxx:232 AliFMDAltroMapping.cxx:233 AliFMDAltroMapping.cxx:234 AliFMDAltroMapping.cxx:235 AliFMDAltroMapping.cxx:236 AliFMDAltroMapping.cxx:237 AliFMDAltroMapping.cxx:238 AliFMDAltroMapping.cxx:239 AliFMDAltroMapping.cxx:240 AliFMDAltroMapping.cxx:241 AliFMDAltroMapping.cxx:242 AliFMDAltroMapping.cxx:243 AliFMDAltroMapping.cxx:244 AliFMDAltroMapping.cxx:245 AliFMDAltroMapping.cxx:246 AliFMDAltroMapping.cxx:247 AliFMDAltroMapping.cxx:248 AliFMDAltroMapping.cxx:249 AliFMDAltroMapping.cxx:250 AliFMDAltroMapping.cxx:251 AliFMDAltroMapping.cxx:252 AliFMDAltroMapping.cxx:253 AliFMDAltroMapping.cxx:254 AliFMDAltroMapping.cxx:255 AliFMDAltroMapping.cxx:256 AliFMDAltroMapping.cxx:257 AliFMDAltroMapping.cxx:258 AliFMDAltroMapping.cxx:259 AliFMDAltroMapping.cxx:260 AliFMDAltroMapping.cxx:261 AliFMDAltroMapping.cxx:262 AliFMDAltroMapping.cxx:263 AliFMDAltroMapping.cxx:264 AliFMDAltroMapping.cxx:265 AliFMDAltroMapping.cxx:266 AliFMDAltroMapping.cxx:267 AliFMDAltroMapping.cxx:268 AliFMDAltroMapping.cxx:269 AliFMDAltroMapping.cxx:270 AliFMDAltroMapping.cxx:271 AliFMDAltroMapping.cxx:272 AliFMDAltroMapping.cxx:273 AliFMDAltroMapping.cxx:274 AliFMDAltroMapping.cxx:275 AliFMDAltroMapping.cxx:276 AliFMDAltroMapping.cxx:277 AliFMDAltroMapping.cxx:278 AliFMDAltroMapping.cxx:279 AliFMDAltroMapping.cxx:280 AliFMDAltroMapping.cxx:281 AliFMDAltroMapping.cxx:282 AliFMDAltroMapping.cxx:283 AliFMDAltroMapping.cxx:284 AliFMDAltroMapping.cxx:285 AliFMDAltroMapping.cxx:286 AliFMDAltroMapping.cxx:287 AliFMDAltroMapping.cxx:288 AliFMDAltroMapping.cxx:289 AliFMDAltroMapping.cxx:290 AliFMDAltroMapping.cxx:291 AliFMDAltroMapping.cxx:292 AliFMDAltroMapping.cxx:293 AliFMDAltroMapping.cxx:294 AliFMDAltroMapping.cxx:295 AliFMDAltroMapping.cxx:296 AliFMDAltroMapping.cxx:297 AliFMDAltroMapping.cxx:298 AliFMDAltroMapping.cxx:299 AliFMDAltroMapping.cxx:300 AliFMDAltroMapping.cxx:301 AliFMDAltroMapping.cxx:302 AliFMDAltroMapping.cxx:303 AliFMDAltroMapping.cxx:304 AliFMDAltroMapping.cxx:305 AliFMDAltroMapping.cxx:306 AliFMDAltroMapping.cxx:307 AliFMDAltroMapping.cxx:308 AliFMDAltroMapping.cxx:309 AliFMDAltroMapping.cxx:310 AliFMDAltroMapping.cxx:311 AliFMDAltroMapping.cxx:312 AliFMDAltroMapping.cxx:313 AliFMDAltroMapping.cxx:314 AliFMDAltroMapping.cxx:315 AliFMDAltroMapping.cxx:316 AliFMDAltroMapping.cxx:317 AliFMDAltroMapping.cxx:318 AliFMDAltroMapping.cxx:319 AliFMDAltroMapping.cxx:320 AliFMDAltroMapping.cxx:321 AliFMDAltroMapping.cxx:322 AliFMDAltroMapping.cxx:323 AliFMDAltroMapping.cxx:324 AliFMDAltroMapping.cxx:325 AliFMDAltroMapping.cxx:326 AliFMDAltroMapping.cxx:327 AliFMDAltroMapping.cxx:328 AliFMDAltroMapping.cxx:329 AliFMDAltroMapping.cxx:330 AliFMDAltroMapping.cxx:331 AliFMDAltroMapping.cxx:332 AliFMDAltroMapping.cxx:333 AliFMDAltroMapping.cxx:334 AliFMDAltroMapping.cxx:335 AliFMDAltroMapping.cxx:336 AliFMDAltroMapping.cxx:337 AliFMDAltroMapping.cxx:338 AliFMDAltroMapping.cxx:339 AliFMDAltroMapping.cxx:340 AliFMDAltroMapping.cxx:341 AliFMDAltroMapping.cxx:342 AliFMDAltroMapping.cxx:343 AliFMDAltroMapping.cxx:344 AliFMDAltroMapping.cxx:345 AliFMDAltroMapping.cxx:346 AliFMDAltroMapping.cxx:347 AliFMDAltroMapping.cxx:348 AliFMDAltroMapping.cxx:349 AliFMDAltroMapping.cxx:350 AliFMDAltroMapping.cxx:351 AliFMDAltroMapping.cxx:352 AliFMDAltroMapping.cxx:353 AliFMDAltroMapping.cxx:354 AliFMDAltroMapping.cxx:355 AliFMDAltroMapping.cxx:356 AliFMDAltroMapping.cxx:357 AliFMDAltroMapping.cxx:358 AliFMDAltroMapping.cxx:359 AliFMDAltroMapping.cxx:360 AliFMDAltroMapping.cxx:361 AliFMDAltroMapping.cxx:362 AliFMDAltroMapping.cxx:363 AliFMDAltroMapping.cxx:364 AliFMDAltroMapping.cxx:365 AliFMDAltroMapping.cxx:366 AliFMDAltroMapping.cxx:367 AliFMDAltroMapping.cxx:368 AliFMDAltroMapping.cxx:369 AliFMDAltroMapping.cxx:370 AliFMDAltroMapping.cxx:371 AliFMDAltroMapping.cxx:372 AliFMDAltroMapping.cxx:373 AliFMDAltroMapping.cxx:374 AliFMDAltroMapping.cxx:375 AliFMDAltroMapping.cxx:376 AliFMDAltroMapping.cxx:377 AliFMDAltroMapping.cxx:378 AliFMDAltroMapping.cxx:379 AliFMDAltroMapping.cxx:380 AliFMDAltroMapping.cxx:381 AliFMDAltroMapping.cxx:382 AliFMDAltroMapping.cxx:383 AliFMDAltroMapping.cxx:384 AliFMDAltroMapping.cxx:385 AliFMDAltroMapping.cxx:386 AliFMDAltroMapping.cxx:387 AliFMDAltroMapping.cxx:388 AliFMDAltroMapping.cxx:389 AliFMDAltroMapping.cxx:390 AliFMDAltroMapping.cxx:391 AliFMDAltroMapping.cxx:392 AliFMDAltroMapping.cxx:393 AliFMDAltroMapping.cxx:394 AliFMDAltroMapping.cxx:395 AliFMDAltroMapping.cxx:396 AliFMDAltroMapping.cxx:397 AliFMDAltroMapping.cxx:398 AliFMDAltroMapping.cxx:399 AliFMDAltroMapping.cxx:400 AliFMDAltroMapping.cxx:401 AliFMDAltroMapping.cxx:402 AliFMDAltroMapping.cxx:403 AliFMDAltroMapping.cxx:404 AliFMDAltroMapping.cxx:405 AliFMDAltroMapping.cxx:406 AliFMDAltroMapping.cxx:407 AliFMDAltroMapping.cxx:408 AliFMDAltroMapping.cxx:409 AliFMDAltroMapping.cxx:410 AliFMDAltroMapping.cxx:411 AliFMDAltroMapping.cxx:412 AliFMDAltroMapping.cxx:413 AliFMDAltroMapping.cxx:414 AliFMDAltroMapping.cxx:415 AliFMDAltroMapping.cxx:416 AliFMDAltroMapping.cxx:417 AliFMDAltroMapping.cxx:418 AliFMDAltroMapping.cxx:419 AliFMDAltroMapping.cxx:420 AliFMDAltroMapping.cxx:421 AliFMDAltroMapping.cxx:422 AliFMDAltroMapping.cxx:423 AliFMDAltroMapping.cxx:424 AliFMDAltroMapping.cxx:425 AliFMDAltroMapping.cxx:426 AliFMDAltroMapping.cxx:427 AliFMDAltroMapping.cxx:428 AliFMDAltroMapping.cxx:429 AliFMDAltroMapping.cxx:430 AliFMDAltroMapping.cxx:431 AliFMDAltroMapping.cxx:432 AliFMDAltroMapping.cxx:433 AliFMDAltroMapping.cxx:434 AliFMDAltroMapping.cxx:435 AliFMDAltroMapping.cxx:436 AliFMDAltroMapping.cxx:437 AliFMDAltroMapping.cxx:438 AliFMDAltroMapping.cxx:439 AliFMDAltroMapping.cxx:440 AliFMDAltroMapping.cxx:441 AliFMDAltroMapping.cxx:442 AliFMDAltroMapping.cxx:443 AliFMDAltroMapping.cxx:444 AliFMDAltroMapping.cxx:445 AliFMDAltroMapping.cxx:446 AliFMDAltroMapping.cxx:447 AliFMDAltroMapping.cxx:448 AliFMDAltroMapping.cxx:449 AliFMDAltroMapping.cxx:450 AliFMDAltroMapping.cxx:451 AliFMDAltroMapping.cxx:452 AliFMDAltroMapping.cxx:453 AliFMDAltroMapping.cxx:454 AliFMDAltroMapping.cxx:455 AliFMDAltroMapping.cxx:456 AliFMDAltroMapping.cxx:457 AliFMDAltroMapping.cxx:458 AliFMDAltroMapping.cxx:459 AliFMDAltroMapping.cxx:460 AliFMDAltroMapping.cxx:461 AliFMDAltroMapping.cxx:462 AliFMDAltroMapping.cxx:463 AliFMDAltroMapping.cxx:464 AliFMDAltroMapping.cxx:465 AliFMDAltroMapping.cxx:466 AliFMDAltroMapping.cxx:467 AliFMDAltroMapping.cxx:468 AliFMDAltroMapping.cxx:469 AliFMDAltroMapping.cxx:470 AliFMDAltroMapping.cxx:471 AliFMDAltroMapping.cxx:472 AliFMDAltroMapping.cxx:473 AliFMDAltroMapping.cxx:474 AliFMDAltroMapping.cxx:475 AliFMDAltroMapping.cxx:476 AliFMDAltroMapping.cxx:477 AliFMDAltroMapping.cxx:478 AliFMDAltroMapping.cxx:479 AliFMDAltroMapping.cxx:480 AliFMDAltroMapping.cxx:481 AliFMDAltroMapping.cxx:482 AliFMDAltroMapping.cxx:483 AliFMDAltroMapping.cxx:484 AliFMDAltroMapping.cxx:485 AliFMDAltroMapping.cxx:486 AliFMDAltroMapping.cxx:487 AliFMDAltroMapping.cxx:488 AliFMDAltroMapping.cxx:489 AliFMDAltroMapping.cxx:490 AliFMDAltroMapping.cxx:491 AliFMDAltroMapping.cxx:492 AliFMDAltroMapping.cxx:493 AliFMDAltroMapping.cxx:494 AliFMDAltroMapping.cxx:495 AliFMDAltroMapping.cxx:496 AliFMDAltroMapping.cxx:497 AliFMDAltroMapping.cxx:498 AliFMDAltroMapping.cxx:499 AliFMDAltroMapping.cxx:500 AliFMDAltroMapping.cxx:501 AliFMDAltroMapping.cxx:502 AliFMDAltroMapping.cxx:503 AliFMDAltroMapping.cxx:504 AliFMDAltroMapping.cxx:505 AliFMDAltroMapping.cxx:506 AliFMDAltroMapping.cxx:507 AliFMDAltroMapping.cxx:508 AliFMDAltroMapping.cxx:509 AliFMDAltroMapping.cxx:510 AliFMDAltroMapping.cxx:511 AliFMDAltroMapping.cxx:512 AliFMDAltroMapping.cxx:513 AliFMDAltroMapping.cxx:514 AliFMDAltroMapping.cxx:515 AliFMDAltroMapping.cxx:516 AliFMDAltroMapping.cxx:517 AliFMDAltroMapping.cxx:518 AliFMDAltroMapping.cxx:519 AliFMDAltroMapping.cxx:520 AliFMDAltroMapping.cxx:521 AliFMDAltroMapping.cxx:522 AliFMDAltroMapping.cxx:523 AliFMDAltroMapping.cxx:524 AliFMDAltroMapping.cxx:525 AliFMDAltroMapping.cxx:526 AliFMDAltroMapping.cxx:527 AliFMDAltroMapping.cxx:528 AliFMDAltroMapping.cxx:529 AliFMDAltroMapping.cxx:530 AliFMDAltroMapping.cxx:531 AliFMDAltroMapping.cxx:532 AliFMDAltroMapping.cxx:533 AliFMDAltroMapping.cxx:534 AliFMDAltroMapping.cxx:535 AliFMDAltroMapping.cxx:536 AliFMDAltroMapping.cxx:537 AliFMDAltroMapping.cxx:538 AliFMDAltroMapping.cxx:539 AliFMDAltroMapping.cxx:540 AliFMDAltroMapping.cxx:541 AliFMDAltroMapping.cxx:542 AliFMDAltroMapping.cxx:543 AliFMDAltroMapping.cxx:544 AliFMDAltroMapping.cxx:545 AliFMDAltroMapping.cxx:546 AliFMDAltroMapping.cxx:547 AliFMDAltroMapping.cxx:548 AliFMDAltroMapping.cxx:549 AliFMDAltroMapping.cxx:550 AliFMDAltroMapping.cxx:551 AliFMDAltroMapping.cxx:552 AliFMDAltroMapping.cxx:553 AliFMDAltroMapping.cxx:554 AliFMDAltroMapping.cxx:555 AliFMDAltroMapping.cxx:556 AliFMDAltroMapping.cxx:557 AliFMDAltroMapping.cxx:558 AliFMDAltroMapping.cxx:559 AliFMDAltroMapping.cxx:560 AliFMDAltroMapping.cxx:561 AliFMDAltroMapping.cxx:562 AliFMDAltroMapping.cxx:563 AliFMDAltroMapping.cxx:564 AliFMDAltroMapping.cxx:565 AliFMDAltroMapping.cxx:566 AliFMDAltroMapping.cxx:567 AliFMDAltroMapping.cxx:568 AliFMDAltroMapping.cxx:569 AliFMDAltroMapping.cxx:570 AliFMDAltroMapping.cxx:571 AliFMDAltroMapping.cxx:572 AliFMDAltroMapping.cxx:573 AliFMDAltroMapping.cxx:574 AliFMDAltroMapping.cxx:575 AliFMDAltroMapping.cxx:576 AliFMDAltroMapping.cxx:577 AliFMDAltroMapping.cxx:578 AliFMDAltroMapping.cxx:579 AliFMDAltroMapping.cxx:580 AliFMDAltroMapping.cxx:581 AliFMDAltroMapping.cxx:582 AliFMDAltroMapping.cxx:583 AliFMDAltroMapping.cxx:584 AliFMDAltroMapping.cxx:585 AliFMDAltroMapping.cxx:586 AliFMDAltroMapping.cxx:587 AliFMDAltroMapping.cxx:588 AliFMDAltroMapping.cxx:589 AliFMDAltroMapping.cxx:590 AliFMDAltroMapping.cxx:591 AliFMDAltroMapping.cxx:592 AliFMDAltroMapping.cxx:593 AliFMDAltroMapping.cxx:594 AliFMDAltroMapping.cxx:595 AliFMDAltroMapping.cxx:596 AliFMDAltroMapping.cxx:597 AliFMDAltroMapping.cxx:598 AliFMDAltroMapping.cxx:599 AliFMDAltroMapping.cxx:600 AliFMDAltroMapping.cxx:601 AliFMDAltroMapping.cxx:602 AliFMDAltroMapping.cxx:603 AliFMDAltroMapping.cxx:604 AliFMDAltroMapping.cxx:605 AliFMDAltroMapping.cxx:606 AliFMDAltroMapping.cxx:607 AliFMDAltroMapping.cxx:608 AliFMDAltroMapping.cxx:609 AliFMDAltroMapping.cxx:610 AliFMDAltroMapping.cxx:611 AliFMDAltroMapping.cxx:612 AliFMDAltroMapping.cxx:613 AliFMDAltroMapping.cxx:614 AliFMDAltroMapping.cxx:615 AliFMDAltroMapping.cxx:616 AliFMDAltroMapping.cxx:617 AliFMDAltroMapping.cxx:618 AliFMDAltroMapping.cxx:619 AliFMDAltroMapping.cxx:620 AliFMDAltroMapping.cxx:621 AliFMDAltroMapping.cxx:622 AliFMDAltroMapping.cxx:623 AliFMDAltroMapping.cxx:624 AliFMDAltroMapping.cxx:625 AliFMDAltroMapping.cxx:626 AliFMDAltroMapping.cxx:627 AliFMDAltroMapping.cxx:628 AliFMDAltroMapping.cxx:629 AliFMDAltroMapping.cxx:630 AliFMDAltroMapping.cxx:631 AliFMDAltroMapping.cxx:632 AliFMDAltroMapping.cxx:633 AliFMDAltroMapping.cxx:634 AliFMDAltroMapping.cxx:635 AliFMDAltroMapping.cxx:636 AliFMDAltroMapping.cxx:637 AliFMDAltroMapping.cxx:638 AliFMDAltroMapping.cxx:639 AliFMDAltroMapping.cxx:640 AliFMDAltroMapping.cxx:641 AliFMDAltroMapping.cxx:642 AliFMDAltroMapping.cxx:643 AliFMDAltroMapping.cxx:644 AliFMDAltroMapping.cxx:645 AliFMDAltroMapping.cxx:646 AliFMDAltroMapping.cxx:647 AliFMDAltroMapping.cxx:648 AliFMDAltroMapping.cxx:649 AliFMDAltroMapping.cxx:650 AliFMDAltroMapping.cxx:651 AliFMDAltroMapping.cxx:652 AliFMDAltroMapping.cxx:653 AliFMDAltroMapping.cxx:654 AliFMDAltroMapping.cxx:655 AliFMDAltroMapping.cxx:656 AliFMDAltroMapping.cxx:657 AliFMDAltroMapping.cxx:658 AliFMDAltroMapping.cxx:659 AliFMDAltroMapping.cxx:660 AliFMDAltroMapping.cxx:661 AliFMDAltroMapping.cxx:662 AliFMDAltroMapping.cxx:663 AliFMDAltroMapping.cxx:664 AliFMDAltroMapping.cxx:665 AliFMDAltroMapping.cxx:666 AliFMDAltroMapping.cxx:667 AliFMDAltroMapping.cxx:668 AliFMDAltroMapping.cxx:669 AliFMDAltroMapping.cxx:670 AliFMDAltroMapping.cxx:671 AliFMDAltroMapping.cxx:672 AliFMDAltroMapping.cxx:673 AliFMDAltroMapping.cxx:674 AliFMDAltroMapping.cxx:675 AliFMDAltroMapping.cxx:676 AliFMDAltroMapping.cxx:677 AliFMDAltroMapping.cxx:678 AliFMDAltroMapping.cxx:679 AliFMDAltroMapping.cxx:680 AliFMDAltroMapping.cxx:681 AliFMDAltroMapping.cxx:682 AliFMDAltroMapping.cxx:683 AliFMDAltroMapping.cxx:684 AliFMDAltroMapping.cxx:685 AliFMDAltroMapping.cxx:686 AliFMDAltroMapping.cxx:687 AliFMDAltroMapping.cxx:688 AliFMDAltroMapping.cxx:689 AliFMDAltroMapping.cxx:690 AliFMDAltroMapping.cxx:691 AliFMDAltroMapping.cxx:692 AliFMDAltroMapping.cxx:693 AliFMDAltroMapping.cxx:694 AliFMDAltroMapping.cxx:695 AliFMDAltroMapping.cxx:696 AliFMDAltroMapping.cxx:697 AliFMDAltroMapping.cxx:698 AliFMDAltroMapping.cxx:699 AliFMDAltroMapping.cxx:700 AliFMDAltroMapping.cxx:701 AliFMDAltroMapping.cxx:702 AliFMDAltroMapping.cxx:703 AliFMDAltroMapping.cxx:704 AliFMDAltroMapping.cxx:705 AliFMDAltroMapping.cxx:706 AliFMDAltroMapping.cxx:707 AliFMDAltroMapping.cxx:708 AliFMDAltroMapping.cxx:709 AliFMDAltroMapping.cxx:710 AliFMDAltroMapping.cxx:711 AliFMDAltroMapping.cxx:712 AliFMDAltroMapping.cxx:713 AliFMDAltroMapping.cxx:714 AliFMDAltroMapping.cxx:715 AliFMDAltroMapping.cxx:716 AliFMDAltroMapping.cxx:717 AliFMDAltroMapping.cxx:718 AliFMDAltroMapping.cxx:719