#include <iostream>
#include <fstream>
#include "AliFMDPreprocessor.h"
#include "AliFMDCalibPedestal.h"
#include "AliFMDCalibGain.h"
#include "AliFMDCalibStripRange.h"
#include "AliFMDCalibSampleRate.h"
#include "AliFMDParameters.h"
#include "AliCDBMetaData.h"
#include "AliCDBManager.h"
#include "AliLog.h"
#include <TTimeStamp.h>
#include <TObjString.h>
#include <TString.h>
#include <TNamed.h>
ClassImp(AliFMDPreprocessor)
#if 0 // Do not remove - here to make Emacs happy
;
#endif
AliFMDPreprocessor::AliFMDPreprocessor(AliShuttleInterface* shuttle)
: AliPreprocessor("FMD", shuttle)
{
AddRunType("PHYSICS");
AddRunType("STANDALONE");
AddRunType("PEDESTAL");
AddRunType("GAIN");
}
Bool_t AliFMDPreprocessor::GetAndCheckFileSources(TList*& list,
Int_t system,
const char* id)
{
list = GetFileSources(system, id);
if (!list) {
TString sys;
switch (system) {
case kDAQ: sys = "DAQ"; break;
case kDCS: sys = "DCS"; break;
default: sys = "unknown"; break;
}
Log(Form("Failed to get file sources for %s/%d", sys.Data(), system));
return kFALSE;
}
return kTRUE;
}
AliCDBEntry*
AliFMDPreprocessor::GetFromCDB(const char* second, const char* third)
{
return GetFromOCDB(second, third);
}
UInt_t AliFMDPreprocessor::Process(TMap* )
{
Bool_t resultPed = kTRUE;
Bool_t resultGain = kTRUE;
Bool_t resultRange = kTRUE;
Bool_t resultRate = kTRUE;
Bool_t resultZero = kTRUE;
Bool_t infoCalib = kTRUE;
Bool_t resultDead = kTRUE;
TString runType(GetRunType());
AliFMDParameters* pars = AliFMDParameters::Instance();
if(runType.Contains("PEDESTAL", TString::kIgnoreCase))
pars->Init(this, false, AliFMDParameters::kAltroMap|AliFMDParameters::kPulseGain);
else if(runType.Contains("GAIN", TString::kIgnoreCase))
pars->Init(this, false, AliFMDParameters::kAltroMap|AliFMDParameters::kPedestal);
else
pars->Init(this, false, AliFMDParameters::kAltroMap);
TList* files = 0;
AliFMDCalibSampleRate* calibRate = 0;
AliFMDCalibStripRange* calibRange = 0;
AliFMDCalibZeroSuppression* calibZero = 0;
if (GetAndCheckFileSources(files, kDAQ,pars->GetConditionsShuttleID()))
infoCalib = GetInfoCalibration(files, calibRate, calibRange, calibZero);
resultRate = (!calibRate ? kFALSE : kTRUE);
resultRange = (!calibRange ? kFALSE : kTRUE);
resultZero = (!calibZero ? kFALSE : kTRUE);
AliFMDCalibPedestal* calibPed = 0;
AliFMDCalibGain* calibGain = 0;
AliFMDCalibDeadMap* calibDead = 0;
if (runType.Contains("PEDESTAL", TString::kIgnoreCase)) {
if (GetAndCheckFileSources(files, kDAQ, pars->GetPedestalShuttleID())) {
if(files->GetSize())
calibPed = GetPedestalCalibration(files);
}
resultPed = (calibPed ? kTRUE : kFALSE);
}
if (runType.Contains("GAIN", TString::kIgnoreCase)) {
if (GetAndCheckFileSources(files, kDAQ, pars->GetGainShuttleID())) {
if(files->GetSize())
calibGain = GetGainCalibration(files);
}
resultGain = (calibGain ? kTRUE : kFALSE);
}
if(runType.Contains("PEDESTAL", TString::kIgnoreCase) || runType.Contains("GAIN", TString::kIgnoreCase))
calibDead = GetDeadChannelMap(calibPed,calibGain);
AliCDBMetaData metaData;
metaData.SetBeamPeriod(0);
metaData.SetResponsible("Hans H. Dalsgaard");
metaData.SetComment("Preprocessor stores pedestals and gains for the FMD.");
if(calibPed) {
resultPed = Store("Calib","Pedestal", calibPed, &metaData, 0, kTRUE);
delete calibPed;
}
if(calibGain) {
resultGain = Store("Calib","PulseGain", calibGain, &metaData, 0, kTRUE);
delete calibGain;
}
if(calibRange) {
resultRange = Store("Calib","StripRange", calibRange, &metaData, 0, kTRUE);
delete calibRange;
}
if(calibRate) {
resultRate = Store("Calib","SampleRate", calibRate, &metaData, 0, kTRUE);
delete calibRate;
}
if(calibZero) {
resultZero = Store("Calib","ZeroSuppression", calibZero,&metaData,0,kTRUE);
delete calibZero;
}
if(calibDead) {
resultDead = Store("Calib","Dead", calibDead,&metaData,0,kTRUE);
delete calibDead;
}
Bool_t success = (resultPed && resultGain && resultRange &&
resultRate && resultZero && resultDead && infoCalib);
Log(Form("FMD preprocessor was %s", (success ? "successful" : "failed")));
return (success ? 0 : 1);
}
Bool_t
AliFMDPreprocessor::GetInfoCalibration(TList* files,
AliFMDCalibSampleRate*& s,
AliFMDCalibStripRange*& r,
AliFMDCalibZeroSuppression*& z)
{
if (!files) return kFALSE;
if (files->GetEntries() <= 0) return kFALSE;
s = new AliFMDCalibSampleRate();
r = new AliFMDCalibStripRange();
z = new AliFMDCalibZeroSuppression();
AliFMDParameters* pars = AliFMDParameters::Instance();
TIter iter(files);
TObjString* fileSource;
while((fileSource = dynamic_cast<TObjString*>(iter.Next()))) {
const Char_t* filename = GetFile(kDAQ, pars->GetConditionsShuttleID(), fileSource->GetName());
std::ifstream in(filename);
if(!in) {
Log(Form("File %s not found!", filename));
continue;
}
s->ReadFromFile(in);
r->ReadFromFile(in);
}
return kTRUE;
}
AliFMDCalibPedestal*
AliFMDPreprocessor::GetPedestalCalibration(const TList* pedFiles)
{
if(!pedFiles) return 0;
AliFMDCalibPedestal* calibPed = new AliFMDCalibPedestal();
AliFMDParameters* pars = AliFMDParameters::Instance();
TIter iter(pedFiles);
TObjString* fileSource;
while((fileSource = dynamic_cast<TObjString*>(iter.Next()))) {
const Char_t* filename = GetFile(kDAQ, pars->GetPedestalShuttleID(),
fileSource->GetName());
std::ifstream in(filename);
if(!in) {
Log(Form("File %s not found!", filename));
continue;
}
int lineno = 0;
char cc;
while((cc = in.peek())!=EOF) {
if(in.bad()) {
Log(Form("Bad read at line %d in %s", lineno, filename));
break;
}
if (cc == '#') {
TString line;
line.ReadLine(in);
lineno++;
if (lineno == 1) {
line.ToLower();
if(!line.Contains(pars->GetPedestalShuttleID())) {
Log(Form("File header is not from pedestal!: %s", line.Data()));
break;
}
Log("File contains data from pedestals");
}
continue;
}
UShort_t det, sec, strip;
Char_t ring;
Float_t ped, noise, mu, sigma, chi2ndf;
Char_t c[8];
in >> det >> c[0]
>> ring >> c[1]
>> sec >> c[2]
>> strip >> c[3]
>> ped >> c[4]
>> noise >> c[5]
>> mu >> c[6]
>> sigma >> c[7]
>> chi2ndf;
lineno++;
calibPed->Set(det,ring,sec,strip,ped,noise);
}
}
return calibPed;
}
AliFMDCalibGain*
AliFMDPreprocessor::GetGainCalibration(const TList* gainFiles)
{
if(!gainFiles) return 0;
AliFMDCalibGain* calibGain = new AliFMDCalibGain();
AliFMDParameters* pars = AliFMDParameters::Instance();
TIter iter(gainFiles);
TObjString* fileSource;
while((fileSource = dynamic_cast<TObjString *>(iter.Next()))) {
const Char_t* filename = GetFile(kDAQ, pars->GetGainShuttleID(),
fileSource->GetName());
std::ifstream in(filename);
if(!in) {
Log(Form("File %s not found!", filename));
continue;
}
int lineno = 0;
char cc;
while((cc = in.peek())!=EOF) {
if(in.bad()) {
Log(Form("Bad read at line %d in %s", lineno, filename));
break;
}
if (cc == '#') {
TString line;
line.ReadLine(in);
lineno++;
if (lineno == 1) {
line.ToLower();
if(!line.Contains(pars->GetGainShuttleID())) {
Log(Form("File header is not from gains!: %s", line.Data()));
break;
}
Log("File contains data from gains");
}
continue;
}
UShort_t det, sec, strip;
Char_t ring;
Float_t gain,error, chi2ndf;
Char_t c[6];
in >> det >> c[0]
>> ring >> c[1]
>> sec >> c[2]
>> strip >> c[3]
>> gain >> c[4]
>> error >> c[5]
>> chi2ndf;
lineno++;
calibGain->Set(det,ring,sec,strip,gain);
}
}
return calibGain;
}
AliFMDCalibDeadMap*
AliFMDPreprocessor::GetDeadChannelMap(AliFMDCalibPedestal* pedcalib,
AliFMDCalibGain* gaincalib) {
AliFMDCalibDeadMap* deadmap = new AliFMDCalibDeadMap(0);
Float_t noise = 0;
Float_t gain = 0;
AliFMDParameters* pars = AliFMDParameters::Instance();
for(UShort_t det=1;det<=3;det++) {
Int_t nRings = (det==1 ? 1 : 2);
for (UShort_t ir = 0; ir < nRings; ir++) {
Char_t ring = (ir == 0 ? 'I' : 'O');
UShort_t nsec = (ir == 0 ? 20 : 40);
UShort_t nstr = (ir == 0 ? 512 : 256);
for(UShort_t sec =0; sec < nsec; sec++) {
for(UShort_t strip = 0; strip < nstr; strip++) {
Bool_t isDead = kFALSE;
if(pedcalib)
noise = pedcalib->Width(det, ring, sec, strip);
else
noise = pars->GetPedestalWidth(det, ring, sec, strip);
if(gaincalib)
gain = gaincalib->Value(det, ring, sec, strip);
else
gain = pars->GetPulseGain(det, ring, sec, strip);
if (gain < 0.5 || gain > 5 || noise > 10 || noise == 0) isDead = kTRUE;
deadmap->operator()(det, ring, sec, strip) = isDead;
}
}
}
}
return deadmap;
}
AliFMDPreprocessor.cxx:10 AliFMDPreprocessor.cxx:11 AliFMDPreprocessor.cxx:12 AliFMDPreprocessor.cxx:13 AliFMDPreprocessor.cxx:14 AliFMDPreprocessor.cxx:15 AliFMDPreprocessor.cxx:16 AliFMDPreprocessor.cxx:17 AliFMDPreprocessor.cxx:18 AliFMDPreprocessor.cxx:19 AliFMDPreprocessor.cxx:20 AliFMDPreprocessor.cxx:21 AliFMDPreprocessor.cxx:22 AliFMDPreprocessor.cxx:23 AliFMDPreprocessor.cxx:24 AliFMDPreprocessor.cxx:25 AliFMDPreprocessor.cxx:26 AliFMDPreprocessor.cxx:27 AliFMDPreprocessor.cxx:28 AliFMDPreprocessor.cxx:29 AliFMDPreprocessor.cxx:30 AliFMDPreprocessor.cxx:31 AliFMDPreprocessor.cxx:32 AliFMDPreprocessor.cxx:33 AliFMDPreprocessor.cxx:34 AliFMDPreprocessor.cxx:35 AliFMDPreprocessor.cxx:36 AliFMDPreprocessor.cxx:37 AliFMDPreprocessor.cxx:38 AliFMDPreprocessor.cxx:39 AliFMDPreprocessor.cxx:40 AliFMDPreprocessor.cxx:41 AliFMDPreprocessor.cxx:42 AliFMDPreprocessor.cxx:43 AliFMDPreprocessor.cxx:44 AliFMDPreprocessor.cxx:45 AliFMDPreprocessor.cxx:46 AliFMDPreprocessor.cxx:47 AliFMDPreprocessor.cxx:48 AliFMDPreprocessor.cxx:49 AliFMDPreprocessor.cxx:50 AliFMDPreprocessor.cxx:51 AliFMDPreprocessor.cxx:52 AliFMDPreprocessor.cxx:53 AliFMDPreprocessor.cxx:54 AliFMDPreprocessor.cxx:55 AliFMDPreprocessor.cxx:56 AliFMDPreprocessor.cxx:57 AliFMDPreprocessor.cxx:58 AliFMDPreprocessor.cxx:59 AliFMDPreprocessor.cxx:60 AliFMDPreprocessor.cxx:61 AliFMDPreprocessor.cxx:62 AliFMDPreprocessor.cxx:63 AliFMDPreprocessor.cxx:64 AliFMDPreprocessor.cxx:65 AliFMDPreprocessor.cxx:66 AliFMDPreprocessor.cxx:67 AliFMDPreprocessor.cxx:68 AliFMDPreprocessor.cxx:69 AliFMDPreprocessor.cxx:70 AliFMDPreprocessor.cxx:71 AliFMDPreprocessor.cxx:72 AliFMDPreprocessor.cxx:73 AliFMDPreprocessor.cxx:74 AliFMDPreprocessor.cxx:75 AliFMDPreprocessor.cxx:76 AliFMDPreprocessor.cxx:77 AliFMDPreprocessor.cxx:78 AliFMDPreprocessor.cxx:79 AliFMDPreprocessor.cxx:80 AliFMDPreprocessor.cxx:81 AliFMDPreprocessor.cxx:82 AliFMDPreprocessor.cxx:83 AliFMDPreprocessor.cxx:84 AliFMDPreprocessor.cxx:85 AliFMDPreprocessor.cxx:86 AliFMDPreprocessor.cxx:87 AliFMDPreprocessor.cxx:88 AliFMDPreprocessor.cxx:89 AliFMDPreprocessor.cxx:90 AliFMDPreprocessor.cxx:91 AliFMDPreprocessor.cxx:92 AliFMDPreprocessor.cxx:93 AliFMDPreprocessor.cxx:94 AliFMDPreprocessor.cxx:95 AliFMDPreprocessor.cxx:96 AliFMDPreprocessor.cxx:97 AliFMDPreprocessor.cxx:98 AliFMDPreprocessor.cxx:99 AliFMDPreprocessor.cxx:100 AliFMDPreprocessor.cxx:101 AliFMDPreprocessor.cxx:102 AliFMDPreprocessor.cxx:103 AliFMDPreprocessor.cxx:104 AliFMDPreprocessor.cxx:105 AliFMDPreprocessor.cxx:106 AliFMDPreprocessor.cxx:107 AliFMDPreprocessor.cxx:108 AliFMDPreprocessor.cxx:109 AliFMDPreprocessor.cxx:110 AliFMDPreprocessor.cxx:111 AliFMDPreprocessor.cxx:112 AliFMDPreprocessor.cxx:113 AliFMDPreprocessor.cxx:114 AliFMDPreprocessor.cxx:115 AliFMDPreprocessor.cxx:116 AliFMDPreprocessor.cxx:117 AliFMDPreprocessor.cxx:118 AliFMDPreprocessor.cxx:119 AliFMDPreprocessor.cxx:120 AliFMDPreprocessor.cxx:121 AliFMDPreprocessor.cxx:122 AliFMDPreprocessor.cxx:123 AliFMDPreprocessor.cxx:124 AliFMDPreprocessor.cxx:125 AliFMDPreprocessor.cxx:126 AliFMDPreprocessor.cxx:127 AliFMDPreprocessor.cxx:128 AliFMDPreprocessor.cxx:129 AliFMDPreprocessor.cxx:130 AliFMDPreprocessor.cxx:131 AliFMDPreprocessor.cxx:132 AliFMDPreprocessor.cxx:133 AliFMDPreprocessor.cxx:134 AliFMDPreprocessor.cxx:135 AliFMDPreprocessor.cxx:136 AliFMDPreprocessor.cxx:137 AliFMDPreprocessor.cxx:138 AliFMDPreprocessor.cxx:139 AliFMDPreprocessor.cxx:140 AliFMDPreprocessor.cxx:141 AliFMDPreprocessor.cxx:142 AliFMDPreprocessor.cxx:143 AliFMDPreprocessor.cxx:144 AliFMDPreprocessor.cxx:145 AliFMDPreprocessor.cxx:146 AliFMDPreprocessor.cxx:147 AliFMDPreprocessor.cxx:148 AliFMDPreprocessor.cxx:149 AliFMDPreprocessor.cxx:150 AliFMDPreprocessor.cxx:151 AliFMDPreprocessor.cxx:152 AliFMDPreprocessor.cxx:153 AliFMDPreprocessor.cxx:154 AliFMDPreprocessor.cxx:155 AliFMDPreprocessor.cxx:156 AliFMDPreprocessor.cxx:157 AliFMDPreprocessor.cxx:158 AliFMDPreprocessor.cxx:159 AliFMDPreprocessor.cxx:160 AliFMDPreprocessor.cxx:161 AliFMDPreprocessor.cxx:162 AliFMDPreprocessor.cxx:163 AliFMDPreprocessor.cxx:164 AliFMDPreprocessor.cxx:165 AliFMDPreprocessor.cxx:166 AliFMDPreprocessor.cxx:167 AliFMDPreprocessor.cxx:168 AliFMDPreprocessor.cxx:169 AliFMDPreprocessor.cxx:170 AliFMDPreprocessor.cxx:171 AliFMDPreprocessor.cxx:172 AliFMDPreprocessor.cxx:173 AliFMDPreprocessor.cxx:174 AliFMDPreprocessor.cxx:175 AliFMDPreprocessor.cxx:176 AliFMDPreprocessor.cxx:177 AliFMDPreprocessor.cxx:178 AliFMDPreprocessor.cxx:179 AliFMDPreprocessor.cxx:180 AliFMDPreprocessor.cxx:181 AliFMDPreprocessor.cxx:182 AliFMDPreprocessor.cxx:183 AliFMDPreprocessor.cxx:184 AliFMDPreprocessor.cxx:185 AliFMDPreprocessor.cxx:186 AliFMDPreprocessor.cxx:187 AliFMDPreprocessor.cxx:188 AliFMDPreprocessor.cxx:189 AliFMDPreprocessor.cxx:190 AliFMDPreprocessor.cxx:191 AliFMDPreprocessor.cxx:192 AliFMDPreprocessor.cxx:193 AliFMDPreprocessor.cxx:194 AliFMDPreprocessor.cxx:195 AliFMDPreprocessor.cxx:196 AliFMDPreprocessor.cxx:197 AliFMDPreprocessor.cxx:198 AliFMDPreprocessor.cxx:199 AliFMDPreprocessor.cxx:200 AliFMDPreprocessor.cxx:201 AliFMDPreprocessor.cxx:202 AliFMDPreprocessor.cxx:203 AliFMDPreprocessor.cxx:204 AliFMDPreprocessor.cxx:205 AliFMDPreprocessor.cxx:206 AliFMDPreprocessor.cxx:207 AliFMDPreprocessor.cxx:208 AliFMDPreprocessor.cxx:209 AliFMDPreprocessor.cxx:210 AliFMDPreprocessor.cxx:211 AliFMDPreprocessor.cxx:212 AliFMDPreprocessor.cxx:213 AliFMDPreprocessor.cxx:214 AliFMDPreprocessor.cxx:215 AliFMDPreprocessor.cxx:216 AliFMDPreprocessor.cxx:217 AliFMDPreprocessor.cxx:218 AliFMDPreprocessor.cxx:219 AliFMDPreprocessor.cxx:220 AliFMDPreprocessor.cxx:221 AliFMDPreprocessor.cxx:222 AliFMDPreprocessor.cxx:223 AliFMDPreprocessor.cxx:224 AliFMDPreprocessor.cxx:225 AliFMDPreprocessor.cxx:226 AliFMDPreprocessor.cxx:227 AliFMDPreprocessor.cxx:228 AliFMDPreprocessor.cxx:229 AliFMDPreprocessor.cxx:230 AliFMDPreprocessor.cxx:231 AliFMDPreprocessor.cxx:232 AliFMDPreprocessor.cxx:233 AliFMDPreprocessor.cxx:234 AliFMDPreprocessor.cxx:235 AliFMDPreprocessor.cxx:236 AliFMDPreprocessor.cxx:237 AliFMDPreprocessor.cxx:238 AliFMDPreprocessor.cxx:239 AliFMDPreprocessor.cxx:240 AliFMDPreprocessor.cxx:241 AliFMDPreprocessor.cxx:242 AliFMDPreprocessor.cxx:243 AliFMDPreprocessor.cxx:244 AliFMDPreprocessor.cxx:245 AliFMDPreprocessor.cxx:246 AliFMDPreprocessor.cxx:247 AliFMDPreprocessor.cxx:248 AliFMDPreprocessor.cxx:249 AliFMDPreprocessor.cxx:250 AliFMDPreprocessor.cxx:251 AliFMDPreprocessor.cxx:252 AliFMDPreprocessor.cxx:253 AliFMDPreprocessor.cxx:254 AliFMDPreprocessor.cxx:255 AliFMDPreprocessor.cxx:256 AliFMDPreprocessor.cxx:257 AliFMDPreprocessor.cxx:258 AliFMDPreprocessor.cxx:259 AliFMDPreprocessor.cxx:260 AliFMDPreprocessor.cxx:261 AliFMDPreprocessor.cxx:262 AliFMDPreprocessor.cxx:263 AliFMDPreprocessor.cxx:264 AliFMDPreprocessor.cxx:265 AliFMDPreprocessor.cxx:266 AliFMDPreprocessor.cxx:267 AliFMDPreprocessor.cxx:268 AliFMDPreprocessor.cxx:269 AliFMDPreprocessor.cxx:270 AliFMDPreprocessor.cxx:271 AliFMDPreprocessor.cxx:272 AliFMDPreprocessor.cxx:273 AliFMDPreprocessor.cxx:274 AliFMDPreprocessor.cxx:275 AliFMDPreprocessor.cxx:276 AliFMDPreprocessor.cxx:277 AliFMDPreprocessor.cxx:278 AliFMDPreprocessor.cxx:279 AliFMDPreprocessor.cxx:280 AliFMDPreprocessor.cxx:281 AliFMDPreprocessor.cxx:282 AliFMDPreprocessor.cxx:283 AliFMDPreprocessor.cxx:284 AliFMDPreprocessor.cxx:285 AliFMDPreprocessor.cxx:286 AliFMDPreprocessor.cxx:287 AliFMDPreprocessor.cxx:288 AliFMDPreprocessor.cxx:289 AliFMDPreprocessor.cxx:290 AliFMDPreprocessor.cxx:291 AliFMDPreprocessor.cxx:292 AliFMDPreprocessor.cxx:293 AliFMDPreprocessor.cxx:294 AliFMDPreprocessor.cxx:295 AliFMDPreprocessor.cxx:296 AliFMDPreprocessor.cxx:297 AliFMDPreprocessor.cxx:298 AliFMDPreprocessor.cxx:299 AliFMDPreprocessor.cxx:300 AliFMDPreprocessor.cxx:301 AliFMDPreprocessor.cxx:302 AliFMDPreprocessor.cxx:303 AliFMDPreprocessor.cxx:304 AliFMDPreprocessor.cxx:305 AliFMDPreprocessor.cxx:306 AliFMDPreprocessor.cxx:307 AliFMDPreprocessor.cxx:308 AliFMDPreprocessor.cxx:309 AliFMDPreprocessor.cxx:310 AliFMDPreprocessor.cxx:311 AliFMDPreprocessor.cxx:312 AliFMDPreprocessor.cxx:313 AliFMDPreprocessor.cxx:314 AliFMDPreprocessor.cxx:315 AliFMDPreprocessor.cxx:316 AliFMDPreprocessor.cxx:317 AliFMDPreprocessor.cxx:318 AliFMDPreprocessor.cxx:319 AliFMDPreprocessor.cxx:320 AliFMDPreprocessor.cxx:321 AliFMDPreprocessor.cxx:322 AliFMDPreprocessor.cxx:323 AliFMDPreprocessor.cxx:324 AliFMDPreprocessor.cxx:325 AliFMDPreprocessor.cxx:326 AliFMDPreprocessor.cxx:327 AliFMDPreprocessor.cxx:328 AliFMDPreprocessor.cxx:329 AliFMDPreprocessor.cxx:330 AliFMDPreprocessor.cxx:331 AliFMDPreprocessor.cxx:332 AliFMDPreprocessor.cxx:333 AliFMDPreprocessor.cxx:334 AliFMDPreprocessor.cxx:335 AliFMDPreprocessor.cxx:336 AliFMDPreprocessor.cxx:337 AliFMDPreprocessor.cxx:338 AliFMDPreprocessor.cxx:339 AliFMDPreprocessor.cxx:340 AliFMDPreprocessor.cxx:341 AliFMDPreprocessor.cxx:342 AliFMDPreprocessor.cxx:343 AliFMDPreprocessor.cxx:344 AliFMDPreprocessor.cxx:345 AliFMDPreprocessor.cxx:346 AliFMDPreprocessor.cxx:347 AliFMDPreprocessor.cxx:348 AliFMDPreprocessor.cxx:349 AliFMDPreprocessor.cxx:350 AliFMDPreprocessor.cxx:351 AliFMDPreprocessor.cxx:352 AliFMDPreprocessor.cxx:353 AliFMDPreprocessor.cxx:354 AliFMDPreprocessor.cxx:355 AliFMDPreprocessor.cxx:356 AliFMDPreprocessor.cxx:357 AliFMDPreprocessor.cxx:358 AliFMDPreprocessor.cxx:359 AliFMDPreprocessor.cxx:360 AliFMDPreprocessor.cxx:361 AliFMDPreprocessor.cxx:362 AliFMDPreprocessor.cxx:363 AliFMDPreprocessor.cxx:364 AliFMDPreprocessor.cxx:365 AliFMDPreprocessor.cxx:366 AliFMDPreprocessor.cxx:367 AliFMDPreprocessor.cxx:368 AliFMDPreprocessor.cxx:369 AliFMDPreprocessor.cxx:370 AliFMDPreprocessor.cxx:371 AliFMDPreprocessor.cxx:372 AliFMDPreprocessor.cxx:373 AliFMDPreprocessor.cxx:374 AliFMDPreprocessor.cxx:375 AliFMDPreprocessor.cxx:376 AliFMDPreprocessor.cxx:377 AliFMDPreprocessor.cxx:378 AliFMDPreprocessor.cxx:379 AliFMDPreprocessor.cxx:380 AliFMDPreprocessor.cxx:381 AliFMDPreprocessor.cxx:382 AliFMDPreprocessor.cxx:383 AliFMDPreprocessor.cxx:384 AliFMDPreprocessor.cxx:385 AliFMDPreprocessor.cxx:386 AliFMDPreprocessor.cxx:387 AliFMDPreprocessor.cxx:388 AliFMDPreprocessor.cxx:389 AliFMDPreprocessor.cxx:390 AliFMDPreprocessor.cxx:391 AliFMDPreprocessor.cxx:392 AliFMDPreprocessor.cxx:393 AliFMDPreprocessor.cxx:394 AliFMDPreprocessor.cxx:395 AliFMDPreprocessor.cxx:396 AliFMDPreprocessor.cxx:397 AliFMDPreprocessor.cxx:398 AliFMDPreprocessor.cxx:399 AliFMDPreprocessor.cxx:400 AliFMDPreprocessor.cxx:401 AliFMDPreprocessor.cxx:402 AliFMDPreprocessor.cxx:403 AliFMDPreprocessor.cxx:404 AliFMDPreprocessor.cxx:405 AliFMDPreprocessor.cxx:406 AliFMDPreprocessor.cxx:407 AliFMDPreprocessor.cxx:408 AliFMDPreprocessor.cxx:409 AliFMDPreprocessor.cxx:410 AliFMDPreprocessor.cxx:411 AliFMDPreprocessor.cxx:412 AliFMDPreprocessor.cxx:413 AliFMDPreprocessor.cxx:414 AliFMDPreprocessor.cxx:415 AliFMDPreprocessor.cxx:416 AliFMDPreprocessor.cxx:417 AliFMDPreprocessor.cxx:418 AliFMDPreprocessor.cxx:419 AliFMDPreprocessor.cxx:420 AliFMDPreprocessor.cxx:421 AliFMDPreprocessor.cxx:422 AliFMDPreprocessor.cxx:423 AliFMDPreprocessor.cxx:424 AliFMDPreprocessor.cxx:425 AliFMDPreprocessor.cxx:426 AliFMDPreprocessor.cxx:427 AliFMDPreprocessor.cxx:428 AliFMDPreprocessor.cxx:429 AliFMDPreprocessor.cxx:430 AliFMDPreprocessor.cxx:431 AliFMDPreprocessor.cxx:432 AliFMDPreprocessor.cxx:433 AliFMDPreprocessor.cxx:434 AliFMDPreprocessor.cxx:435 AliFMDPreprocessor.cxx:436 AliFMDPreprocessor.cxx:437 AliFMDPreprocessor.cxx:438 AliFMDPreprocessor.cxx:439 AliFMDPreprocessor.cxx:440 AliFMDPreprocessor.cxx:441 AliFMDPreprocessor.cxx:442 AliFMDPreprocessor.cxx:443 AliFMDPreprocessor.cxx:444 AliFMDPreprocessor.cxx:445 AliFMDPreprocessor.cxx:446 AliFMDPreprocessor.cxx:447 AliFMDPreprocessor.cxx:448 AliFMDPreprocessor.cxx:449 AliFMDPreprocessor.cxx:450 AliFMDPreprocessor.cxx:451 AliFMDPreprocessor.cxx:452 AliFMDPreprocessor.cxx:453 AliFMDPreprocessor.cxx:454 AliFMDPreprocessor.cxx:455 AliFMDPreprocessor.cxx:456 AliFMDPreprocessor.cxx:457 AliFMDPreprocessor.cxx:458 AliFMDPreprocessor.cxx:459 AliFMDPreprocessor.cxx:460 AliFMDPreprocessor.cxx:461 AliFMDPreprocessor.cxx:462 AliFMDPreprocessor.cxx:463 AliFMDPreprocessor.cxx:464 AliFMDPreprocessor.cxx:465 AliFMDPreprocessor.cxx:466 AliFMDPreprocessor.cxx:467 AliFMDPreprocessor.cxx:468 AliFMDPreprocessor.cxx:469 AliFMDPreprocessor.cxx:470 AliFMDPreprocessor.cxx:471 AliFMDPreprocessor.cxx:472 AliFMDPreprocessor.cxx:473 AliFMDPreprocessor.cxx:474 AliFMDPreprocessor.cxx:475 AliFMDPreprocessor.cxx:476 AliFMDPreprocessor.cxx:477 AliFMDPreprocessor.cxx:478 AliFMDPreprocessor.cxx:479 AliFMDPreprocessor.cxx:480 AliFMDPreprocessor.cxx:481 AliFMDPreprocessor.cxx:482 AliFMDPreprocessor.cxx:483 AliFMDPreprocessor.cxx:484 AliFMDPreprocessor.cxx:485 AliFMDPreprocessor.cxx:486 AliFMDPreprocessor.cxx:487 AliFMDPreprocessor.cxx:488 AliFMDPreprocessor.cxx:489