#include <TFile.h>
#include <TH2S.h>
#include <TH1F.h>
#include <TCanvas.h>
#include <TMath.h>
#include <TObjArray.h>
#include <TObjString.h>
#include <TTimeStamp.h>
#include "AliCDBMetaData.h"
#include "AliCDBEntry.h"
#include "AliLog.h"
#include "AliTOFChannelOnlineArray.h"
#include "AliTOFChannelOnlineStatusArray.h"
#include "AliTOFDataDCS.h"
#include "AliTOFDCSmaps.h"
#include "AliTOFLvHvDataPoints.h"
#include "AliTOFGeometry.h"
#include "AliTOFPreprocessor.h"
#include "AliTOFFEEReader.h"
#include "AliTOFRawStream.h"
#include "AliTOFCableLengthMap.h"
#include "AliTOFcalibHisto.h"
#include "AliTOFFEEDump.h"
#include "TChain.h"
#include "AliTOFDeltaBCOffset.h"
#include "AliTOFCTPLatency.h"
#include "AliTOFRunParams.h"
#include "AliTOFT0FillOnlineCalib.h"
#include "AliTOFHitField.h"
#include "AliTOFChannelOffline.h"
#include "TF1.h"
#include "TGeoManager.h"
#include "AliGeomManager.h"
#include "AliTOFReadoutInfo.h"
ClassImp(AliTOFPreprocessor)
const Int_t AliTOFPreprocessor::fgkBinRangeAve = 13;
const Double_t AliTOFPreprocessor::fgkIntegralThr = 100;
const Double_t AliTOFPreprocessor::fgkThrPar = 0.013;
AliTOFPreprocessor::AliTOFPreprocessor(AliShuttleInterface* shuttle) :
AliPreprocessor("TOF", shuttle),
fData(0),
fHVLVmaps(0),
fCal(0),
fNChannels(0),
fStoreRefData(kTRUE),
fFDRFlag(kFALSE),
fStatus(0),
fMatchingWindow(0),
fLatencyWindow(0),
fIsStatusMapChanged(0)
{
AddRunType("PHYSICS");
AddRunType("PULSER");
AddRunType("NOISE");
}
AliTOFPreprocessor::~AliTOFPreprocessor()
{
}
void AliTOFPreprocessor::Initialize(Int_t run, UInt_t startTime,
UInt_t endTime)
{
AliPreprocessor::Initialize(run, startTime, endTime);
AliInfo(Form("\n\tRun %d \n\tStartTime %s \n\tEndTime %s \n\tStartTime DCS Query %s \n\tEndTime DCS Query %s", run,
TTimeStamp(startTime).AsString(),
TTimeStamp(endTime).AsString(), ((TTimeStamp)GetStartTimeDCSQuery()).AsString(), ((TTimeStamp)GetEndTimeDCSQuery()).AsString()));
fData = new AliTOFDataDCS(fRun, fStartTime, fEndTime, GetStartTimeDCSQuery(), GetEndTimeDCSQuery());
fHVLVmaps = new AliTOFLvHvDataPoints(fRun, fStartTime, fEndTime, GetStartTimeDCSQuery(), GetEndTimeDCSQuery());
fNChannels = AliTOFGeometry::NSectors()*(2*(AliTOFGeometry::NStripC()+AliTOFGeometry::NStripB())+AliTOFGeometry::NStripA())*AliTOFGeometry::NpadZ()*AliTOFGeometry::NpadX();
}
Bool_t AliTOFPreprocessor::ProcessDCS(){
TString runType = GetRunType();
Log(Form("RunType %s",runType.Data()));
if (runType != "PHYSICS"){
return kFALSE;
}
return kTRUE;
}
UInt_t AliTOFPreprocessor::ProcessDCSDataPoints(TMap *dcsAliasMap)
{
Log("Processing DCS DP");
TH1::AddDirectory(0);
Bool_t resultDCSMap=kFALSE;
Bool_t resultDCSStore=kFALSE;
if (!dcsAliasMap){
Log("No DCS map found: TOF exiting from Shuttle");
if (fData) {
delete fData;
fData = 0;
}
return 1;
}
else {
if (!fData) {
Log("No DCSdata map initialized: TOF exiting from Shuttle");
return 0;
}
fData->SetFDRFlag(fFDRFlag);
resultDCSMap=fData->ProcessData(*dcsAliasMap);
if(!resultDCSMap){
Log("Some problems occurred while processing DCS data, TOF exiting from Shuttle");
if (fData) {
delete fData;
fData = 0;
}
return 2;
}
else{
AliCDBMetaData metaDataDCS;
metaDataDCS.SetBeamPeriod(0);
metaDataDCS.SetResponsible("Chiara Zampolli");
metaDataDCS.SetComment("This preprocessor fills an AliTOFDataDCS object.");
AliInfo("Storing DCS Data");
resultDCSStore = StoreReferenceData("Calib","DCSData",fData, &metaDataDCS);
if (!resultDCSStore){
Log("Some problems occurred while storing DCS data results in Reference Data, TOF exiting from Shuttle");
if (fData){
delete fData;
fData = 0;
}
return 3;
}
}
}
if (fData){
delete fData;
fData = 0;
}
return 0;
}
UInt_t AliTOFPreprocessor::ProcessHVandLVdps(TMap *dcsAliasMap)
{
Log("Processing HV and LV DCS DPs");
TH1::AddDirectory(0);
Bool_t resultDCSMap=kFALSE;
if (!dcsAliasMap){
Log("No DCS map found: TOF exiting from Shuttle");
if (fHVLVmaps){
delete fHVLVmaps;
fHVLVmaps = 0;
}
return 100;
}
else {
if (!fHVLVmaps) {
Log("No HVLVdata map initialized: TOF exiting from Shuttle");
return 200;
}
fHVLVmaps->SetFDRFlag(fFDRFlag);
resultDCSMap = fHVLVmaps->ProcessData(*dcsAliasMap);
if (!resultDCSMap) {
Log("Some problems occurred while processing DCS data for HV and LV, TOF exiting from Shuttle");
if (fHVLVmaps) {
delete fHVLVmaps;
fHVLVmaps = 0;
}
return 200;
}
else {
AliTOFDCSmaps * lvANDhvMap = (AliTOFDCSmaps*)fHVLVmaps->GetHVandLVmapAtSOR();
for (Int_t index=0; index<fNChannels; index++) {
if ( ( lvANDhvMap->GetCellValue(index)==0 &&
fStatus->GetHWStatus(index) != AliTOFChannelOnlineStatusArray::kTOFHWBad ) ||
( lvANDhvMap->GetCellValue(index)==1 &&
fStatus->GetHWStatus(index) != AliTOFChannelOnlineStatusArray::kTOFHWOk ) ) {
fStatus->SetHWStatus(index, AliTOFChannelOnlineStatusArray::kTOFHWBad);
fIsStatusMapChanged=kTRUE;
}
}
lvANDhvMap = (AliTOFDCSmaps*)fHVLVmaps->GetHVandLVmapAtEOR();
for (Int_t index=0; index<fNChannels; index++) {
if ( ( lvANDhvMap->GetCellValue(index)==0 &&
fStatus->GetHWStatus(index)!=AliTOFChannelOnlineStatusArray::kTOFHWBad ) ||
( lvANDhvMap->GetCellValue(index)==1 &&
fStatus->GetHWStatus(index) != AliTOFChannelOnlineStatusArray::kTOFHWOk ) ) {
fStatus->SetHWStatus(index, AliTOFChannelOnlineStatusArray::kTOFHWBad);
fIsStatusMapChanged=kTRUE;
}
}
}
}
if (!fIsStatusMapChanged) {
AliInfo("TOF HW status config has not changed. Do not overwrite stored file.");
return 0;
}
TString runType = GetRunType();
if (runType != "PHYSICS") {
AliInfo(Form("Run Type = %s, waiting to store status map",GetRunType()));
return 0;
}
AliCDBMetaData metaData;
metaData.SetBeamPeriod(0);
metaData.SetResponsible("Roberto Preghenella");
metaData.SetComment("This preprocessor fills an AliTOFChannelOnlineStatusArray object from FEE.and.HV.and.LV data.");
AliInfo("Storing Status data from current run. Collected RO.and.HV.and.LV infos @ EOR");
if (!Store("Calib", "Status", fStatus, &metaData, 0, kTRUE)) {
Log("problems while storing RO.and.HV.and.LV Status data object");
if (fStatus){
delete fStatus;
fStatus = 0;
}
if (fHVLVmaps) {
delete fHVLVmaps;
fHVLVmaps = 0;
}
return 17;
}
if (fStatus){
delete fStatus;
fStatus = 0;
}
if (fHVLVmaps) {
delete fHVLVmaps;
fHVLVmaps = 0;
}
return 0;
}
UInt_t AliTOFPreprocessor::ProcessOnlineDelays()
{
Bool_t updateOCDB = kFALSE;
Log("Processing DAQ delays");
TString compDelays = "kFALSE";
Int_t deltaStartingRun = fRun;
Int_t startingRun = fRun-deltaStartingRun;
Int_t binRangeAve = fgkBinRangeAve;
Double_t integralThr = fgkIntegralThr;
Double_t thrPar = fgkThrPar;
AliCDBEntry *cdbEntry = GetFromOCDB("Calib","Config");
if (!cdbEntry) {
Log(Form("No Configuration entry found in CDB, using default values: ComputingDelays = %s, StartingRun = %i",compDelays.Data(), startingRun));
}
else {
TMap *configMap = (TMap*)cdbEntry->GetObject();
if (!configMap){
Log(Form("No map found in Config entry in CDB, using default values: ComputingDelays = %s, StartingRun = %i",compDelays.Data(), startingRun));
}
else{
TObjString *strDelays = (TObjString*)configMap->GetValue("ComputingDelays");
if (strDelays) {
compDelays = (TString) strDelays->GetString();
}
else {
Log(Form("No ComputingDelays value found in Map from Config entry in CDB, using default value: ComputingDelays = %s",compDelays.Data()));
}
TObjString *strRun = (TObjString*)configMap->GetValue("StartingRun");
if (strRun) {
TString tmpstr = strRun->GetString();
startingRun = tmpstr.Atoi();
deltaStartingRun = fRun - startingRun;
}
else {
Log(Form("No StartingRun value found in Map from Config entry in CDB, using default value: StartingRun = %i",startingRun));
}
TObjString *strBinRangeAve = (TObjString*)configMap->GetValue("BinRangeAve");
if (strBinRangeAve) {
TString tmpstr = strBinRangeAve->GetString();
binRangeAve = tmpstr.Atoi();
}
else {
Log(Form("No BinRangeAve value found in Map from Config entry in CDB, using default value: BinRangeAve = %i",binRangeAve));
}
TObjString *strIntegralThr = (TObjString*)configMap->GetValue("IntegralThr");
if (strIntegralThr) {
TString tmpstr = strIntegralThr->GetString();
integralThr = tmpstr.Atof();
}
else {
Log(Form("No IntegralThr value found in Map from Config entry in CDB, using default value: IntegralThr = %f",integralThr));
}
TObjString *strThrPar = (TObjString*)configMap->GetValue("ThrPar");
if (strThrPar) {
TString tmpstr = strThrPar->GetString();
thrPar = tmpstr.Atof();
}
else {
Log(Form("No ThrPar value found in Map from Config entry in CDB, using default value: ThrPar = %f",thrPar));
}
}
}
if (compDelays == "kTRUE") fFDRFlag = kFALSE;
else fFDRFlag = kTRUE;
delete cdbEntry;
cdbEntry = 0x0;
Log(Form("ComputingDelays = %s, StartingRun = %i",compDelays.Data(),startingRun));
fCal = new AliTOFChannelOnlineArray(fNChannels);
AliTOFChannelOnlineArray *curCal = NULL;
AliCDBEntry *cdbEntry2 = GetFromOCDB("Calib","ParOnlineDelay");
if (!cdbEntry2 || !cdbEntry2->GetObject()) {
Log(" ************ WARNING ************");
Log("No CDB ParOnlineDelay entry found, creating a new one!");
Log(" *********************************");
updateOCDB = kTRUE;
}
else {
Log("Found previous ParOnlineDelay entry. Using it to init calibration");
curCal = (AliTOFChannelOnlineArray *)cdbEntry2->GetObject();
for (Int_t i = 0; i < fNChannels; i++)
fCal->SetDelay(i, curCal->GetDelay(i));
}
TH1::AddDirectory(0);
Bool_t resultDAQRef=kFALSE;
Bool_t resultTOFPP=kFALSE;
TH2S *h2 = 0x0;
TFile * daqFile=0x0;
if(fStoreRefData){
TList* list = GetFileSources(kDAQ, "RUNLevel");
if (list !=0x0 && list->GetEntries()!=0)
{
AliInfo("The following sources produced files with the id RUNLevel");
list->Print();
for (Int_t jj=0;jj<list->GetEntries();jj++){
TObjString * str = dynamic_cast<TObjString*> (list->At(jj));
if (!str) {
AliError("dynamic_cast returned NULL");
return 4;
}
AliInfo(Form("found source %s", str->String().Data()));
TString fileNameRun = GetFile(kDAQ, "RUNLevel", str->GetName());
if (fileNameRun.Length()>0){
AliInfo(Form("Got the file %s, now we can store the Reference Data for the current Run.", fileNameRun.Data()));
daqFile = new TFile(fileNameRun.Data(),"READ");
h2 = (TH2S*) daqFile->Get("htof");
AliCDBMetaData metaDataHisto;
metaDataHisto.SetBeamPeriod(0);
metaDataHisto.SetResponsible("Chiara Zampolli");
metaDataHisto.SetComment("This preprocessor stores the array of histos object as Reference Data.");
AliInfo("Storing Reference Data");
resultDAQRef = StoreReferenceData("Calib","DAQData",h2, &metaDataHisto);
if (!resultDAQRef){
Log("some problems occurred::No Reference Data stored, TOF exiting from Shuttle");
delete h2;
delete list;
delete fCal;
fCal=0x0;
return 5;
}
daqFile->Close();
delete daqFile;
}
else{
Log("The input data file from DAQ (run-level) was not found, TOF exiting from Shuttle ");
delete list;
delete fCal;
fCal=0x0;
return 4;
}
}
delete list;
}
else{
Log("The input data file list from DAQ (run-level) was not found, TOF exiting from Shuttle ");
delete fCal;
fCal=0x0;
return 4;
}
}
TList* listTot = GetFileSources(kDAQ, "DELAYS");
if (listTot !=0x0 && listTot->GetEntries()!=0)
{
AliInfo("The following sources produced files with the id DELAYS");
listTot->Print();
for (Int_t jj=0;jj<listTot->GetEntries();jj++){
TObjString * str = dynamic_cast<TObjString*> (listTot->At(jj));
if (!str) {
AliError("dynamic_cast returned NULL");
return 4;
}
AliInfo(Form("found source %s", str->String().Data()));
TString fileName = GetFile(kDAQ, "DELAYS", str->GetName());
if (fileName.Length()>0){
AliInfo(Form("Got the file %s, now we can extract some values.", fileName.Data()));
daqFile = new TFile(fileName.Data(),"READ");
if (h2) delete h2;
h2 = (TH2S*) daqFile->Get("htoftot");
if (!h2){
Log("some problems occurred:: No histo retrieved, TOF exiting from Shuttle");
delete listTot;
delete daqFile;
delete fCal;
fCal=0x0;
return 7;
}
else {
static const Int_t kSize=h2->GetNbinsX();
static const Int_t kNBins=h2->GetNbinsY();
static const Double_t kXBinmin=h2->GetYaxis()->GetBinLowEdge(1);
if (kSize != fNChannels){
Log(" number of bins along x different from number of pads, found only a subset of the histograms, TOF exiting from Shuttle");
delete listTot;
delete h2;
delete daqFile;
delete fCal;
fCal=0x0;
return 7;
}
Int_t nNotStatistics = 0;
if (fFDRFlag) {
Log(" Not computing delays according to flag set in Config entry in OCDB!");
FillWithCosmicCalibration(fCal);
if (curCal) {
for (Int_t i = 0; i < fNChannels; i++) {
if (fCal->GetDelay(i) != curCal->GetDelay(i)) {
updateOCDB = kTRUE;
break;
}
}
}
else
updateOCDB = kTRUE;
}
else {
updateOCDB = kTRUE;
for (Int_t ich=0;ich<kSize;ich++){
if (fStatus->GetHWStatus(ich) == AliTOFChannelOnlineStatusArray::kTOFHWBad){
AliDebug(2,Form(" Channel %i found bad according to FEEmap, (HW status = %i), skipping from delay computing",ich, (Int_t)fStatus->GetHWStatus(ich)));
continue;
}
AliDebug(2,Form(" Channel %i found ok according to FEEmap, starting delay computing",ich));
TH1S *h1 = new TH1S("h1","h1",kNBins,kXBinmin-0.5,kNBins*1.+kXBinmin-0.5);
for (Int_t ibin=0;ibin<kNBins;ibin++){
h1->SetBinContent(ibin+1,h2->GetBinContent(ich+1,ibin+1));
}
if(h1->Integral()<integralThr) {
nNotStatistics++;
Log(Form(" Not enough statistics for bin %i, skipping this channel",ich));
delete h1;
h1=0x0;
continue;
}
Bool_t found=kFALSE;
Float_t minContent=h1->Integral()*thrPar;
Int_t nbinsX = h1->GetNbinsX();
Int_t startBin=1;
for (Int_t j=1; j<=nbinsX; j++){
if ((
h1->GetBinContent(j) +
h1->GetBinContent(j+1)+
h1->GetBinContent(j+2)+
h1->GetBinContent(j+3))>minContent){
found=kTRUE;
startBin=j;
break;
}
}
if(!found) AliInfo(Form("WARNING!!! no start of fit found for histo # %i",ich));
Double_t mean = 0;
Double_t sumw2 = 0;
Double_t nent = 0;
for(Int_t k=0;k<binRangeAve;k++){
mean=mean+h1->GetBinCenter(startBin+k)*h1->GetBinContent(startBin+k);
nent=nent+h1->GetBinContent(startBin+k);
sumw2=sumw2+(h1->GetBinCenter(startBin+k))*(h1->GetBinCenter(startBin+k))*(h1->GetBinContent(startBin+k));
}
mean= mean/nent;
sumw2=sumw2/nent;
if (ich<fNChannels) {
Float_t delay = mean*AliTOFGeometry::TdcBinWidth()*1.E-3;
fCal->SetDelay(ich,delay);
AliDebug(2,Form("Setting delay %f (ns) for channel %i",delay,ich));
}
delete h1;
h1=0x0;
}
}
if (nNotStatistics!=0) Log(Form("Too little statistics for %d channels!",nNotStatistics));
}
delete h2;
daqFile->Close();
delete daqFile;
}
else{
Log("The Cumulative data file from DAQ does not exist, TOF exiting from Shuttle");
delete listTot;
delete fCal;
fCal=0x0;
return 6;
}
}
delete listTot;
}
else{
Log("Problem: no list for Cumulative data file from DAQ was found, TOF exiting from Shuttle");
delete fCal;
fCal=0x0;
return 6;
}
if (!updateOCDB) {
AliInfo("update OCDB flag not set. Do not overwrite stored file.");
return 0;
}
daqFile=0;
AliCDBMetaData metaData;
metaData.SetBeamPeriod(0);
metaData.SetResponsible("Chiara Zampolli");
metaData.SetComment("This preprocessor fills an AliTOFChannelOnlineArray object for online calibration - delays.");
AliInfo("Storing Calibration Data");
resultTOFPP = Store("Calib","ParOnlineDelay",fCal, &metaData,deltaStartingRun,kTRUE);
if(!resultTOFPP){
Log("Some problems occurred while storing online object resulting from DAQ data processing");
delete fCal;
fCal=0x0;
return 8;
}
if (fCal){
delete fCal;
fCal = 0;
}
return 0;
}
UInt_t
AliTOFPreprocessor::ProcessT0Fill()
{
Log("Processing T0-fill");
#if 0
AliCDBManager *cdb = AliCDBManager::Instance();
if (!gGeoManager) AliGeomManager::LoadGeometry();
#endif
AliCDBEntry *cdbe = NULL;
cdbe = GetFromOCDB("Calib", "RunParams");
if (!cdbe) {
Log("cannot get \"RunParams\" entry from OCDB");
return 21;
}
AliTOFRunParams *runparams = (AliTOFRunParams *)cdbe->GetObject();
if (runparams->GetUseLHCClockPhase()) {
Log("UseLHCClockPhase flag is set in RunParams: online T0-fill not computed");
return 0;
}
if (!fStatus || !fLatencyWindow){
AliError("No valid fStatus or fLatencyWindow found, some errors must have occurred!!");
return 21;
}
cdbe = GetFromOCDB("Calib", "ParOffline");
if (!cdbe) {
Log("cannot get \"ParOffline\" entry from OCDB");
return 21;
}
TObjArray *offlineArray = (TObjArray *)cdbe->GetObject();
AliTOFChannelOffline *channelOffline;
if (!offlineArray) {
Log("cannot get \"ParOffline\" object from CDB entry");
return 21;
}
Log("got \"ParOffline\" object");
cdbe = GetFromOCDB("Calib", "DeltaBCOffset");
if (!cdbe) {
Log("cannot get \"DeltaBCOffset\" entry from OCDB");
return 21;
}
AliTOFDeltaBCOffset *deltaBCOffsetObject = (AliTOFDeltaBCOffset *)cdbe->GetObject();
if (!deltaBCOffsetObject) {
Log("cannot get \"DeltaBCOffset\" object from CDB entry");
return 21;
}
Int_t deltaBCOffset = deltaBCOffsetObject->GetDeltaBCOffset();
Log(Form("got \"DeltaBCOffset\" object: deltaBCOffset=%d (BC bins)", deltaBCOffset));
cdbe = GetFromOCDB("Calib", "CTPLatency");
if (!cdbe) {
Log("cannot get \"CTPLatency\" entry from OCDB");
return 21;
}
AliTOFCTPLatency *ctpLatencyObject = (AliTOFCTPLatency *)cdbe->GetObject();
if (!ctpLatencyObject) {
Log("cannot get \"CTPLatency\" object from CDB entry");
return 21;
}
Float_t ctpLatency = ctpLatencyObject->GetCTPLatency();
Log(Form("got \"CTPLatency\" object: ctpLatency=%f (ps)", ctpLatency));
TList *fileList = GetFileSources(kDAQ, "HITS");
if (!fileList || fileList->GetEntries() == 0) {
Log("cannot get DAQ source file list or empty list");
return 21;
}
Log(Form("got DAQ source file list: %d files", fileList->GetEntries()));
fileList->Print();
TChain chain("hitTree");
for (Int_t ifile = 0; ifile < fileList->GetEntries(); ifile++) {
TObjString *str = (TObjString *)fileList->At(ifile);
TString filename = GetFile(kDAQ, "HITS", str->GetName());
chain.Add(filename);
Log(Form("file added to input chain: source=%s, filename=%s", str->String().Data(), filename.Data()));
}
Int_t nhits = chain.GetEntries();
Log(Form("input chain ready: %d hits", nhits));
AliTOFHitField *hit = new AliTOFHitField();
chain.SetBranchAddress("hit", &hit);
AliTOFcalibHisto calibHisto;
calibHisto.LoadCalibHisto();
AliTOFGeometry tofGeo;
Float_t c = TMath::C() * 1.e2 / 1.e12;
Float_t c_1 = 1. / c;
Int_t index, timebin, totbin, deltaBC, l0l1latency, det[5];
Float_t timeps, totns, corrps, length, timeexp, timezero, pos[3], latencyWindow;
TH1F *hT0Fill = new TH1F("hT0Fill", "T0 fill;t - t_{exp}^{(c)} (ps);", 2000, -24400., 24400.);
for (Int_t ihit = 0; ihit < nhits; ihit++) {
chain.GetEntry(ihit);
index = hit->GetIndex();
timebin = hit->GetTimeBin();
totbin = hit->GetTOTBin();
deltaBC = hit->GetDeltaBC();
l0l1latency = hit->GetL0L1Latency();
latencyWindow = fLatencyWindow[index] * 1.e3;
timeps = timebin * AliTOFGeometry::TdcBinWidth();
totns = totbin * AliTOFGeometry::ToTBinWidth() * 1.e-3;
channelOffline = (AliTOFChannelOffline *)offlineArray->At(index);
if (totns < AliTOFGeometry::SlewTOTMin()) totns = AliTOFGeometry::SlewTOTMin();
if (totns > AliTOFGeometry::SlewTOTMax()) totns = AliTOFGeometry::SlewTOTMax();
corrps = 0.;
for (Int_t ipar = 0; ipar < 6; ipar++) corrps += channelOffline->GetSlewPar(ipar) * TMath::Power(totns, ipar);
corrps *= 1.e3;
timeps = timeps + l0l1latency * AliTOFGeometry::BunchCrossingBinWidth() + ctpLatency - latencyWindow - corrps;
tofGeo.GetVolumeIndices(index, det);
tofGeo.GetPosPar(det, pos);
length = 0.;
for (Int_t i = 0; i < 3; i++) length += pos[i] * pos[i];
length = TMath::Sqrt(length);
timeexp = length * c_1;
timezero = timeps - timeexp;
hT0Fill->Fill(timezero);
}
Int_t maxBin = hT0Fill->GetMaximumBin();
Float_t maxBinContent = hT0Fill->GetBinContent(maxBin);
Float_t binWidth = hT0Fill->GetBinWidth(maxBin);
while (maxBinContent < 400 && binWidth < 90.) {
hT0Fill->Rebin(2);
maxBin = hT0Fill->GetMaximumBin();
maxBinContent = hT0Fill->GetBinContent(maxBin);
binWidth = hT0Fill->GetBinWidth(maxBin);
}
Float_t maxBinCenter = hT0Fill->GetBinCenter(maxBin);
TF1 *gaus = (TF1 *)gROOT->GetFunction("gaus");
gaus->SetParameter(1, maxBinCenter);
Float_t fitMin = maxBinCenter - 1000.;
Float_t fitMax = maxBinCenter + 1000.;
hT0Fill->Fit("gaus", "q0", "", fitMin, fitMax);
Float_t mean, sigma;
for (Int_t istep = 0; istep < 10; istep++) {
mean = gaus->GetParameter(1);
sigma = gaus->GetParameter(2);
fitMin = mean - 3. * sigma;
fitMax = mean;
hT0Fill->Fit("gaus", "q0", "", fitMin, fitMax);
}
mean = gaus->GetParameter(1);
sigma = gaus->GetParameter(2);
Float_t meane = gaus->GetParError(1);
Float_t sigmae = gaus->GetParError(2);
Log(Form("edge fit: mean = %f +- %f ps", mean, meane));
Log(Form("edge fit: sigma = %f +- %f ps", sigma, sigmae));
if (meane > 300.) {
Log("error on mean is large: store default T0-fill value (0 ps)");
mean = 0.;
}
if (sigmae > 300.) {
Log("error on sigma is large: store default TOFreso value (200 ps)");
sigma = 200.;
}
mean = maxBinCenter;
sigma = -1.;
Log(Form("do not care about fitted value, just use max bin as t0-fill: %f ps", mean));
UInt_t timestamp[1] = {0};
Float_t t0[1] = {mean};
Float_t tofReso[1] = {sigma};
Float_t t0Spread[1] = {-1.};
AliTOFRunParams *runParamsObject = new AliTOFRunParams(1);
runParamsObject->SetTimestamp(timestamp);
runParamsObject->SetT0(t0);
runParamsObject->SetTOFResolution(tofReso);
runParamsObject->SetT0Spread(t0Spread);
runParamsObject->SetUseLHCClockPhase(kFALSE);
if(fStoreRefData){
AliCDBMetaData metaDataHisto;
metaDataHisto.SetBeamPeriod(0);
metaDataHisto.SetResponsible("Roberto Preghenella");
metaDataHisto.SetComment("online T0-fill histogram");
if (!StoreReferenceData("Calib","T0Fill", hT0Fill, &metaDataHisto)) {
Log("error while storing reference data");
delete hT0Fill;
delete hit;
delete runParamsObject;
return 21;
}
Log("reference data successfully stored");
}
AliCDBMetaData metaData;
metaData.SetBeamPeriod(0);
metaData.SetResponsible("Roberto Preghenella");
metaData.SetComment("online RunParams measurement");
if (!Store("Calib", "RunParams", runParamsObject, &metaData, 0, kFALSE)) {
Log("error while storing RunParams object");
delete hT0Fill;
delete hit;
delete runParamsObject;
return 21;
}
Log("RunParams object successfully stored");
delete hT0Fill;
delete hit;
delete runParamsObject;
return 0;
}
UInt_t
AliTOFPreprocessor::ProcessNoiseCalibTrg()
{
Log("Processing Noise (calibration trigger)");
if (!fStatus || !fMatchingWindow){
AliError("No valid fStatus or fMatchingWindow found, some errors must have occurred!!");
return 22;
}
Float_t noiseThr = 1000.;
AliCDBEntry *cdbEntry = GetFromOCDB("Calib","ConfigNoise");
if (!cdbEntry) Log(Form("No Configuration entry found in CDB, using default values: NoiseThr = %f",noiseThr));
else {
TMap *configMap = (TMap*)cdbEntry->GetObject();
if (!configMap) Log(Form("No map found in Config entry in CDB, using default values: NoiseThr = %f", noiseThr));
else {
TObjString *strNoiseThr = (TObjString*)configMap->GetValue("NoiseThr");
if (strNoiseThr) {
TString tmpstr = strNoiseThr->GetString();
noiseThr = tmpstr.Atoi();
}
else Log(Form("No NoiseThr value found in Map from ConfigNoise entry in CDB, using default value: NoiseThr = %f",noiseThr));
}
}
TList *fileList = GetFileSources(kDAQ, "CALIB");
if (!fileList || fileList->GetEntries() == 0) {
Log("cannot get DAQ source file list or empty list");
return 22;
}
Log(Form("got DAQ source file list: %d files", fileList->GetEntries()));
fileList->Print();
TObjString *str = (TObjString *)fileList->At(0);
TString filename = GetFile(kDAQ, "CALIB", str->GetName());
Log(Form("opening input file: source=%s, filename=%s", str->String().Data(), filename.Data()));
TFile *filein = TFile::Open(filename.Data());
if (!filein || !filein->IsOpen()) {
Log("cannot open input file");
return 22;
}
TH1F *hCalibHit = (TH1F *)filein->Get("hCalibHit");
if (!hCalibHit) {
Log("cannot get \"hCalibHit\" histo");
return 22;
}
TH1F *hNoiseRate = new TH1F("hNoiseRate", ";index;rate (Hz)", fNChannels, 0., fNChannels);
Float_t rate, rate_err;
for (Int_t ich = 0; ich < fNChannels; ich++) {
if (fStatus->GetHWStatus(ich) == AliTOFChannelOnlineStatusArray::kTOFHWBad) continue;
rate = hCalibHit->GetBinContent(ich + 1);
rate_err = hCalibHit->GetBinError(ich + 1);
rate /= fMatchingWindow[ich] * 1.e-9;
rate_err /= fMatchingWindow[ich] * 1.e-9;
hNoiseRate->SetBinContent(ich + 1, rate);
hNoiseRate->SetBinError(ich + 1, rate_err);
if (rate_err == 0.) continue;
if ((rate - 3. * rate_err) > noiseThr) {
Log(Form("channel %d detected as noisy: rate = (%f +- %f) Hz", ich, rate, rate_err));
if (fStatus->GetNoiseStatus(ich) == AliTOFChannelOnlineStatusArray::kTOFNoiseOk) {
Log(Form("channel %d noise status changed from Ok to Bad", ich));
fStatus->SetNoiseStatus(ich, AliTOFChannelOnlineStatusArray::kTOFNoiseBad);
fIsStatusMapChanged = kTRUE;
}
else Log(Form("channel %d noise status unchanged", ich));
}
else if ((rate + 3. * rate_err) < noiseThr) {
if (fStatus->GetNoiseStatus(ich) == AliTOFChannelOnlineStatusArray::kTOFNoiseBad) {
Log(Form("channel %d noise status changed from Bad to Ok", ich));
fStatus->SetNoiseStatus(ich, AliTOFChannelOnlineStatusArray::kTOFNoiseOk);
fIsStatusMapChanged = kTRUE;
}
}
}
if(fStoreRefData){
AliCDBMetaData metaDataHisto;
metaDataHisto.SetBeamPeriod(0);
metaDataHisto.SetResponsible("Roberto Preghenella");
metaDataHisto.SetComment("calibration trigger noise rate histogram");
if (!StoreReferenceData("Calib","CalibNoise", hNoiseRate, &metaDataHisto)) {
Log("error while storing reference data");
delete hNoiseRate;
filein->Close();
return 22;
}
Log("reference data successfully stored");
}
delete hNoiseRate;
filein->Close();
return 0;
}
UInt_t
AliTOFPreprocessor::ProcessReadout()
{
Log("Processing Readout");
TList *fileList = GetFileSources(kDAQ, "READOUT");
if (!fileList || fileList->GetEntries() == 0) {
Log("cannot get DAQ source file list or empty list");
return 22;
}
Log(Form("got DAQ source file list: %d files", fileList->GetEntries()));
fileList->Print();
TObjString *str = (TObjString *)fileList->At(0);
TString filename = GetFile(kDAQ, "READOUT", str->GetName());
Log(Form("opening input file: source=%s, filename=%s", str->String().Data(), filename.Data()));
TFile *filein = TFile::Open(filename.Data());
if (!filein || !filein->IsOpen()) {
Log("cannot open input file");
return 23;
}
TH1F *hChainEfficiency = (TH1F *)filein->Get("hChainEfficiency");
if (!hChainEfficiency) {
Log("cannot get \"hChainEfficiency\" histo");
return 23;
}
AliLog::EType_t logLevel = (AliLog::EType_t)AliLog::GetGlobalLogLevel();
AliLog::SetGlobalLogLevel(AliLog::kError);
TH1F *hChannelEfficiency = new TH1F("hChannelEfficiency", "Channel readout efficiency;index;efficiency", fNChannels, 0., fNChannels);
Int_t chainIndex, det[5], dummy, index;
Float_t effi, effi_err;
for (Int_t iddl = 0; iddl < 72; iddl++) {
for (Int_t itrm = 0; itrm < 10; itrm++) {
for (Int_t ichain = 0; ichain < 2; ichain++) {
chainIndex = ichain + 2 * itrm + 20 * iddl;
effi = hChainEfficiency->GetBinContent(chainIndex + 1);
effi_err = hChainEfficiency->GetBinError(chainIndex + 1);
for (Int_t itdc = 0; itdc < 15; itdc++) {
for (Int_t ichannel = 0; ichannel < 8; ichannel++) {
AliTOFRawStream::EquipmentId2VolumeId(iddl, itrm + 3, ichain, itdc, ichannel, det);
dummy = det[4];
det[4] = det[3];
det[3] = dummy;
if (det[0] < 0 || det[0] > 17 ||
det[1] < 0 || det[1] > 5 ||
det[2] < 0 || det[2] > 18 ||
det[3] < 0 || det[3] > 1 ||
det[4] < 0 || det[4] > 47) continue;
index = AliTOFGeometry::GetIndex(det);
hChannelEfficiency->SetBinContent(index + 1, effi);
hChannelEfficiency->SetBinError(index + 1, effi_err);
}
}
}
}
}
AliLog::SetGlobalLogLevel(logLevel);
if(fStoreRefData){
AliTOFReadoutInfo readoutInfo;
readoutInfo.SetChainEfficiency((TH1F *)filein->Get("hChainEfficiency"));
readoutInfo.SetTRMData((TH1F *)filein->Get("hTRMData"));
readoutInfo.SetTRMEmptyEvent((TH1F *)filein->Get("hTRMEmptyEvent"));
readoutInfo.SetTRMBadEventCounter((TH1F *)filein->Get("hTRMBadEventCounter"));
readoutInfo.SetTRMBadCRC((TH1F *)filein->Get("hTRMBadCRC"));
readoutInfo.SetChainData((TH1F *)filein->Get("hChainData"));
readoutInfo.SetChainBadStatus((TH1F *)filein->Get("hChainBadStatus"));
readoutInfo.SetChainBadEventCounter((TH1F *)filein->Get("hChainBadEventCounter"));
readoutInfo.SetTDCError((TH1F *)filein->Get("hTDCError"));
readoutInfo.SetTDCErrorFlags((TH2F *)filein->Get("hTDCErrorFlags"));
AliCDBMetaData metaDataHisto;
metaDataHisto.SetBeamPeriod(0);
metaDataHisto.SetResponsible("Roberto Preghenella");
metaDataHisto.SetComment("readout info data");
if (!StoreReferenceData("Calib","ReadoutInfo", &readoutInfo, &metaDataHisto)) {
Log("error while storing reference data");
filein->Close();
return 23;
}
Log("reference data successfully stored");
}
AliCDBMetaData metaData;
metaData.SetBeamPeriod(0);
metaData.SetResponsible("Roberto Preghenella");
metaData.SetComment("online ReadoutEfficiency measurement");
if (!Store("Calib", "ReadoutEfficiency", hChannelEfficiency, &metaData, 0, kFALSE)) {
Log("error while storing ReadoutEfficiency object");
delete hChannelEfficiency;
filein->Close();
return 23;
}
Log("ReadoutEfficiency object successfully stored");
delete hChannelEfficiency;
filein->Close();
return 0;
}
UInt_t AliTOFPreprocessor::ProcessPulserData()
{
Log("Processing Pulser");
if (fStatus==0x0){
AliError("No valid fStatus found, some errors must have occurred!!");
return 20;
}
TH1::AddDirectory(0);
Bool_t resultPulserRef=kFALSE;
Bool_t resultPulser=kFALSE;
static const Int_t kSize = AliTOFGeometry::NPadXSector()*AliTOFGeometry::NSectors();
TH1S * htofPulser = new TH1S("hTOFpulser","histo with signals on TOF during pulser", kSize,-0.5,kSize-0.5);
for (Int_t ibin =1;ibin<=kSize;ibin++){
htofPulser->SetBinContent(ibin,-1);
}
TFile * daqFile=0x0;
TH1S *h1=0x0;
TList* listPulser = GetFileSources(kDAQ, "PULSER");
if (listPulser !=0x0 && listPulser->GetEntries()!=0)
{
AliInfo("The following sources produced files with the id PULSER");
listPulser->Print();
Int_t nPulser = 0;
for (Int_t jj=0;jj<listPulser->GetEntries();jj++){
Int_t nPulserSource = 0;
TObjString * str = dynamic_cast<TObjString*> (listPulser->At(jj));
if (!str) {
AliError("dynamic_cast returned NULL");
return 4;
}
AliInfo(Form("found source %s", str->String().Data()));
TString fileNamePulser = GetFile(kDAQ, "PULSER", str->GetName());
if (fileNamePulser.Length()>0){
AliInfo(Form("Got the file %s, now we can process pulser data.", fileNamePulser.Data()));
daqFile = new TFile(fileNamePulser.Data(),"READ");
h1 = (TH1S*) daqFile->Get("hTOFpulser");
for (Int_t ibin=0;ibin<kSize;ibin++){
if ((h1->GetBinContent(ibin+1))!=-1){
if ((htofPulser->GetBinContent(ibin+1))==-1){
htofPulser->SetBinContent(ibin+1,h1->GetBinContent(ibin+1));
}
else {
Log(Form("Something strange occurred during Pulser run, channel %i already read by another LDC, please check!",ibin));
}
}
}
Double_t mean =0;
Int_t nread=0;
Int_t nreadNotEmpty=0;
for (Int_t ientry=1;ientry<=h1->GetNbinsX();ientry++){
AliDebug(3,Form(" channel %i pulser status before pulser = %i, with global status = %i",ientry,(Int_t)fStatus->GetPulserStatus(ientry),(Int_t)fStatus->GetStatus(ientry)));
if (fStatus->GetHWStatus(ientry-1) == AliTOFChannelOnlineStatusArray::kTOFHWBad)
continue;
nPulser++;
nPulserSource++;
if (h1->GetBinContent(ientry)==-1) continue;
else {
if (h1->GetBinContent(ientry)>0) {
nreadNotEmpty++;
AliDebug(2,Form(" channel %i is ok with entry = %f; so far %i channels added ",ientry-1,h1->GetBinContent(ientry),nreadNotEmpty));
}
mean+=h1->GetBinContent(ientry);
nread++;
}
}
if (nread!=0) {
mean/=nread;
AliDebug(2,Form(" nread = %i , nreadNotEmpty = %i, mean = %f",nread,nreadNotEmpty,mean));
for (Int_t ich =0;ich<fNChannels;ich++){
if (h1->GetBinContent(ich+1)==-1) continue;
AliDebug(3,Form(" channel %i pulser status before pulser = %i",ich,(Int_t)fStatus->GetPulserStatus(ich)));
if (fStatus->GetHWStatus(ich) == AliTOFChannelOnlineStatusArray::kTOFHWBad)
continue;
if (h1->GetBinContent(ich+1)<0.05*mean){
fStatus->SetPulserStatus(ich,AliTOFChannelOnlineStatusArray::kTOFPulserBad);
AliDebug(2,Form( " channel %i pulser status after pulser = %i (bad, content = %f), with global status = %i",ich,(Int_t)fStatus->GetPulserStatus(ich),h1->GetBinContent(ich+1),(Int_t)fStatus->GetStatus(ich)));
}
else {
fStatus->SetPulserStatus(ich,AliTOFChannelOnlineStatusArray::kTOFPulserOk);
AliDebug(2,Form( " channel %i pulser status after pulser = %i (good), with global status = %i",ich,(Int_t)fStatus->GetPulserStatus(ich),(Int_t)fStatus->GetStatus(ich)));
}
}
}
else {
Log("No channels read!! No action taken, keeping old status");
}
daqFile->Close();
delete daqFile;
delete h1;
}
else{
Log("The input data file from DAQ (pulser) was not found, TOF exiting from Shuttle ");
delete listPulser;
delete htofPulser;
htofPulser = 0x0;
if (fStatus){
delete fStatus;
fStatus = 0;
}
return 10;
}
AliDebug(2,Form(" Number of channels processed during pulser run from source %i = %i",jj, nPulserSource));
}
AliDebug(2,Form(" Number of channels processed during pulser run = %i",nPulser));
delete listPulser;
}
else{
Log("The input data file list from DAQ (pulser) was not found, TOF exiting from Shuttle ");
delete htofPulser;
htofPulser = 0x0;
if (fStatus){
delete fStatus;
fStatus = 0;
}
return 10;
}
AliCDBMetaData metaData;
metaData.SetBeamPeriod(0);
metaData.SetResponsible("Chiara Zampolli");
metaData.SetComment("This preprocessor fills an AliTOFChannelOnlineStatusArray object after a Pulser run.");
AliInfo("Storing Calibration Data from Pulser Run");
resultPulser = Store("Calib","Status",fStatus, &metaData,0,kTRUE);
if(!resultPulser){
Log("Some problems occurred while storing online object resulting from Pulser data processing");
delete htofPulser;
htofPulser = 0x0;
if (fStatus){
delete fStatus;
fStatus = 0;
}
return 11;
}
if(fStoreRefData){
AliCDBMetaData metaDataHisto;
metaDataHisto.SetBeamPeriod(0);
metaDataHisto.SetResponsible("Chiara Zampolli");
metaDataHisto.SetComment("This preprocessor stores the Ref data from a pulser run.");
AliInfo("Storing Reference Data");
resultPulserRef = StoreReferenceData("Calib","PulserData",htofPulser, &metaDataHisto);
if (!resultPulserRef){
Log("some problems occurred::No Reference Data for pulser stored, TOF exiting from Shuttle");
delete htofPulser;
htofPulser = 0x0;
if (fStatus){
delete fStatus;
fStatus = 0;
}
return 9;
}
}
daqFile=0;
delete htofPulser;
htofPulser = 0x0;
if (fStatus){
delete fStatus;
fStatus = 0;
}
return 0;
}
UInt_t AliTOFPreprocessor::ProcessNoiseData()
{
Log("Processing Noise");
if (fStatus==0x0){
AliError("No valid fStatus found, some errors must have occurred!!");
return 20;
}
Float_t noiseThr = 1;
AliCDBEntry *cdbEntry = GetFromOCDB("Calib","ConfigNoise");
if (!cdbEntry) {
Log(Form("No Configuration entry found in CDB, using default values: NoiseThr = %f",noiseThr));
}
else {
TMap *configMap = (TMap*)cdbEntry->GetObject();
if (!configMap){
Log(Form("No map found in Config entry in CDB, using default values: NoiseThr = %f", noiseThr));
}
else{
TObjString *strNoiseThr = (TObjString*)configMap->GetValue("NoiseThr");
if (strNoiseThr) {
TString tmpstr = strNoiseThr->GetString();
noiseThr = tmpstr.Atoi();
}
else {
Log(Form("No NoiseThr value found in Map from ConfigNoise entry in CDB, using default value: NoiseThr = %f",noiseThr));
}
}
}
delete cdbEntry;
cdbEntry = 0x0;
TH1::AddDirectory(0);
Bool_t resultNoiseRef=kFALSE;
Bool_t resultNoise=kFALSE;
static const Int_t kSize = AliTOFGeometry::NPadXSector()*AliTOFGeometry::NSectors();
TH1F * htofNoise = new TH1F("hTOFnoise","histo with signals on TOF during noise", kSize,-0.5,kSize-0.5);
for (Int_t ibin =1;ibin<=kSize;ibin++){
htofNoise->SetBinContent(ibin,-1);
}
TFile * daqFile=0x0;
TH1F * h1=0x0;
Int_t nNoise = 0;
Int_t nNoisyChannels = 0;
Int_t nNotNoisyChannels = 0;
Int_t nChannelsFromDA = 0;
Int_t nMatchingWindowNullNonZero = 0;
Int_t nMatchingWindowNullEqualZero = 0;
TList* listNoise = GetFileSources(kDAQ, "NOISE");
if (listNoise !=0x0 && listNoise->GetEntries()!=0)
{
AliInfo("The following sources produced files with the id NOISE");
listNoise->Print();
for (Int_t jj=0;jj<listNoise->GetEntries();jj++){
Int_t nNoiseSource = 0;
TObjString * str = dynamic_cast<TObjString*> (listNoise->At(jj));
if (!str) {
AliError("dynamic_cast returned NULL");
return 4;
}
AliInfo(Form("found source %s", str->String().Data()));
TString fileNameNoise = GetFile(kDAQ, "NOISE", str->GetName());
if (fileNameNoise.Length()>0){
AliInfo(Form("Got the file %s, now we can process noise data.", fileNameNoise.Data()));
daqFile = new TFile(fileNameNoise.Data(),"READ");
h1 = (TH1F*) daqFile->Get("hTOFnoise");
for (Int_t ibin=0;ibin<kSize;ibin++){
if ((h1->GetBinContent(ibin+1))!=-1){
nNoiseSource++;
if (fMatchingWindow[ibin] == 0){
Log(Form("Matching window for channel %i null, but the channel was read by the LDC! skipping channel, BUT Please check!",ibin));
if ((h1->GetBinContent(ibin+1))!=0) nMatchingWindowNullNonZero++;
if ((h1->GetBinContent(ibin+1))==0) nMatchingWindowNullEqualZero++;
continue;
}
if ((htofNoise->GetBinContent(ibin+1))==-1){
htofNoise->SetBinContent(ibin+1,h1->GetBinContent(ibin+1)/(fMatchingWindow[ibin]*1.E-9));
if ((h1->GetBinContent(ibin+1))!= 0) AliDebug(2,Form("Channel = %i, Matching window = %i, Content = %f", ibin, fMatchingWindow[ibin], htofNoise->GetBinContent(ibin+1)));
}
else {
Log(Form("Something strange occurred during Noise run, channel %i already read by another LDC, please check!",ibin));
}
}
}
Log(Form(" Number of channels processed during noise run from source %i = %i",jj, nNoiseSource));
daqFile->Close();
delete daqFile;
delete h1;
daqFile = 0x0;
h1 = 0x0;
}
else{
Log("The input data file from DAQ (noise) was not found, TOF exiting from Shuttle ");
delete listNoise;
listNoise = 0x0;
delete htofNoise;
htofNoise = 0x0;
if (fStatus){
delete fStatus;
fStatus = 0;
}
if (fMatchingWindow){
delete [] fMatchingWindow;
fMatchingWindow = 0;
}
return 13;
}
}
}
else{
Log("The input data file list from DAQ (noise) was not found, TOF exiting from Shuttle ");
delete htofNoise;
htofNoise = 0x0;
if (fStatus){
delete fStatus;
fStatus = 0;
}
if (fMatchingWindow){
delete [] fMatchingWindow;
fMatchingWindow = 0;
}
return 13;
}
for (Int_t ich =0;ich<fNChannels;ich++){
if (htofNoise->GetBinContent(ich+1)== -1) continue;
nChannelsFromDA++;
AliDebug(3,Form(" channel %i noise status before noise = %i, with global status = %i",ich,(Int_t)fStatus->GetNoiseStatus(ich),(Int_t)fStatus->GetStatus(ich)));
if ((fStatus->GetHWStatus(ich)) == AliTOFChannelOnlineStatusArray::kTOFHWBad)
continue;
nNoise++;
if (htofNoise->GetBinContent(ich+1) >= noiseThr){
fStatus->SetNoiseStatus(ich,AliTOFChannelOnlineStatusArray::kTOFNoiseBad);
AliDebug(3,Form( " channel %i noise status after noise = %i, with global status = %i",ich,(Int_t)fStatus->GetNoiseStatus(ich),(Int_t)fStatus->GetStatus(ich)));
nNoisyChannels++;
}
else {
fStatus->SetNoiseStatus(ich,AliTOFChannelOnlineStatusArray::kTOFNoiseOk);
AliDebug(3,Form(" channel %i noise status after noise = %i, with global status = %i",ich,(Int_t)fStatus->GetNoiseStatus(ich),(Int_t)fStatus->GetStatus(ich)));
nNotNoisyChannels++;
}
}
Log(Form(" Number of channels processed by DA during noise run, independetly from TOFFEE = %i",nChannelsFromDA));
Log(Form(" Number of channels processed during noise run (that were ON according to TOFFEE) = %i",nNoise));
Log(Form(" Number of noisy channels found during noise run = %i",nNoisyChannels));
Log(Form(" Number of not noisy channels found during noise run = %i",nNotNoisyChannels));
Log(Form(" Number of channels with matching window NULL (so skipped), but Non Zero content = %i",nMatchingWindowNullNonZero));
Log(Form(" Number of channels with matching window NULL (so skipped), and Zero content = %i",nMatchingWindowNullEqualZero));
delete listNoise;
AliCDBMetaData metaData;
metaData.SetBeamPeriod(0);
metaData.SetResponsible("Chiara Zampolli");
metaData.SetComment("This preprocessor fills an AliTOFChannelOnlineStatusArray object after a Noise run.");
AliInfo("Storing Calibration Data from Noise Run");
resultNoise = Store("Calib","Status",fStatus, &metaData,0,kTRUE);
if(!resultNoise){
Log("Some problems occurred while storing online object resulting from Noise data processing");
delete htofNoise;
htofNoise = 0x0;
if (fStatus){
delete fStatus;
fStatus = 0;
}
if (fMatchingWindow){
delete [] fMatchingWindow;
fMatchingWindow = 0;
}
return 14;
}
if(fStoreRefData){
AliCDBMetaData metaDataHisto;
metaDataHisto.SetBeamPeriod(0);
metaDataHisto.SetResponsible("Chiara Zampolli");
metaDataHisto.SetComment("This preprocessor stores the Ref data from a noise run. ");
AliInfo("Storing Reference Data");
resultNoiseRef = StoreReferenceData("Calib","NoiseData",htofNoise, &metaDataHisto);
if (!resultNoiseRef){
Log("some problems occurred::No Reference Data for noise stored");
delete htofNoise;
htofNoise = 0x0;
if (fStatus){
delete fStatus;
fStatus = 0;
}
if (fMatchingWindow){
delete [] fMatchingWindow;
fMatchingWindow = 0;
}
return 12;
}
}
delete htofNoise;
htofNoise = 0x0;
if (fStatus){
delete fStatus;
fStatus = 0;
}
if (fMatchingWindow){
delete [] fMatchingWindow;
fMatchingWindow = 0;
}
return 0;
}
UInt_t AliTOFPreprocessor::ProcessFEEData()
{
Log("Processing FEE");
AliTOFFEEReader feeReader;
TH1C hCurrentFEE("hCurrentFEE","histo with current FEE channel status", fNChannels, 0, fNChannels);
const char * toffeeFileName = GetFile(kDCS,"TofFeeMap","");
AliInfo(Form("toffee file name = %s", toffeeFileName));
if (toffeeFileName == NULL) {
return 15;
}
AliTOFFEEDump feedump;
feedump.ReadFromFile(toffeeFileName);
const char * nameFile = GetFile(kDCS,"TofFeeLightMap","");
AliInfo(Form("toffeeLight file name = %s",nameFile));
if (nameFile == NULL) {
return 15;
}
feeReader.LoadFEElightConfig(nameFile);
Int_t parseFee = feeReader.ParseFEElightConfig();
AliDebug(2,Form("%i enabled channels found in FEElight configuration",parseFee));
fMatchingWindow = new Int_t[fNChannels];
fLatencyWindow = new Int_t[fNChannels];
AliCDBEntry *cdbEntry = GetFromOCDB("Calib","Status");
if (!cdbEntry) {
Log(" ************ WARNING ************");
Log("No CDB Status entry found, creating a new one!");
Log(" *********************************");
fStatus = new AliTOFChannelOnlineStatusArray(fNChannels);
fIsStatusMapChanged = kTRUE;
}
else {
if (cdbEntry) cdbEntry->SetOwner(kFALSE);
fStatus = (AliTOFChannelOnlineStatusArray*) cdbEntry->GetObject();
delete cdbEntry;
cdbEntry = 0x0;
if (!fStatus->HasLatencyWindow()) {
Log(" ************ WARNING ************");
Log("CDB Status entry found but has no latency window data, creating a new one!");
Log(" *********************************");
delete fStatus;
fStatus = new AliTOFChannelOnlineStatusArray(fNChannels);
fIsStatusMapChanged = kTRUE;
}
}
for (Int_t iChannel = 0; iChannel < fNChannels; iChannel++){
fMatchingWindow[iChannel] = feeReader.GetMatchingWindow(iChannel);
fLatencyWindow[iChannel] = feeReader.GetLatencyWindow(iChannel);
if (feeReader.IsChannelEnabled(iChannel)) {
hCurrentFEE.SetBinContent(iChannel + 1, 1);
if (fStatus->GetHWStatus(iChannel)!=AliTOFChannelOnlineStatusArray::kTOFHWOk){
fIsStatusMapChanged = kTRUE;
fStatus->SetHWStatus(iChannel,AliTOFChannelOnlineStatusArray::kTOFHWOk);
AliDebug(3,Form( " changed into enabled: channel %i status after FEE = %i",iChannel,(Int_t)fStatus->GetHWStatus(iChannel)));
}
if (fStatus->GetLatencyWindow(iChannel)!=fLatencyWindow[iChannel]){
fIsStatusMapChanged = kTRUE;
fStatus->SetLatencyWindow(iChannel,fLatencyWindow[iChannel]);
AliDebug(3,Form( " changed latency window: channel %i latency window after FEE = %i",iChannel,fStatus->GetLatencyWindow(iChannel)));
}
}
else {
if (fStatus->GetHWStatus(iChannel)!=AliTOFChannelOnlineStatusArray::kTOFHWBad){
fIsStatusMapChanged = kTRUE;
fStatus->SetHWStatus(iChannel,AliTOFChannelOnlineStatusArray::kTOFHWBad);
AliDebug(3,Form( " changed into disabled: channel %i status after FEE = %i",iChannel,(Int_t)fStatus->GetHWStatus(iChannel)));
}
}
}
if (fStoreRefData) {
AliCDBMetaData metaDataHisto;
metaDataHisto.SetBeamPeriod(0);
metaDataHisto.SetResponsible("Roberto Preghenella");
metaDataHisto.SetComment("This preprocessor stores the FEE Ref data of the current run.");
AliInfo("Storing FEE reference data");
if (!StoreReferenceData("Calib", "FEEData", &hCurrentFEE, &metaDataHisto)) {
Log("problems while storing FEE reference data");
if (fStatus){
delete fStatus;
fStatus = 0;
}
return 18;
}
AliCDBMetaData metaDatadump;
metaDatadump.SetBeamPeriod(0);
metaDatadump.SetResponsible("Roberto Preghenella");
metaDatadump.SetComment("This preprocessor stores the TOF FEE dump Ref data of the current run.");
AliInfo("Storing TOF FEE dump reference data");
if (!StoreReferenceData("Calib", "FEEDump", &feedump, &metaDatadump)) {
Log("problems while storing TOF FEE dump reference data");
return 18;
}
}
return 0;
}
UInt_t AliTOFPreprocessor::Process(TMap *dcsAliasMap)
{
TString runType = GetRunType();
Log(Form("RunType %s",runType.Data()));
Int_t iresultFEE = ProcessFEEData();
if (iresultFEE != 0)
return iresultFEE;
if (runType == "PULSER") {
Int_t iresultPulser = ProcessPulserData();
return iresultPulser;
}
if (runType == "NOISE") {
Int_t iresultNoise = ProcessNoiseData();
return iresultNoise;
}
if (runType == "PHYSICS") {
Int_t iresultDAQ = ProcessT0Fill();
Int_t iresultNoiseCalib = ProcessNoiseCalibTrg();
Int_t iresultReadout = ProcessReadout();
Int_t iresultDCS = ProcessDCSDataPoints(dcsAliasMap);
Int_t iResultHVandLVdps = ProcessHVandLVdps(dcsAliasMap);
Int_t totResult = iresultDAQ + iresultNoiseCalib + iresultDCS + iResultHVandLVdps + iresultReadout;
Log(Form("Processing PHYSICS, returning %d (iresultDAQ = %d, iresultNoiseCalib = %d, iresultDCS = %d, iResultHVandLVdps = %d, iresultReadout = %d)", totResult, iresultDAQ, iresultNoiseCalib, iresultDCS, iResultHVandLVdps, iresultReadout));
return totResult;
}
return 0;
}
void
AliTOFPreprocessor::FillWithCosmicCalibration(AliTOFChannelOnlineArray *cal)
{
Log(" Using cosmic-ray calibration.");
AliTOFcalibHisto calibHisto;
calibHisto.SetFullCorrectionFlag(AliTOFcalibHisto::kTimeSlewingCorr, kFALSE);
Log(Form(" loading calibration histograms from %s", calibHisto.GetCalibHistoFileName()));
Log(Form(" loading calibration parameters from %s", calibHisto.GetCalibParFileName()));
calibHisto.LoadCalibPar();
for (Int_t iIndex = 0; iIndex < fNChannels; iIndex++) {
cal->SetDelay(iIndex, calibHisto.GetFullCorrection(iIndex));
}
}
void
AliTOFPreprocessor::FillWithCableLengthMap(AliTOFChannelOnlineArray *cal)
{
Log(" Using cable-length map.");
AliTOFRawStream tofrs;
Int_t det[5], dummy, index;
Float_t cableTimeShift;
AliLog::EType_t logLevel = (AliLog::EType_t)AliLog::GetGlobalLogLevel();
AliLog::SetGlobalLogLevel(AliLog::kError);
for (Int_t iddl = 0; iddl < 72; iddl++)
for (Int_t islot = 3; islot <= 12; islot++)
for (Int_t ichain = 0; ichain < 2; ichain++)
for (Int_t itdc = 0; itdc < 15; itdc++)
for (Int_t ichannel = 0; ichannel < 8; ichannel++) {
tofrs.EquipmentId2VolumeId(iddl, islot, ichain, itdc, ichannel, det);
dummy = det[3];
det[3] = det[4];
det[4] = dummy;
if (det[0] < 0 || det[0] > 17 ||
det[1] < 0 || det[1] > 4 ||
det[2] < 0 || det[2] > 18 ||
det[3] < 0 || det[3] > 1 ||
det[4] < 0 || det[4] > 47)
continue;
index = AliTOFGeometry::GetIndex(det);
if (index < 0) continue;
cableTimeShift = AliTOFCableLengthMap::GetCableTimeShift(iddl, islot, ichain, itdc);
if (index<fNChannels) {
cal->SetDelay(index,cableTimeShift);
AliDebug(2,Form("Setting delay %f (ns) for channel %i",cableTimeShift,index));
}
}
AliLog::SetGlobalLogLevel(logLevel);
}
AliTOFPreprocessor.cxx:10 AliTOFPreprocessor.cxx:11 AliTOFPreprocessor.cxx:12 AliTOFPreprocessor.cxx:13 AliTOFPreprocessor.cxx:14 AliTOFPreprocessor.cxx:15 AliTOFPreprocessor.cxx:16 AliTOFPreprocessor.cxx:17 AliTOFPreprocessor.cxx:18 AliTOFPreprocessor.cxx:19 AliTOFPreprocessor.cxx:20 AliTOFPreprocessor.cxx:21 AliTOFPreprocessor.cxx:22 AliTOFPreprocessor.cxx:23 AliTOFPreprocessor.cxx:24 AliTOFPreprocessor.cxx:25 AliTOFPreprocessor.cxx:26 AliTOFPreprocessor.cxx:27 AliTOFPreprocessor.cxx:28 AliTOFPreprocessor.cxx:29 AliTOFPreprocessor.cxx:30 AliTOFPreprocessor.cxx:31 AliTOFPreprocessor.cxx:32 AliTOFPreprocessor.cxx:33 AliTOFPreprocessor.cxx:34 AliTOFPreprocessor.cxx:35 AliTOFPreprocessor.cxx:36 AliTOFPreprocessor.cxx:37 AliTOFPreprocessor.cxx:38 AliTOFPreprocessor.cxx:39 AliTOFPreprocessor.cxx:40 AliTOFPreprocessor.cxx:41 AliTOFPreprocessor.cxx:42 AliTOFPreprocessor.cxx:43 AliTOFPreprocessor.cxx:44 AliTOFPreprocessor.cxx:45 AliTOFPreprocessor.cxx:46 AliTOFPreprocessor.cxx:47 AliTOFPreprocessor.cxx:48 AliTOFPreprocessor.cxx:49 AliTOFPreprocessor.cxx:50 AliTOFPreprocessor.cxx:51 AliTOFPreprocessor.cxx:52 AliTOFPreprocessor.cxx:53 AliTOFPreprocessor.cxx:54 AliTOFPreprocessor.cxx:55 AliTOFPreprocessor.cxx:56 AliTOFPreprocessor.cxx:57 AliTOFPreprocessor.cxx:58 AliTOFPreprocessor.cxx:59 AliTOFPreprocessor.cxx:60 AliTOFPreprocessor.cxx:61 AliTOFPreprocessor.cxx:62 AliTOFPreprocessor.cxx:63 AliTOFPreprocessor.cxx:64 AliTOFPreprocessor.cxx:65 AliTOFPreprocessor.cxx:66 AliTOFPreprocessor.cxx:67 AliTOFPreprocessor.cxx:68 AliTOFPreprocessor.cxx:69 AliTOFPreprocessor.cxx:70 AliTOFPreprocessor.cxx:71 AliTOFPreprocessor.cxx:72 AliTOFPreprocessor.cxx:73 AliTOFPreprocessor.cxx:74 AliTOFPreprocessor.cxx:75 AliTOFPreprocessor.cxx:76 AliTOFPreprocessor.cxx:77 AliTOFPreprocessor.cxx:78 AliTOFPreprocessor.cxx:79 AliTOFPreprocessor.cxx:80 AliTOFPreprocessor.cxx:81 AliTOFPreprocessor.cxx:82 AliTOFPreprocessor.cxx:83 AliTOFPreprocessor.cxx:84 AliTOFPreprocessor.cxx:85 AliTOFPreprocessor.cxx:86 AliTOFPreprocessor.cxx:87 AliTOFPreprocessor.cxx:88 AliTOFPreprocessor.cxx:89 AliTOFPreprocessor.cxx:90 AliTOFPreprocessor.cxx:91 AliTOFPreprocessor.cxx:92 AliTOFPreprocessor.cxx:93 AliTOFPreprocessor.cxx:94 AliTOFPreprocessor.cxx:95 AliTOFPreprocessor.cxx:96 AliTOFPreprocessor.cxx:97 AliTOFPreprocessor.cxx:98 AliTOFPreprocessor.cxx:99 AliTOFPreprocessor.cxx:100 AliTOFPreprocessor.cxx:101 AliTOFPreprocessor.cxx:102 AliTOFPreprocessor.cxx:103 AliTOFPreprocessor.cxx:104 AliTOFPreprocessor.cxx:105 AliTOFPreprocessor.cxx:106 AliTOFPreprocessor.cxx:107 AliTOFPreprocessor.cxx:108 AliTOFPreprocessor.cxx:109 AliTOFPreprocessor.cxx:110 AliTOFPreprocessor.cxx:111 AliTOFPreprocessor.cxx:112 AliTOFPreprocessor.cxx:113 AliTOFPreprocessor.cxx:114 AliTOFPreprocessor.cxx:115 AliTOFPreprocessor.cxx:116 AliTOFPreprocessor.cxx:117 AliTOFPreprocessor.cxx:118 AliTOFPreprocessor.cxx:119 AliTOFPreprocessor.cxx:120 AliTOFPreprocessor.cxx:121 AliTOFPreprocessor.cxx:122 AliTOFPreprocessor.cxx:123 AliTOFPreprocessor.cxx:124 AliTOFPreprocessor.cxx:125 AliTOFPreprocessor.cxx:126 AliTOFPreprocessor.cxx:127 AliTOFPreprocessor.cxx:128 AliTOFPreprocessor.cxx:129 AliTOFPreprocessor.cxx:130 AliTOFPreprocessor.cxx:131 AliTOFPreprocessor.cxx:132 AliTOFPreprocessor.cxx:133 AliTOFPreprocessor.cxx:134 AliTOFPreprocessor.cxx:135 AliTOFPreprocessor.cxx:136 AliTOFPreprocessor.cxx:137 AliTOFPreprocessor.cxx:138 AliTOFPreprocessor.cxx:139 AliTOFPreprocessor.cxx:140 AliTOFPreprocessor.cxx:141 AliTOFPreprocessor.cxx:142 AliTOFPreprocessor.cxx:143 AliTOFPreprocessor.cxx:144 AliTOFPreprocessor.cxx:145 AliTOFPreprocessor.cxx:146 AliTOFPreprocessor.cxx:147 AliTOFPreprocessor.cxx:148 AliTOFPreprocessor.cxx:149 AliTOFPreprocessor.cxx:150 AliTOFPreprocessor.cxx:151 AliTOFPreprocessor.cxx:152 AliTOFPreprocessor.cxx:153 AliTOFPreprocessor.cxx:154 AliTOFPreprocessor.cxx:155 AliTOFPreprocessor.cxx:156 AliTOFPreprocessor.cxx:157 AliTOFPreprocessor.cxx:158 AliTOFPreprocessor.cxx:159 AliTOFPreprocessor.cxx:160 AliTOFPreprocessor.cxx:161 AliTOFPreprocessor.cxx:162 AliTOFPreprocessor.cxx:163 AliTOFPreprocessor.cxx:164 AliTOFPreprocessor.cxx:165 AliTOFPreprocessor.cxx:166 AliTOFPreprocessor.cxx:167 AliTOFPreprocessor.cxx:168 AliTOFPreprocessor.cxx:169 AliTOFPreprocessor.cxx:170 AliTOFPreprocessor.cxx:171 AliTOFPreprocessor.cxx:172 AliTOFPreprocessor.cxx:173 AliTOFPreprocessor.cxx:174 AliTOFPreprocessor.cxx:175 AliTOFPreprocessor.cxx:176 AliTOFPreprocessor.cxx:177 AliTOFPreprocessor.cxx:178 AliTOFPreprocessor.cxx:179 AliTOFPreprocessor.cxx:180 AliTOFPreprocessor.cxx:181 AliTOFPreprocessor.cxx:182 AliTOFPreprocessor.cxx:183 AliTOFPreprocessor.cxx:184 AliTOFPreprocessor.cxx:185 AliTOFPreprocessor.cxx:186 AliTOFPreprocessor.cxx:187 AliTOFPreprocessor.cxx:188 AliTOFPreprocessor.cxx:189 AliTOFPreprocessor.cxx:190 AliTOFPreprocessor.cxx:191 AliTOFPreprocessor.cxx:192 AliTOFPreprocessor.cxx:193 AliTOFPreprocessor.cxx:194 AliTOFPreprocessor.cxx:195 AliTOFPreprocessor.cxx:196 AliTOFPreprocessor.cxx:197 AliTOFPreprocessor.cxx:198 AliTOFPreprocessor.cxx:199 AliTOFPreprocessor.cxx:200 AliTOFPreprocessor.cxx:201 AliTOFPreprocessor.cxx:202 AliTOFPreprocessor.cxx:203 AliTOFPreprocessor.cxx:204 AliTOFPreprocessor.cxx:205 AliTOFPreprocessor.cxx:206 AliTOFPreprocessor.cxx:207 AliTOFPreprocessor.cxx:208 AliTOFPreprocessor.cxx:209 AliTOFPreprocessor.cxx:210 AliTOFPreprocessor.cxx:211 AliTOFPreprocessor.cxx:212 AliTOFPreprocessor.cxx:213 AliTOFPreprocessor.cxx:214 AliTOFPreprocessor.cxx:215 AliTOFPreprocessor.cxx:216 AliTOFPreprocessor.cxx:217 AliTOFPreprocessor.cxx:218 AliTOFPreprocessor.cxx:219 AliTOFPreprocessor.cxx:220 AliTOFPreprocessor.cxx:221 AliTOFPreprocessor.cxx:222 AliTOFPreprocessor.cxx:223 AliTOFPreprocessor.cxx:224 AliTOFPreprocessor.cxx:225 AliTOFPreprocessor.cxx:226 AliTOFPreprocessor.cxx:227 AliTOFPreprocessor.cxx:228 AliTOFPreprocessor.cxx:229 AliTOFPreprocessor.cxx:230 AliTOFPreprocessor.cxx:231 AliTOFPreprocessor.cxx:232 AliTOFPreprocessor.cxx:233 AliTOFPreprocessor.cxx:234 AliTOFPreprocessor.cxx:235 AliTOFPreprocessor.cxx:236 AliTOFPreprocessor.cxx:237 AliTOFPreprocessor.cxx:238 AliTOFPreprocessor.cxx:239 AliTOFPreprocessor.cxx:240 AliTOFPreprocessor.cxx:241 AliTOFPreprocessor.cxx:242 AliTOFPreprocessor.cxx:243 AliTOFPreprocessor.cxx:244 AliTOFPreprocessor.cxx:245 AliTOFPreprocessor.cxx:246 AliTOFPreprocessor.cxx:247 AliTOFPreprocessor.cxx:248 AliTOFPreprocessor.cxx:249 AliTOFPreprocessor.cxx:250 AliTOFPreprocessor.cxx:251 AliTOFPreprocessor.cxx:252 AliTOFPreprocessor.cxx:253 AliTOFPreprocessor.cxx:254 AliTOFPreprocessor.cxx:255 AliTOFPreprocessor.cxx:256 AliTOFPreprocessor.cxx:257 AliTOFPreprocessor.cxx:258 AliTOFPreprocessor.cxx:259 AliTOFPreprocessor.cxx:260 AliTOFPreprocessor.cxx:261 AliTOFPreprocessor.cxx:262 AliTOFPreprocessor.cxx:263 AliTOFPreprocessor.cxx:264 AliTOFPreprocessor.cxx:265 AliTOFPreprocessor.cxx:266 AliTOFPreprocessor.cxx:267 AliTOFPreprocessor.cxx:268 AliTOFPreprocessor.cxx:269 AliTOFPreprocessor.cxx:270 AliTOFPreprocessor.cxx:271 AliTOFPreprocessor.cxx:272 AliTOFPreprocessor.cxx:273 AliTOFPreprocessor.cxx:274 AliTOFPreprocessor.cxx:275 AliTOFPreprocessor.cxx:276 AliTOFPreprocessor.cxx:277 AliTOFPreprocessor.cxx:278 AliTOFPreprocessor.cxx:279 AliTOFPreprocessor.cxx:280 AliTOFPreprocessor.cxx:281 AliTOFPreprocessor.cxx:282 AliTOFPreprocessor.cxx:283 AliTOFPreprocessor.cxx:284 AliTOFPreprocessor.cxx:285 AliTOFPreprocessor.cxx:286 AliTOFPreprocessor.cxx:287 AliTOFPreprocessor.cxx:288 AliTOFPreprocessor.cxx:289 AliTOFPreprocessor.cxx:290 AliTOFPreprocessor.cxx:291 AliTOFPreprocessor.cxx:292 AliTOFPreprocessor.cxx:293 AliTOFPreprocessor.cxx:294 AliTOFPreprocessor.cxx:295 AliTOFPreprocessor.cxx:296 AliTOFPreprocessor.cxx:297 AliTOFPreprocessor.cxx:298 AliTOFPreprocessor.cxx:299 AliTOFPreprocessor.cxx:300 AliTOFPreprocessor.cxx:301 AliTOFPreprocessor.cxx:302 AliTOFPreprocessor.cxx:303 AliTOFPreprocessor.cxx:304 AliTOFPreprocessor.cxx:305 AliTOFPreprocessor.cxx:306 AliTOFPreprocessor.cxx:307 AliTOFPreprocessor.cxx:308 AliTOFPreprocessor.cxx:309 AliTOFPreprocessor.cxx:310 AliTOFPreprocessor.cxx:311 AliTOFPreprocessor.cxx:312 AliTOFPreprocessor.cxx:313 AliTOFPreprocessor.cxx:314 AliTOFPreprocessor.cxx:315 AliTOFPreprocessor.cxx:316 AliTOFPreprocessor.cxx:317 AliTOFPreprocessor.cxx:318 AliTOFPreprocessor.cxx:319 AliTOFPreprocessor.cxx:320 AliTOFPreprocessor.cxx:321 AliTOFPreprocessor.cxx:322 AliTOFPreprocessor.cxx:323 AliTOFPreprocessor.cxx:324 AliTOFPreprocessor.cxx:325 AliTOFPreprocessor.cxx:326 AliTOFPreprocessor.cxx:327 AliTOFPreprocessor.cxx:328 AliTOFPreprocessor.cxx:329 AliTOFPreprocessor.cxx:330 AliTOFPreprocessor.cxx:331 AliTOFPreprocessor.cxx:332 AliTOFPreprocessor.cxx:333 AliTOFPreprocessor.cxx:334 AliTOFPreprocessor.cxx:335 AliTOFPreprocessor.cxx:336 AliTOFPreprocessor.cxx:337 AliTOFPreprocessor.cxx:338 AliTOFPreprocessor.cxx:339 AliTOFPreprocessor.cxx:340 AliTOFPreprocessor.cxx:341 AliTOFPreprocessor.cxx:342 AliTOFPreprocessor.cxx:343 AliTOFPreprocessor.cxx:344 AliTOFPreprocessor.cxx:345 AliTOFPreprocessor.cxx:346 AliTOFPreprocessor.cxx:347 AliTOFPreprocessor.cxx:348 AliTOFPreprocessor.cxx:349 AliTOFPreprocessor.cxx:350 AliTOFPreprocessor.cxx:351 AliTOFPreprocessor.cxx:352 AliTOFPreprocessor.cxx:353 AliTOFPreprocessor.cxx:354 AliTOFPreprocessor.cxx:355 AliTOFPreprocessor.cxx:356 AliTOFPreprocessor.cxx:357 AliTOFPreprocessor.cxx:358 AliTOFPreprocessor.cxx:359 AliTOFPreprocessor.cxx:360 AliTOFPreprocessor.cxx:361 AliTOFPreprocessor.cxx:362 AliTOFPreprocessor.cxx:363 AliTOFPreprocessor.cxx:364 AliTOFPreprocessor.cxx:365 AliTOFPreprocessor.cxx:366 AliTOFPreprocessor.cxx:367 AliTOFPreprocessor.cxx:368 AliTOFPreprocessor.cxx:369 AliTOFPreprocessor.cxx:370 AliTOFPreprocessor.cxx:371 AliTOFPreprocessor.cxx:372 AliTOFPreprocessor.cxx:373 AliTOFPreprocessor.cxx:374 AliTOFPreprocessor.cxx:375 AliTOFPreprocessor.cxx:376 AliTOFPreprocessor.cxx:377 AliTOFPreprocessor.cxx:378 AliTOFPreprocessor.cxx:379 AliTOFPreprocessor.cxx:380 AliTOFPreprocessor.cxx:381 AliTOFPreprocessor.cxx:382 AliTOFPreprocessor.cxx:383 AliTOFPreprocessor.cxx:384 AliTOFPreprocessor.cxx:385 AliTOFPreprocessor.cxx:386 AliTOFPreprocessor.cxx:387 AliTOFPreprocessor.cxx:388 AliTOFPreprocessor.cxx:389 AliTOFPreprocessor.cxx:390 AliTOFPreprocessor.cxx:391 AliTOFPreprocessor.cxx:392 AliTOFPreprocessor.cxx:393 AliTOFPreprocessor.cxx:394 AliTOFPreprocessor.cxx:395 AliTOFPreprocessor.cxx:396 AliTOFPreprocessor.cxx:397 AliTOFPreprocessor.cxx:398 AliTOFPreprocessor.cxx:399 AliTOFPreprocessor.cxx:400 AliTOFPreprocessor.cxx:401 AliTOFPreprocessor.cxx:402 AliTOFPreprocessor.cxx:403 AliTOFPreprocessor.cxx:404 AliTOFPreprocessor.cxx:405 AliTOFPreprocessor.cxx:406 AliTOFPreprocessor.cxx:407 AliTOFPreprocessor.cxx:408 AliTOFPreprocessor.cxx:409 AliTOFPreprocessor.cxx:410 AliTOFPreprocessor.cxx:411 AliTOFPreprocessor.cxx:412 AliTOFPreprocessor.cxx:413 AliTOFPreprocessor.cxx:414 AliTOFPreprocessor.cxx:415 AliTOFPreprocessor.cxx:416 AliTOFPreprocessor.cxx:417 AliTOFPreprocessor.cxx:418 AliTOFPreprocessor.cxx:419 AliTOFPreprocessor.cxx:420 AliTOFPreprocessor.cxx:421 AliTOFPreprocessor.cxx:422 AliTOFPreprocessor.cxx:423 AliTOFPreprocessor.cxx:424 AliTOFPreprocessor.cxx:425 AliTOFPreprocessor.cxx:426 AliTOFPreprocessor.cxx:427 AliTOFPreprocessor.cxx:428 AliTOFPreprocessor.cxx:429 AliTOFPreprocessor.cxx:430 AliTOFPreprocessor.cxx:431 AliTOFPreprocessor.cxx:432 AliTOFPreprocessor.cxx:433 AliTOFPreprocessor.cxx:434 AliTOFPreprocessor.cxx:435 AliTOFPreprocessor.cxx:436 AliTOFPreprocessor.cxx:437 AliTOFPreprocessor.cxx:438 AliTOFPreprocessor.cxx:439 AliTOFPreprocessor.cxx:440 AliTOFPreprocessor.cxx:441 AliTOFPreprocessor.cxx:442 AliTOFPreprocessor.cxx:443 AliTOFPreprocessor.cxx:444 AliTOFPreprocessor.cxx:445 AliTOFPreprocessor.cxx:446 AliTOFPreprocessor.cxx:447 AliTOFPreprocessor.cxx:448 AliTOFPreprocessor.cxx:449 AliTOFPreprocessor.cxx:450 AliTOFPreprocessor.cxx:451 AliTOFPreprocessor.cxx:452 AliTOFPreprocessor.cxx:453 AliTOFPreprocessor.cxx:454 AliTOFPreprocessor.cxx:455 AliTOFPreprocessor.cxx:456 AliTOFPreprocessor.cxx:457 AliTOFPreprocessor.cxx:458 AliTOFPreprocessor.cxx:459 AliTOFPreprocessor.cxx:460 AliTOFPreprocessor.cxx:461 AliTOFPreprocessor.cxx:462 AliTOFPreprocessor.cxx:463 AliTOFPreprocessor.cxx:464 AliTOFPreprocessor.cxx:465 AliTOFPreprocessor.cxx:466 AliTOFPreprocessor.cxx:467 AliTOFPreprocessor.cxx:468 AliTOFPreprocessor.cxx:469 AliTOFPreprocessor.cxx:470 AliTOFPreprocessor.cxx:471 AliTOFPreprocessor.cxx:472 AliTOFPreprocessor.cxx:473 AliTOFPreprocessor.cxx:474 AliTOFPreprocessor.cxx:475 AliTOFPreprocessor.cxx:476 AliTOFPreprocessor.cxx:477 AliTOFPreprocessor.cxx:478 AliTOFPreprocessor.cxx:479 AliTOFPreprocessor.cxx:480 AliTOFPreprocessor.cxx:481 AliTOFPreprocessor.cxx:482 AliTOFPreprocessor.cxx:483 AliTOFPreprocessor.cxx:484 AliTOFPreprocessor.cxx:485 AliTOFPreprocessor.cxx:486 AliTOFPreprocessor.cxx:487 AliTOFPreprocessor.cxx:488 AliTOFPreprocessor.cxx:489 AliTOFPreprocessor.cxx:490 AliTOFPreprocessor.cxx:491 AliTOFPreprocessor.cxx:492 AliTOFPreprocessor.cxx:493 AliTOFPreprocessor.cxx:494 AliTOFPreprocessor.cxx:495 AliTOFPreprocessor.cxx:496 AliTOFPreprocessor.cxx:497 AliTOFPreprocessor.cxx:498 AliTOFPreprocessor.cxx:499 AliTOFPreprocessor.cxx:500 AliTOFPreprocessor.cxx:501 AliTOFPreprocessor.cxx:502 AliTOFPreprocessor.cxx:503 AliTOFPreprocessor.cxx:504 AliTOFPreprocessor.cxx:505 AliTOFPreprocessor.cxx:506 AliTOFPreprocessor.cxx:507 AliTOFPreprocessor.cxx:508 AliTOFPreprocessor.cxx:509 AliTOFPreprocessor.cxx:510 AliTOFPreprocessor.cxx:511 AliTOFPreprocessor.cxx:512 AliTOFPreprocessor.cxx:513 AliTOFPreprocessor.cxx:514 AliTOFPreprocessor.cxx:515 AliTOFPreprocessor.cxx:516 AliTOFPreprocessor.cxx:517 AliTOFPreprocessor.cxx:518 AliTOFPreprocessor.cxx:519 AliTOFPreprocessor.cxx:520 AliTOFPreprocessor.cxx:521 AliTOFPreprocessor.cxx:522 AliTOFPreprocessor.cxx:523 AliTOFPreprocessor.cxx:524 AliTOFPreprocessor.cxx:525 AliTOFPreprocessor.cxx:526 AliTOFPreprocessor.cxx:527 AliTOFPreprocessor.cxx:528 AliTOFPreprocessor.cxx:529 AliTOFPreprocessor.cxx:530 AliTOFPreprocessor.cxx:531 AliTOFPreprocessor.cxx:532 AliTOFPreprocessor.cxx:533 AliTOFPreprocessor.cxx:534 AliTOFPreprocessor.cxx:535 AliTOFPreprocessor.cxx:536 AliTOFPreprocessor.cxx:537 AliTOFPreprocessor.cxx:538 AliTOFPreprocessor.cxx:539 AliTOFPreprocessor.cxx:540 AliTOFPreprocessor.cxx:541 AliTOFPreprocessor.cxx:542 AliTOFPreprocessor.cxx:543 AliTOFPreprocessor.cxx:544 AliTOFPreprocessor.cxx:545 AliTOFPreprocessor.cxx:546 AliTOFPreprocessor.cxx:547 AliTOFPreprocessor.cxx:548 AliTOFPreprocessor.cxx:549 AliTOFPreprocessor.cxx:550 AliTOFPreprocessor.cxx:551 AliTOFPreprocessor.cxx:552 AliTOFPreprocessor.cxx:553 AliTOFPreprocessor.cxx:554 AliTOFPreprocessor.cxx:555 AliTOFPreprocessor.cxx:556 AliTOFPreprocessor.cxx:557 AliTOFPreprocessor.cxx:558 AliTOFPreprocessor.cxx:559 AliTOFPreprocessor.cxx:560 AliTOFPreprocessor.cxx:561 AliTOFPreprocessor.cxx:562 AliTOFPreprocessor.cxx:563 AliTOFPreprocessor.cxx:564 AliTOFPreprocessor.cxx:565 AliTOFPreprocessor.cxx:566 AliTOFPreprocessor.cxx:567 AliTOFPreprocessor.cxx:568 AliTOFPreprocessor.cxx:569 AliTOFPreprocessor.cxx:570 AliTOFPreprocessor.cxx:571 AliTOFPreprocessor.cxx:572 AliTOFPreprocessor.cxx:573 AliTOFPreprocessor.cxx:574 AliTOFPreprocessor.cxx:575 AliTOFPreprocessor.cxx:576 AliTOFPreprocessor.cxx:577 AliTOFPreprocessor.cxx:578 AliTOFPreprocessor.cxx:579 AliTOFPreprocessor.cxx:580 AliTOFPreprocessor.cxx:581 AliTOFPreprocessor.cxx:582 AliTOFPreprocessor.cxx:583 AliTOFPreprocessor.cxx:584 AliTOFPreprocessor.cxx:585 AliTOFPreprocessor.cxx:586 AliTOFPreprocessor.cxx:587 AliTOFPreprocessor.cxx:588 AliTOFPreprocessor.cxx:589 AliTOFPreprocessor.cxx:590 AliTOFPreprocessor.cxx:591 AliTOFPreprocessor.cxx:592 AliTOFPreprocessor.cxx:593 AliTOFPreprocessor.cxx:594 AliTOFPreprocessor.cxx:595 AliTOFPreprocessor.cxx:596 AliTOFPreprocessor.cxx:597 AliTOFPreprocessor.cxx:598 AliTOFPreprocessor.cxx:599 AliTOFPreprocessor.cxx:600 AliTOFPreprocessor.cxx:601 AliTOFPreprocessor.cxx:602 AliTOFPreprocessor.cxx:603 AliTOFPreprocessor.cxx:604 AliTOFPreprocessor.cxx:605 AliTOFPreprocessor.cxx:606 AliTOFPreprocessor.cxx:607 AliTOFPreprocessor.cxx:608 AliTOFPreprocessor.cxx:609 AliTOFPreprocessor.cxx:610 AliTOFPreprocessor.cxx:611 AliTOFPreprocessor.cxx:612 AliTOFPreprocessor.cxx:613 AliTOFPreprocessor.cxx:614 AliTOFPreprocessor.cxx:615 AliTOFPreprocessor.cxx:616 AliTOFPreprocessor.cxx:617 AliTOFPreprocessor.cxx:618 AliTOFPreprocessor.cxx:619 AliTOFPreprocessor.cxx:620 AliTOFPreprocessor.cxx:621 AliTOFPreprocessor.cxx:622 AliTOFPreprocessor.cxx:623 AliTOFPreprocessor.cxx:624 AliTOFPreprocessor.cxx:625 AliTOFPreprocessor.cxx:626 AliTOFPreprocessor.cxx:627 AliTOFPreprocessor.cxx:628 AliTOFPreprocessor.cxx:629 AliTOFPreprocessor.cxx:630 AliTOFPreprocessor.cxx:631 AliTOFPreprocessor.cxx:632 AliTOFPreprocessor.cxx:633 AliTOFPreprocessor.cxx:634 AliTOFPreprocessor.cxx:635 AliTOFPreprocessor.cxx:636 AliTOFPreprocessor.cxx:637 AliTOFPreprocessor.cxx:638 AliTOFPreprocessor.cxx:639 AliTOFPreprocessor.cxx:640 AliTOFPreprocessor.cxx:641 AliTOFPreprocessor.cxx:642 AliTOFPreprocessor.cxx:643 AliTOFPreprocessor.cxx:644 AliTOFPreprocessor.cxx:645 AliTOFPreprocessor.cxx:646 AliTOFPreprocessor.cxx:647 AliTOFPreprocessor.cxx:648 AliTOFPreprocessor.cxx:649 AliTOFPreprocessor.cxx:650 AliTOFPreprocessor.cxx:651 AliTOFPreprocessor.cxx:652 AliTOFPreprocessor.cxx:653 AliTOFPreprocessor.cxx:654 AliTOFPreprocessor.cxx:655 AliTOFPreprocessor.cxx:656 AliTOFPreprocessor.cxx:657 AliTOFPreprocessor.cxx:658 AliTOFPreprocessor.cxx:659 AliTOFPreprocessor.cxx:660 AliTOFPreprocessor.cxx:661 AliTOFPreprocessor.cxx:662 AliTOFPreprocessor.cxx:663 AliTOFPreprocessor.cxx:664 AliTOFPreprocessor.cxx:665 AliTOFPreprocessor.cxx:666 AliTOFPreprocessor.cxx:667 AliTOFPreprocessor.cxx:668 AliTOFPreprocessor.cxx:669 AliTOFPreprocessor.cxx:670 AliTOFPreprocessor.cxx:671 AliTOFPreprocessor.cxx:672 AliTOFPreprocessor.cxx:673 AliTOFPreprocessor.cxx:674 AliTOFPreprocessor.cxx:675 AliTOFPreprocessor.cxx:676 AliTOFPreprocessor.cxx:677 AliTOFPreprocessor.cxx:678 AliTOFPreprocessor.cxx:679 AliTOFPreprocessor.cxx:680 AliTOFPreprocessor.cxx:681 AliTOFPreprocessor.cxx:682 AliTOFPreprocessor.cxx:683 AliTOFPreprocessor.cxx:684 AliTOFPreprocessor.cxx:685 AliTOFPreprocessor.cxx:686 AliTOFPreprocessor.cxx:687 AliTOFPreprocessor.cxx:688 AliTOFPreprocessor.cxx:689 AliTOFPreprocessor.cxx:690 AliTOFPreprocessor.cxx:691 AliTOFPreprocessor.cxx:692 AliTOFPreprocessor.cxx:693 AliTOFPreprocessor.cxx:694 AliTOFPreprocessor.cxx:695 AliTOFPreprocessor.cxx:696 AliTOFPreprocessor.cxx:697 AliTOFPreprocessor.cxx:698 AliTOFPreprocessor.cxx:699 AliTOFPreprocessor.cxx:700 AliTOFPreprocessor.cxx:701 AliTOFPreprocessor.cxx:702 AliTOFPreprocessor.cxx:703 AliTOFPreprocessor.cxx:704 AliTOFPreprocessor.cxx:705 AliTOFPreprocessor.cxx:706 AliTOFPreprocessor.cxx:707 AliTOFPreprocessor.cxx:708 AliTOFPreprocessor.cxx:709 AliTOFPreprocessor.cxx:710 AliTOFPreprocessor.cxx:711 AliTOFPreprocessor.cxx:712 AliTOFPreprocessor.cxx:713 AliTOFPreprocessor.cxx:714 AliTOFPreprocessor.cxx:715 AliTOFPreprocessor.cxx:716 AliTOFPreprocessor.cxx:717 AliTOFPreprocessor.cxx:718 AliTOFPreprocessor.cxx:719 AliTOFPreprocessor.cxx:720 AliTOFPreprocessor.cxx:721 AliTOFPreprocessor.cxx:722 AliTOFPreprocessor.cxx:723 AliTOFPreprocessor.cxx:724 AliTOFPreprocessor.cxx:725 AliTOFPreprocessor.cxx:726 AliTOFPreprocessor.cxx:727 AliTOFPreprocessor.cxx:728 AliTOFPreprocessor.cxx:729 AliTOFPreprocessor.cxx:730 AliTOFPreprocessor.cxx:731 AliTOFPreprocessor.cxx:732 AliTOFPreprocessor.cxx:733 AliTOFPreprocessor.cxx:734 AliTOFPreprocessor.cxx:735 AliTOFPreprocessor.cxx:736 AliTOFPreprocessor.cxx:737 AliTOFPreprocessor.cxx:738 AliTOFPreprocessor.cxx:739 AliTOFPreprocessor.cxx:740 AliTOFPreprocessor.cxx:741 AliTOFPreprocessor.cxx:742 AliTOFPreprocessor.cxx:743 AliTOFPreprocessor.cxx:744 AliTOFPreprocessor.cxx:745 AliTOFPreprocessor.cxx:746 AliTOFPreprocessor.cxx:747 AliTOFPreprocessor.cxx:748 AliTOFPreprocessor.cxx:749 AliTOFPreprocessor.cxx:750 AliTOFPreprocessor.cxx:751 AliTOFPreprocessor.cxx:752 AliTOFPreprocessor.cxx:753 AliTOFPreprocessor.cxx:754 AliTOFPreprocessor.cxx:755 AliTOFPreprocessor.cxx:756 AliTOFPreprocessor.cxx:757 AliTOFPreprocessor.cxx:758 AliTOFPreprocessor.cxx:759 AliTOFPreprocessor.cxx:760 AliTOFPreprocessor.cxx:761 AliTOFPreprocessor.cxx:762 AliTOFPreprocessor.cxx:763 AliTOFPreprocessor.cxx:764 AliTOFPreprocessor.cxx:765 AliTOFPreprocessor.cxx:766 AliTOFPreprocessor.cxx:767 AliTOFPreprocessor.cxx:768 AliTOFPreprocessor.cxx:769 AliTOFPreprocessor.cxx:770 AliTOFPreprocessor.cxx:771 AliTOFPreprocessor.cxx:772 AliTOFPreprocessor.cxx:773 AliTOFPreprocessor.cxx:774 AliTOFPreprocessor.cxx:775 AliTOFPreprocessor.cxx:776 AliTOFPreprocessor.cxx:777 AliTOFPreprocessor.cxx:778 AliTOFPreprocessor.cxx:779 AliTOFPreprocessor.cxx:780 AliTOFPreprocessor.cxx:781 AliTOFPreprocessor.cxx:782 AliTOFPreprocessor.cxx:783 AliTOFPreprocessor.cxx:784 AliTOFPreprocessor.cxx:785 AliTOFPreprocessor.cxx:786 AliTOFPreprocessor.cxx:787 AliTOFPreprocessor.cxx:788 AliTOFPreprocessor.cxx:789 AliTOFPreprocessor.cxx:790 AliTOFPreprocessor.cxx:791 AliTOFPreprocessor.cxx:792 AliTOFPreprocessor.cxx:793 AliTOFPreprocessor.cxx:794 AliTOFPreprocessor.cxx:795 AliTOFPreprocessor.cxx:796 AliTOFPreprocessor.cxx:797 AliTOFPreprocessor.cxx:798 AliTOFPreprocessor.cxx:799 AliTOFPreprocessor.cxx:800 AliTOFPreprocessor.cxx:801 AliTOFPreprocessor.cxx:802 AliTOFPreprocessor.cxx:803 AliTOFPreprocessor.cxx:804 AliTOFPreprocessor.cxx:805 AliTOFPreprocessor.cxx:806 AliTOFPreprocessor.cxx:807 AliTOFPreprocessor.cxx:808 AliTOFPreprocessor.cxx:809 AliTOFPreprocessor.cxx:810 AliTOFPreprocessor.cxx:811 AliTOFPreprocessor.cxx:812 AliTOFPreprocessor.cxx:813 AliTOFPreprocessor.cxx:814 AliTOFPreprocessor.cxx:815 AliTOFPreprocessor.cxx:816 AliTOFPreprocessor.cxx:817 AliTOFPreprocessor.cxx:818 AliTOFPreprocessor.cxx:819 AliTOFPreprocessor.cxx:820 AliTOFPreprocessor.cxx:821 AliTOFPreprocessor.cxx:822 AliTOFPreprocessor.cxx:823 AliTOFPreprocessor.cxx:824 AliTOFPreprocessor.cxx:825 AliTOFPreprocessor.cxx:826 AliTOFPreprocessor.cxx:827 AliTOFPreprocessor.cxx:828 AliTOFPreprocessor.cxx:829 AliTOFPreprocessor.cxx:830 AliTOFPreprocessor.cxx:831 AliTOFPreprocessor.cxx:832 AliTOFPreprocessor.cxx:833 AliTOFPreprocessor.cxx:834 AliTOFPreprocessor.cxx:835 AliTOFPreprocessor.cxx:836 AliTOFPreprocessor.cxx:837 AliTOFPreprocessor.cxx:838 AliTOFPreprocessor.cxx:839 AliTOFPreprocessor.cxx:840 AliTOFPreprocessor.cxx:841 AliTOFPreprocessor.cxx:842 AliTOFPreprocessor.cxx:843 AliTOFPreprocessor.cxx:844 AliTOFPreprocessor.cxx:845 AliTOFPreprocessor.cxx:846 AliTOFPreprocessor.cxx:847 AliTOFPreprocessor.cxx:848 AliTOFPreprocessor.cxx:849 AliTOFPreprocessor.cxx:850 AliTOFPreprocessor.cxx:851 AliTOFPreprocessor.cxx:852 AliTOFPreprocessor.cxx:853 AliTOFPreprocessor.cxx:854 AliTOFPreprocessor.cxx:855 AliTOFPreprocessor.cxx:856 AliTOFPreprocessor.cxx:857 AliTOFPreprocessor.cxx:858 AliTOFPreprocessor.cxx:859 AliTOFPreprocessor.cxx:860 AliTOFPreprocessor.cxx:861 AliTOFPreprocessor.cxx:862 AliTOFPreprocessor.cxx:863 AliTOFPreprocessor.cxx:864 AliTOFPreprocessor.cxx:865 AliTOFPreprocessor.cxx:866 AliTOFPreprocessor.cxx:867 AliTOFPreprocessor.cxx:868 AliTOFPreprocessor.cxx:869 AliTOFPreprocessor.cxx:870 AliTOFPreprocessor.cxx:871 AliTOFPreprocessor.cxx:872 AliTOFPreprocessor.cxx:873 AliTOFPreprocessor.cxx:874 AliTOFPreprocessor.cxx:875 AliTOFPreprocessor.cxx:876 AliTOFPreprocessor.cxx:877 AliTOFPreprocessor.cxx:878 AliTOFPreprocessor.cxx:879 AliTOFPreprocessor.cxx:880 AliTOFPreprocessor.cxx:881 AliTOFPreprocessor.cxx:882 AliTOFPreprocessor.cxx:883 AliTOFPreprocessor.cxx:884 AliTOFPreprocessor.cxx:885 AliTOFPreprocessor.cxx:886 AliTOFPreprocessor.cxx:887 AliTOFPreprocessor.cxx:888 AliTOFPreprocessor.cxx:889 AliTOFPreprocessor.cxx:890 AliTOFPreprocessor.cxx:891 AliTOFPreprocessor.cxx:892 AliTOFPreprocessor.cxx:893 AliTOFPreprocessor.cxx:894 AliTOFPreprocessor.cxx:895 AliTOFPreprocessor.cxx:896 AliTOFPreprocessor.cxx:897 AliTOFPreprocessor.cxx:898 AliTOFPreprocessor.cxx:899 AliTOFPreprocessor.cxx:900 AliTOFPreprocessor.cxx:901 AliTOFPreprocessor.cxx:902 AliTOFPreprocessor.cxx:903 AliTOFPreprocessor.cxx:904 AliTOFPreprocessor.cxx:905 AliTOFPreprocessor.cxx:906 AliTOFPreprocessor.cxx:907 AliTOFPreprocessor.cxx:908 AliTOFPreprocessor.cxx:909 AliTOFPreprocessor.cxx:910 AliTOFPreprocessor.cxx:911 AliTOFPreprocessor.cxx:912 AliTOFPreprocessor.cxx:913 AliTOFPreprocessor.cxx:914 AliTOFPreprocessor.cxx:915 AliTOFPreprocessor.cxx:916 AliTOFPreprocessor.cxx:917 AliTOFPreprocessor.cxx:918 AliTOFPreprocessor.cxx:919 AliTOFPreprocessor.cxx:920 AliTOFPreprocessor.cxx:921 AliTOFPreprocessor.cxx:922 AliTOFPreprocessor.cxx:923 AliTOFPreprocessor.cxx:924 AliTOFPreprocessor.cxx:925 AliTOFPreprocessor.cxx:926 AliTOFPreprocessor.cxx:927 AliTOFPreprocessor.cxx:928 AliTOFPreprocessor.cxx:929 AliTOFPreprocessor.cxx:930 AliTOFPreprocessor.cxx:931 AliTOFPreprocessor.cxx:932 AliTOFPreprocessor.cxx:933 AliTOFPreprocessor.cxx:934 AliTOFPreprocessor.cxx:935 AliTOFPreprocessor.cxx:936 AliTOFPreprocessor.cxx:937 AliTOFPreprocessor.cxx:938 AliTOFPreprocessor.cxx:939 AliTOFPreprocessor.cxx:940 AliTOFPreprocessor.cxx:941 AliTOFPreprocessor.cxx:942 AliTOFPreprocessor.cxx:943 AliTOFPreprocessor.cxx:944 AliTOFPreprocessor.cxx:945 AliTOFPreprocessor.cxx:946 AliTOFPreprocessor.cxx:947 AliTOFPreprocessor.cxx:948 AliTOFPreprocessor.cxx:949 AliTOFPreprocessor.cxx:950 AliTOFPreprocessor.cxx:951 AliTOFPreprocessor.cxx:952 AliTOFPreprocessor.cxx:953 AliTOFPreprocessor.cxx:954 AliTOFPreprocessor.cxx:955 AliTOFPreprocessor.cxx:956 AliTOFPreprocessor.cxx:957 AliTOFPreprocessor.cxx:958 AliTOFPreprocessor.cxx:959 AliTOFPreprocessor.cxx:960 AliTOFPreprocessor.cxx:961 AliTOFPreprocessor.cxx:962 AliTOFPreprocessor.cxx:963 AliTOFPreprocessor.cxx:964 AliTOFPreprocessor.cxx:965 AliTOFPreprocessor.cxx:966 AliTOFPreprocessor.cxx:967 AliTOFPreprocessor.cxx:968 AliTOFPreprocessor.cxx:969 AliTOFPreprocessor.cxx:970 AliTOFPreprocessor.cxx:971 AliTOFPreprocessor.cxx:972 AliTOFPreprocessor.cxx:973 AliTOFPreprocessor.cxx:974 AliTOFPreprocessor.cxx:975 AliTOFPreprocessor.cxx:976 AliTOFPreprocessor.cxx:977 AliTOFPreprocessor.cxx:978 AliTOFPreprocessor.cxx:979 AliTOFPreprocessor.cxx:980 AliTOFPreprocessor.cxx:981 AliTOFPreprocessor.cxx:982 AliTOFPreprocessor.cxx:983 AliTOFPreprocessor.cxx:984 AliTOFPreprocessor.cxx:985 AliTOFPreprocessor.cxx:986 AliTOFPreprocessor.cxx:987 AliTOFPreprocessor.cxx:988 AliTOFPreprocessor.cxx:989 AliTOFPreprocessor.cxx:990 AliTOFPreprocessor.cxx:991 AliTOFPreprocessor.cxx:992 AliTOFPreprocessor.cxx:993 AliTOFPreprocessor.cxx:994 AliTOFPreprocessor.cxx:995 AliTOFPreprocessor.cxx:996 AliTOFPreprocessor.cxx:997 AliTOFPreprocessor.cxx:998 AliTOFPreprocessor.cxx:999 AliTOFPreprocessor.cxx:1000 AliTOFPreprocessor.cxx:1001 AliTOFPreprocessor.cxx:1002 AliTOFPreprocessor.cxx:1003 AliTOFPreprocessor.cxx:1004 AliTOFPreprocessor.cxx:1005 AliTOFPreprocessor.cxx:1006 AliTOFPreprocessor.cxx:1007 AliTOFPreprocessor.cxx:1008 AliTOFPreprocessor.cxx:1009 AliTOFPreprocessor.cxx:1010 AliTOFPreprocessor.cxx:1011 AliTOFPreprocessor.cxx:1012 AliTOFPreprocessor.cxx:1013 AliTOFPreprocessor.cxx:1014 AliTOFPreprocessor.cxx:1015 AliTOFPreprocessor.cxx:1016 AliTOFPreprocessor.cxx:1017 AliTOFPreprocessor.cxx:1018 AliTOFPreprocessor.cxx:1019 AliTOFPreprocessor.cxx:1020 AliTOFPreprocessor.cxx:1021 AliTOFPreprocessor.cxx:1022 AliTOFPreprocessor.cxx:1023 AliTOFPreprocessor.cxx:1024 AliTOFPreprocessor.cxx:1025 AliTOFPreprocessor.cxx:1026 AliTOFPreprocessor.cxx:1027 AliTOFPreprocessor.cxx:1028 AliTOFPreprocessor.cxx:1029 AliTOFPreprocessor.cxx:1030 AliTOFPreprocessor.cxx:1031 AliTOFPreprocessor.cxx:1032 AliTOFPreprocessor.cxx:1033 AliTOFPreprocessor.cxx:1034 AliTOFPreprocessor.cxx:1035 AliTOFPreprocessor.cxx:1036 AliTOFPreprocessor.cxx:1037 AliTOFPreprocessor.cxx:1038 AliTOFPreprocessor.cxx:1039 AliTOFPreprocessor.cxx:1040 AliTOFPreprocessor.cxx:1041 AliTOFPreprocessor.cxx:1042 AliTOFPreprocessor.cxx:1043 AliTOFPreprocessor.cxx:1044 AliTOFPreprocessor.cxx:1045 AliTOFPreprocessor.cxx:1046 AliTOFPreprocessor.cxx:1047 AliTOFPreprocessor.cxx:1048 AliTOFPreprocessor.cxx:1049 AliTOFPreprocessor.cxx:1050 AliTOFPreprocessor.cxx:1051 AliTOFPreprocessor.cxx:1052 AliTOFPreprocessor.cxx:1053 AliTOFPreprocessor.cxx:1054 AliTOFPreprocessor.cxx:1055 AliTOFPreprocessor.cxx:1056 AliTOFPreprocessor.cxx:1057 AliTOFPreprocessor.cxx:1058 AliTOFPreprocessor.cxx:1059 AliTOFPreprocessor.cxx:1060 AliTOFPreprocessor.cxx:1061 AliTOFPreprocessor.cxx:1062 AliTOFPreprocessor.cxx:1063 AliTOFPreprocessor.cxx:1064 AliTOFPreprocessor.cxx:1065 AliTOFPreprocessor.cxx:1066 AliTOFPreprocessor.cxx:1067 AliTOFPreprocessor.cxx:1068 AliTOFPreprocessor.cxx:1069 AliTOFPreprocessor.cxx:1070 AliTOFPreprocessor.cxx:1071 AliTOFPreprocessor.cxx:1072 AliTOFPreprocessor.cxx:1073 AliTOFPreprocessor.cxx:1074 AliTOFPreprocessor.cxx:1075 AliTOFPreprocessor.cxx:1076 AliTOFPreprocessor.cxx:1077 AliTOFPreprocessor.cxx:1078 AliTOFPreprocessor.cxx:1079 AliTOFPreprocessor.cxx:1080 AliTOFPreprocessor.cxx:1081 AliTOFPreprocessor.cxx:1082 AliTOFPreprocessor.cxx:1083 AliTOFPreprocessor.cxx:1084 AliTOFPreprocessor.cxx:1085 AliTOFPreprocessor.cxx:1086 AliTOFPreprocessor.cxx:1087 AliTOFPreprocessor.cxx:1088 AliTOFPreprocessor.cxx:1089 AliTOFPreprocessor.cxx:1090 AliTOFPreprocessor.cxx:1091 AliTOFPreprocessor.cxx:1092 AliTOFPreprocessor.cxx:1093 AliTOFPreprocessor.cxx:1094 AliTOFPreprocessor.cxx:1095 AliTOFPreprocessor.cxx:1096 AliTOFPreprocessor.cxx:1097 AliTOFPreprocessor.cxx:1098 AliTOFPreprocessor.cxx:1099 AliTOFPreprocessor.cxx:1100 AliTOFPreprocessor.cxx:1101 AliTOFPreprocessor.cxx:1102 AliTOFPreprocessor.cxx:1103 AliTOFPreprocessor.cxx:1104 AliTOFPreprocessor.cxx:1105 AliTOFPreprocessor.cxx:1106 AliTOFPreprocessor.cxx:1107 AliTOFPreprocessor.cxx:1108 AliTOFPreprocessor.cxx:1109 AliTOFPreprocessor.cxx:1110 AliTOFPreprocessor.cxx:1111 AliTOFPreprocessor.cxx:1112 AliTOFPreprocessor.cxx:1113 AliTOFPreprocessor.cxx:1114 AliTOFPreprocessor.cxx:1115 AliTOFPreprocessor.cxx:1116 AliTOFPreprocessor.cxx:1117 AliTOFPreprocessor.cxx:1118 AliTOFPreprocessor.cxx:1119 AliTOFPreprocessor.cxx:1120 AliTOFPreprocessor.cxx:1121 AliTOFPreprocessor.cxx:1122 AliTOFPreprocessor.cxx:1123 AliTOFPreprocessor.cxx:1124 AliTOFPreprocessor.cxx:1125 AliTOFPreprocessor.cxx:1126 AliTOFPreprocessor.cxx:1127 AliTOFPreprocessor.cxx:1128 AliTOFPreprocessor.cxx:1129 AliTOFPreprocessor.cxx:1130 AliTOFPreprocessor.cxx:1131 AliTOFPreprocessor.cxx:1132 AliTOFPreprocessor.cxx:1133 AliTOFPreprocessor.cxx:1134 AliTOFPreprocessor.cxx:1135 AliTOFPreprocessor.cxx:1136 AliTOFPreprocessor.cxx:1137 AliTOFPreprocessor.cxx:1138 AliTOFPreprocessor.cxx:1139 AliTOFPreprocessor.cxx:1140 AliTOFPreprocessor.cxx:1141 AliTOFPreprocessor.cxx:1142 AliTOFPreprocessor.cxx:1143 AliTOFPreprocessor.cxx:1144 AliTOFPreprocessor.cxx:1145 AliTOFPreprocessor.cxx:1146 AliTOFPreprocessor.cxx:1147 AliTOFPreprocessor.cxx:1148 AliTOFPreprocessor.cxx:1149 AliTOFPreprocessor.cxx:1150 AliTOFPreprocessor.cxx:1151 AliTOFPreprocessor.cxx:1152 AliTOFPreprocessor.cxx:1153 AliTOFPreprocessor.cxx:1154 AliTOFPreprocessor.cxx:1155 AliTOFPreprocessor.cxx:1156 AliTOFPreprocessor.cxx:1157 AliTOFPreprocessor.cxx:1158 AliTOFPreprocessor.cxx:1159 AliTOFPreprocessor.cxx:1160 AliTOFPreprocessor.cxx:1161 AliTOFPreprocessor.cxx:1162 AliTOFPreprocessor.cxx:1163 AliTOFPreprocessor.cxx:1164 AliTOFPreprocessor.cxx:1165 AliTOFPreprocessor.cxx:1166 AliTOFPreprocessor.cxx:1167 AliTOFPreprocessor.cxx:1168 AliTOFPreprocessor.cxx:1169 AliTOFPreprocessor.cxx:1170 AliTOFPreprocessor.cxx:1171 AliTOFPreprocessor.cxx:1172 AliTOFPreprocessor.cxx:1173 AliTOFPreprocessor.cxx:1174 AliTOFPreprocessor.cxx:1175 AliTOFPreprocessor.cxx:1176 AliTOFPreprocessor.cxx:1177 AliTOFPreprocessor.cxx:1178 AliTOFPreprocessor.cxx:1179 AliTOFPreprocessor.cxx:1180 AliTOFPreprocessor.cxx:1181 AliTOFPreprocessor.cxx:1182 AliTOFPreprocessor.cxx:1183 AliTOFPreprocessor.cxx:1184 AliTOFPreprocessor.cxx:1185 AliTOFPreprocessor.cxx:1186 AliTOFPreprocessor.cxx:1187 AliTOFPreprocessor.cxx:1188 AliTOFPreprocessor.cxx:1189 AliTOFPreprocessor.cxx:1190 AliTOFPreprocessor.cxx:1191 AliTOFPreprocessor.cxx:1192 AliTOFPreprocessor.cxx:1193 AliTOFPreprocessor.cxx:1194 AliTOFPreprocessor.cxx:1195 AliTOFPreprocessor.cxx:1196 AliTOFPreprocessor.cxx:1197 AliTOFPreprocessor.cxx:1198 AliTOFPreprocessor.cxx:1199 AliTOFPreprocessor.cxx:1200 AliTOFPreprocessor.cxx:1201 AliTOFPreprocessor.cxx:1202 AliTOFPreprocessor.cxx:1203 AliTOFPreprocessor.cxx:1204 AliTOFPreprocessor.cxx:1205 AliTOFPreprocessor.cxx:1206 AliTOFPreprocessor.cxx:1207 AliTOFPreprocessor.cxx:1208 AliTOFPreprocessor.cxx:1209 AliTOFPreprocessor.cxx:1210 AliTOFPreprocessor.cxx:1211 AliTOFPreprocessor.cxx:1212 AliTOFPreprocessor.cxx:1213 AliTOFPreprocessor.cxx:1214 AliTOFPreprocessor.cxx:1215 AliTOFPreprocessor.cxx:1216 AliTOFPreprocessor.cxx:1217 AliTOFPreprocessor.cxx:1218 AliTOFPreprocessor.cxx:1219 AliTOFPreprocessor.cxx:1220 AliTOFPreprocessor.cxx:1221 AliTOFPreprocessor.cxx:1222 AliTOFPreprocessor.cxx:1223 AliTOFPreprocessor.cxx:1224 AliTOFPreprocessor.cxx:1225 AliTOFPreprocessor.cxx:1226 AliTOFPreprocessor.cxx:1227 AliTOFPreprocessor.cxx:1228 AliTOFPreprocessor.cxx:1229 AliTOFPreprocessor.cxx:1230 AliTOFPreprocessor.cxx:1231 AliTOFPreprocessor.cxx:1232 AliTOFPreprocessor.cxx:1233 AliTOFPreprocessor.cxx:1234 AliTOFPreprocessor.cxx:1235 AliTOFPreprocessor.cxx:1236 AliTOFPreprocessor.cxx:1237 AliTOFPreprocessor.cxx:1238 AliTOFPreprocessor.cxx:1239 AliTOFPreprocessor.cxx:1240 AliTOFPreprocessor.cxx:1241 AliTOFPreprocessor.cxx:1242 AliTOFPreprocessor.cxx:1243 AliTOFPreprocessor.cxx:1244 AliTOFPreprocessor.cxx:1245 AliTOFPreprocessor.cxx:1246 AliTOFPreprocessor.cxx:1247 AliTOFPreprocessor.cxx:1248 AliTOFPreprocessor.cxx:1249 AliTOFPreprocessor.cxx:1250 AliTOFPreprocessor.cxx:1251 AliTOFPreprocessor.cxx:1252 AliTOFPreprocessor.cxx:1253 AliTOFPreprocessor.cxx:1254 AliTOFPreprocessor.cxx:1255 AliTOFPreprocessor.cxx:1256 AliTOFPreprocessor.cxx:1257 AliTOFPreprocessor.cxx:1258 AliTOFPreprocessor.cxx:1259 AliTOFPreprocessor.cxx:1260 AliTOFPreprocessor.cxx:1261 AliTOFPreprocessor.cxx:1262 AliTOFPreprocessor.cxx:1263 AliTOFPreprocessor.cxx:1264 AliTOFPreprocessor.cxx:1265 AliTOFPreprocessor.cxx:1266 AliTOFPreprocessor.cxx:1267 AliTOFPreprocessor.cxx:1268 AliTOFPreprocessor.cxx:1269 AliTOFPreprocessor.cxx:1270 AliTOFPreprocessor.cxx:1271 AliTOFPreprocessor.cxx:1272 AliTOFPreprocessor.cxx:1273 AliTOFPreprocessor.cxx:1274 AliTOFPreprocessor.cxx:1275 AliTOFPreprocessor.cxx:1276 AliTOFPreprocessor.cxx:1277 AliTOFPreprocessor.cxx:1278 AliTOFPreprocessor.cxx:1279 AliTOFPreprocessor.cxx:1280 AliTOFPreprocessor.cxx:1281 AliTOFPreprocessor.cxx:1282 AliTOFPreprocessor.cxx:1283 AliTOFPreprocessor.cxx:1284 AliTOFPreprocessor.cxx:1285 AliTOFPreprocessor.cxx:1286 AliTOFPreprocessor.cxx:1287 AliTOFPreprocessor.cxx:1288 AliTOFPreprocessor.cxx:1289 AliTOFPreprocessor.cxx:1290 AliTOFPreprocessor.cxx:1291 AliTOFPreprocessor.cxx:1292 AliTOFPreprocessor.cxx:1293 AliTOFPreprocessor.cxx:1294 AliTOFPreprocessor.cxx:1295 AliTOFPreprocessor.cxx:1296 AliTOFPreprocessor.cxx:1297 AliTOFPreprocessor.cxx:1298 AliTOFPreprocessor.cxx:1299 AliTOFPreprocessor.cxx:1300 AliTOFPreprocessor.cxx:1301 AliTOFPreprocessor.cxx:1302 AliTOFPreprocessor.cxx:1303 AliTOFPreprocessor.cxx:1304 AliTOFPreprocessor.cxx:1305 AliTOFPreprocessor.cxx:1306 AliTOFPreprocessor.cxx:1307 AliTOFPreprocessor.cxx:1308 AliTOFPreprocessor.cxx:1309 AliTOFPreprocessor.cxx:1310 AliTOFPreprocessor.cxx:1311 AliTOFPreprocessor.cxx:1312 AliTOFPreprocessor.cxx:1313 AliTOFPreprocessor.cxx:1314 AliTOFPreprocessor.cxx:1315 AliTOFPreprocessor.cxx:1316 AliTOFPreprocessor.cxx:1317 AliTOFPreprocessor.cxx:1318 AliTOFPreprocessor.cxx:1319 AliTOFPreprocessor.cxx:1320 AliTOFPreprocessor.cxx:1321 AliTOFPreprocessor.cxx:1322 AliTOFPreprocessor.cxx:1323 AliTOFPreprocessor.cxx:1324 AliTOFPreprocessor.cxx:1325 AliTOFPreprocessor.cxx:1326 AliTOFPreprocessor.cxx:1327 AliTOFPreprocessor.cxx:1328 AliTOFPreprocessor.cxx:1329 AliTOFPreprocessor.cxx:1330 AliTOFPreprocessor.cxx:1331 AliTOFPreprocessor.cxx:1332 AliTOFPreprocessor.cxx:1333 AliTOFPreprocessor.cxx:1334 AliTOFPreprocessor.cxx:1335 AliTOFPreprocessor.cxx:1336 AliTOFPreprocessor.cxx:1337 AliTOFPreprocessor.cxx:1338 AliTOFPreprocessor.cxx:1339 AliTOFPreprocessor.cxx:1340 AliTOFPreprocessor.cxx:1341 AliTOFPreprocessor.cxx:1342 AliTOFPreprocessor.cxx:1343 AliTOFPreprocessor.cxx:1344 AliTOFPreprocessor.cxx:1345 AliTOFPreprocessor.cxx:1346 AliTOFPreprocessor.cxx:1347 AliTOFPreprocessor.cxx:1348 AliTOFPreprocessor.cxx:1349 AliTOFPreprocessor.cxx:1350 AliTOFPreprocessor.cxx:1351 AliTOFPreprocessor.cxx:1352 AliTOFPreprocessor.cxx:1353 AliTOFPreprocessor.cxx:1354 AliTOFPreprocessor.cxx:1355 AliTOFPreprocessor.cxx:1356 AliTOFPreprocessor.cxx:1357 AliTOFPreprocessor.cxx:1358 AliTOFPreprocessor.cxx:1359 AliTOFPreprocessor.cxx:1360 AliTOFPreprocessor.cxx:1361 AliTOFPreprocessor.cxx:1362 AliTOFPreprocessor.cxx:1363 AliTOFPreprocessor.cxx:1364 AliTOFPreprocessor.cxx:1365 AliTOFPreprocessor.cxx:1366 AliTOFPreprocessor.cxx:1367 AliTOFPreprocessor.cxx:1368 AliTOFPreprocessor.cxx:1369 AliTOFPreprocessor.cxx:1370 AliTOFPreprocessor.cxx:1371 AliTOFPreprocessor.cxx:1372 AliTOFPreprocessor.cxx:1373 AliTOFPreprocessor.cxx:1374 AliTOFPreprocessor.cxx:1375 AliTOFPreprocessor.cxx:1376 AliTOFPreprocessor.cxx:1377 AliTOFPreprocessor.cxx:1378 AliTOFPreprocessor.cxx:1379 AliTOFPreprocessor.cxx:1380 AliTOFPreprocessor.cxx:1381 AliTOFPreprocessor.cxx:1382 AliTOFPreprocessor.cxx:1383 AliTOFPreprocessor.cxx:1384 AliTOFPreprocessor.cxx:1385 AliTOFPreprocessor.cxx:1386 AliTOFPreprocessor.cxx:1387 AliTOFPreprocessor.cxx:1388 AliTOFPreprocessor.cxx:1389 AliTOFPreprocessor.cxx:1390 AliTOFPreprocessor.cxx:1391 AliTOFPreprocessor.cxx:1392 AliTOFPreprocessor.cxx:1393 AliTOFPreprocessor.cxx:1394 AliTOFPreprocessor.cxx:1395 AliTOFPreprocessor.cxx:1396 AliTOFPreprocessor.cxx:1397 AliTOFPreprocessor.cxx:1398 AliTOFPreprocessor.cxx:1399 AliTOFPreprocessor.cxx:1400 AliTOFPreprocessor.cxx:1401 AliTOFPreprocessor.cxx:1402 AliTOFPreprocessor.cxx:1403 AliTOFPreprocessor.cxx:1404 AliTOFPreprocessor.cxx:1405 AliTOFPreprocessor.cxx:1406 AliTOFPreprocessor.cxx:1407 AliTOFPreprocessor.cxx:1408 AliTOFPreprocessor.cxx:1409 AliTOFPreprocessor.cxx:1410 AliTOFPreprocessor.cxx:1411 AliTOFPreprocessor.cxx:1412 AliTOFPreprocessor.cxx:1413 AliTOFPreprocessor.cxx:1414 AliTOFPreprocessor.cxx:1415 AliTOFPreprocessor.cxx:1416 AliTOFPreprocessor.cxx:1417 AliTOFPreprocessor.cxx:1418 AliTOFPreprocessor.cxx:1419 AliTOFPreprocessor.cxx:1420 AliTOFPreprocessor.cxx:1421 AliTOFPreprocessor.cxx:1422 AliTOFPreprocessor.cxx:1423 AliTOFPreprocessor.cxx:1424 AliTOFPreprocessor.cxx:1425 AliTOFPreprocessor.cxx:1426 AliTOFPreprocessor.cxx:1427 AliTOFPreprocessor.cxx:1428 AliTOFPreprocessor.cxx:1429 AliTOFPreprocessor.cxx:1430 AliTOFPreprocessor.cxx:1431 AliTOFPreprocessor.cxx:1432 AliTOFPreprocessor.cxx:1433 AliTOFPreprocessor.cxx:1434 AliTOFPreprocessor.cxx:1435 AliTOFPreprocessor.cxx:1436 AliTOFPreprocessor.cxx:1437 AliTOFPreprocessor.cxx:1438 AliTOFPreprocessor.cxx:1439 AliTOFPreprocessor.cxx:1440 AliTOFPreprocessor.cxx:1441 AliTOFPreprocessor.cxx:1442 AliTOFPreprocessor.cxx:1443 AliTOFPreprocessor.cxx:1444 AliTOFPreprocessor.cxx:1445 AliTOFPreprocessor.cxx:1446 AliTOFPreprocessor.cxx:1447 AliTOFPreprocessor.cxx:1448 AliTOFPreprocessor.cxx:1449 AliTOFPreprocessor.cxx:1450 AliTOFPreprocessor.cxx:1451 AliTOFPreprocessor.cxx:1452 AliTOFPreprocessor.cxx:1453 AliTOFPreprocessor.cxx:1454 AliTOFPreprocessor.cxx:1455 AliTOFPreprocessor.cxx:1456 AliTOFPreprocessor.cxx:1457 AliTOFPreprocessor.cxx:1458 AliTOFPreprocessor.cxx:1459 AliTOFPreprocessor.cxx:1460 AliTOFPreprocessor.cxx:1461 AliTOFPreprocessor.cxx:1462 AliTOFPreprocessor.cxx:1463 AliTOFPreprocessor.cxx:1464 AliTOFPreprocessor.cxx:1465 AliTOFPreprocessor.cxx:1466 AliTOFPreprocessor.cxx:1467 AliTOFPreprocessor.cxx:1468 AliTOFPreprocessor.cxx:1469 AliTOFPreprocessor.cxx:1470 AliTOFPreprocessor.cxx:1471 AliTOFPreprocessor.cxx:1472 AliTOFPreprocessor.cxx:1473 AliTOFPreprocessor.cxx:1474 AliTOFPreprocessor.cxx:1475 AliTOFPreprocessor.cxx:1476 AliTOFPreprocessor.cxx:1477 AliTOFPreprocessor.cxx:1478 AliTOFPreprocessor.cxx:1479 AliTOFPreprocessor.cxx:1480 AliTOFPreprocessor.cxx:1481 AliTOFPreprocessor.cxx:1482 AliTOFPreprocessor.cxx:1483 AliTOFPreprocessor.cxx:1484 AliTOFPreprocessor.cxx:1485 AliTOFPreprocessor.cxx:1486 AliTOFPreprocessor.cxx:1487 AliTOFPreprocessor.cxx:1488 AliTOFPreprocessor.cxx:1489 AliTOFPreprocessor.cxx:1490 AliTOFPreprocessor.cxx:1491 AliTOFPreprocessor.cxx:1492 AliTOFPreprocessor.cxx:1493 AliTOFPreprocessor.cxx:1494 AliTOFPreprocessor.cxx:1495 AliTOFPreprocessor.cxx:1496 AliTOFPreprocessor.cxx:1497 AliTOFPreprocessor.cxx:1498 AliTOFPreprocessor.cxx:1499 AliTOFPreprocessor.cxx:1500 AliTOFPreprocessor.cxx:1501 AliTOFPreprocessor.cxx:1502 AliTOFPreprocessor.cxx:1503 AliTOFPreprocessor.cxx:1504 AliTOFPreprocessor.cxx:1505 AliTOFPreprocessor.cxx:1506 AliTOFPreprocessor.cxx:1507 AliTOFPreprocessor.cxx:1508 AliTOFPreprocessor.cxx:1509 AliTOFPreprocessor.cxx:1510 AliTOFPreprocessor.cxx:1511 AliTOFPreprocessor.cxx:1512 AliTOFPreprocessor.cxx:1513 AliTOFPreprocessor.cxx:1514 AliTOFPreprocessor.cxx:1515 AliTOFPreprocessor.cxx:1516 AliTOFPreprocessor.cxx:1517 AliTOFPreprocessor.cxx:1518 AliTOFPreprocessor.cxx:1519 AliTOFPreprocessor.cxx:1520 AliTOFPreprocessor.cxx:1521 AliTOFPreprocessor.cxx:1522 AliTOFPreprocessor.cxx:1523 AliTOFPreprocessor.cxx:1524 AliTOFPreprocessor.cxx:1525 AliTOFPreprocessor.cxx:1526 AliTOFPreprocessor.cxx:1527 AliTOFPreprocessor.cxx:1528 AliTOFPreprocessor.cxx:1529 AliTOFPreprocessor.cxx:1530 AliTOFPreprocessor.cxx:1531 AliTOFPreprocessor.cxx:1532 AliTOFPreprocessor.cxx:1533 AliTOFPreprocessor.cxx:1534 AliTOFPreprocessor.cxx:1535 AliTOFPreprocessor.cxx:1536 AliTOFPreprocessor.cxx:1537 AliTOFPreprocessor.cxx:1538 AliTOFPreprocessor.cxx:1539 AliTOFPreprocessor.cxx:1540 AliTOFPreprocessor.cxx:1541 AliTOFPreprocessor.cxx:1542 AliTOFPreprocessor.cxx:1543 AliTOFPreprocessor.cxx:1544 AliTOFPreprocessor.cxx:1545 AliTOFPreprocessor.cxx:1546 AliTOFPreprocessor.cxx:1547 AliTOFPreprocessor.cxx:1548 AliTOFPreprocessor.cxx:1549 AliTOFPreprocessor.cxx:1550 AliTOFPreprocessor.cxx:1551 AliTOFPreprocessor.cxx:1552 AliTOFPreprocessor.cxx:1553 AliTOFPreprocessor.cxx:1554 AliTOFPreprocessor.cxx:1555 AliTOFPreprocessor.cxx:1556 AliTOFPreprocessor.cxx:1557 AliTOFPreprocessor.cxx:1558 AliTOFPreprocessor.cxx:1559 AliTOFPreprocessor.cxx:1560 AliTOFPreprocessor.cxx:1561 AliTOFPreprocessor.cxx:1562 AliTOFPreprocessor.cxx:1563 AliTOFPreprocessor.cxx:1564 AliTOFPreprocessor.cxx:1565 AliTOFPreprocessor.cxx:1566 AliTOFPreprocessor.cxx:1567 AliTOFPreprocessor.cxx:1568 AliTOFPreprocessor.cxx:1569 AliTOFPreprocessor.cxx:1570 AliTOFPreprocessor.cxx:1571 AliTOFPreprocessor.cxx:1572 AliTOFPreprocessor.cxx:1573 AliTOFPreprocessor.cxx:1574 AliTOFPreprocessor.cxx:1575 AliTOFPreprocessor.cxx:1576 AliTOFPreprocessor.cxx:1577 AliTOFPreprocessor.cxx:1578 AliTOFPreprocessor.cxx:1579 AliTOFPreprocessor.cxx:1580 AliTOFPreprocessor.cxx:1581 AliTOFPreprocessor.cxx:1582 AliTOFPreprocessor.cxx:1583 AliTOFPreprocessor.cxx:1584 AliTOFPreprocessor.cxx:1585 AliTOFPreprocessor.cxx:1586 AliTOFPreprocessor.cxx:1587 AliTOFPreprocessor.cxx:1588 AliTOFPreprocessor.cxx:1589 AliTOFPreprocessor.cxx:1590 AliTOFPreprocessor.cxx:1591 AliTOFPreprocessor.cxx:1592 AliTOFPreprocessor.cxx:1593 AliTOFPreprocessor.cxx:1594 AliTOFPreprocessor.cxx:1595 AliTOFPreprocessor.cxx:1596 AliTOFPreprocessor.cxx:1597 AliTOFPreprocessor.cxx:1598 AliTOFPreprocessor.cxx:1599 AliTOFPreprocessor.cxx:1600 AliTOFPreprocessor.cxx:1601 AliTOFPreprocessor.cxx:1602 AliTOFPreprocessor.cxx:1603 AliTOFPreprocessor.cxx:1604 AliTOFPreprocessor.cxx:1605 AliTOFPreprocessor.cxx:1606 AliTOFPreprocessor.cxx:1607 AliTOFPreprocessor.cxx:1608 AliTOFPreprocessor.cxx:1609 AliTOFPreprocessor.cxx:1610 AliTOFPreprocessor.cxx:1611 AliTOFPreprocessor.cxx:1612 AliTOFPreprocessor.cxx:1613 AliTOFPreprocessor.cxx:1614 AliTOFPreprocessor.cxx:1615 AliTOFPreprocessor.cxx:1616 AliTOFPreprocessor.cxx:1617 AliTOFPreprocessor.cxx:1618 AliTOFPreprocessor.cxx:1619 AliTOFPreprocessor.cxx:1620 AliTOFPreprocessor.cxx:1621 AliTOFPreprocessor.cxx:1622 AliTOFPreprocessor.cxx:1623 AliTOFPreprocessor.cxx:1624 AliTOFPreprocessor.cxx:1625 AliTOFPreprocessor.cxx:1626 AliTOFPreprocessor.cxx:1627 AliTOFPreprocessor.cxx:1628 AliTOFPreprocessor.cxx:1629 AliTOFPreprocessor.cxx:1630 AliTOFPreprocessor.cxx:1631 AliTOFPreprocessor.cxx:1632 AliTOFPreprocessor.cxx:1633 AliTOFPreprocessor.cxx:1634 AliTOFPreprocessor.cxx:1635 AliTOFPreprocessor.cxx:1636 AliTOFPreprocessor.cxx:1637 AliTOFPreprocessor.cxx:1638 AliTOFPreprocessor.cxx:1639 AliTOFPreprocessor.cxx:1640 AliTOFPreprocessor.cxx:1641 AliTOFPreprocessor.cxx:1642 AliTOFPreprocessor.cxx:1643 AliTOFPreprocessor.cxx:1644 AliTOFPreprocessor.cxx:1645 AliTOFPreprocessor.cxx:1646 AliTOFPreprocessor.cxx:1647 AliTOFPreprocessor.cxx:1648 AliTOFPreprocessor.cxx:1649 AliTOFPreprocessor.cxx:1650 AliTOFPreprocessor.cxx:1651 AliTOFPreprocessor.cxx:1652 AliTOFPreprocessor.cxx:1653 AliTOFPreprocessor.cxx:1654 AliTOFPreprocessor.cxx:1655 AliTOFPreprocessor.cxx:1656 AliTOFPreprocessor.cxx:1657 AliTOFPreprocessor.cxx:1658 AliTOFPreprocessor.cxx:1659 AliTOFPreprocessor.cxx:1660 AliTOFPreprocessor.cxx:1661 AliTOFPreprocessor.cxx:1662 AliTOFPreprocessor.cxx:1663 AliTOFPreprocessor.cxx:1664 AliTOFPreprocessor.cxx:1665 AliTOFPreprocessor.cxx:1666 AliTOFPreprocessor.cxx:1667 AliTOFPreprocessor.cxx:1668 AliTOFPreprocessor.cxx:1669 AliTOFPreprocessor.cxx:1670 AliTOFPreprocessor.cxx:1671 AliTOFPreprocessor.cxx:1672 AliTOFPreprocessor.cxx:1673 AliTOFPreprocessor.cxx:1674 AliTOFPreprocessor.cxx:1675 AliTOFPreprocessor.cxx:1676 AliTOFPreprocessor.cxx:1677 AliTOFPreprocessor.cxx:1678 AliTOFPreprocessor.cxx:1679 AliTOFPreprocessor.cxx:1680 AliTOFPreprocessor.cxx:1681 AliTOFPreprocessor.cxx:1682 AliTOFPreprocessor.cxx:1683 AliTOFPreprocessor.cxx:1684 AliTOFPreprocessor.cxx:1685 AliTOFPreprocessor.cxx:1686 AliTOFPreprocessor.cxx:1687 AliTOFPreprocessor.cxx:1688 AliTOFPreprocessor.cxx:1689 AliTOFPreprocessor.cxx:1690 AliTOFPreprocessor.cxx:1691 AliTOFPreprocessor.cxx:1692 AliTOFPreprocessor.cxx:1693 AliTOFPreprocessor.cxx:1694 AliTOFPreprocessor.cxx:1695 AliTOFPreprocessor.cxx:1696 AliTOFPreprocessor.cxx:1697 AliTOFPreprocessor.cxx:1698 AliTOFPreprocessor.cxx:1699 AliTOFPreprocessor.cxx:1700 AliTOFPreprocessor.cxx:1701 AliTOFPreprocessor.cxx:1702 AliTOFPreprocessor.cxx:1703 AliTOFPreprocessor.cxx:1704 AliTOFPreprocessor.cxx:1705 AliTOFPreprocessor.cxx:1706 AliTOFPreprocessor.cxx:1707 AliTOFPreprocessor.cxx:1708 AliTOFPreprocessor.cxx:1709 AliTOFPreprocessor.cxx:1710 AliTOFPreprocessor.cxx:1711 AliTOFPreprocessor.cxx:1712 AliTOFPreprocessor.cxx:1713 AliTOFPreprocessor.cxx:1714 AliTOFPreprocessor.cxx:1715 AliTOFPreprocessor.cxx:1716 AliTOFPreprocessor.cxx:1717 AliTOFPreprocessor.cxx:1718 AliTOFPreprocessor.cxx:1719 AliTOFPreprocessor.cxx:1720 AliTOFPreprocessor.cxx:1721 AliTOFPreprocessor.cxx:1722 AliTOFPreprocessor.cxx:1723 AliTOFPreprocessor.cxx:1724 AliTOFPreprocessor.cxx:1725 AliTOFPreprocessor.cxx:1726 AliTOFPreprocessor.cxx:1727 AliTOFPreprocessor.cxx:1728 AliTOFPreprocessor.cxx:1729 AliTOFPreprocessor.cxx:1730 AliTOFPreprocessor.cxx:1731 AliTOFPreprocessor.cxx:1732 AliTOFPreprocessor.cxx:1733 AliTOFPreprocessor.cxx:1734 AliTOFPreprocessor.cxx:1735 AliTOFPreprocessor.cxx:1736 AliTOFPreprocessor.cxx:1737 AliTOFPreprocessor.cxx:1738 AliTOFPreprocessor.cxx:1739 AliTOFPreprocessor.cxx:1740 AliTOFPreprocessor.cxx:1741 AliTOFPreprocessor.cxx:1742 AliTOFPreprocessor.cxx:1743 AliTOFPreprocessor.cxx:1744 AliTOFPreprocessor.cxx:1745 AliTOFPreprocessor.cxx:1746 AliTOFPreprocessor.cxx:1747 AliTOFPreprocessor.cxx:1748 AliTOFPreprocessor.cxx:1749 AliTOFPreprocessor.cxx:1750 AliTOFPreprocessor.cxx:1751 AliTOFPreprocessor.cxx:1752 AliTOFPreprocessor.cxx:1753 AliTOFPreprocessor.cxx:1754 AliTOFPreprocessor.cxx:1755 AliTOFPreprocessor.cxx:1756 AliTOFPreprocessor.cxx:1757 AliTOFPreprocessor.cxx:1758 AliTOFPreprocessor.cxx:1759 AliTOFPreprocessor.cxx:1760 AliTOFPreprocessor.cxx:1761 AliTOFPreprocessor.cxx:1762 AliTOFPreprocessor.cxx:1763 AliTOFPreprocessor.cxx:1764 AliTOFPreprocessor.cxx:1765 AliTOFPreprocessor.cxx:1766 AliTOFPreprocessor.cxx:1767 AliTOFPreprocessor.cxx:1768 AliTOFPreprocessor.cxx:1769 AliTOFPreprocessor.cxx:1770 AliTOFPreprocessor.cxx:1771 AliTOFPreprocessor.cxx:1772 AliTOFPreprocessor.cxx:1773 AliTOFPreprocessor.cxx:1774 AliTOFPreprocessor.cxx:1775 AliTOFPreprocessor.cxx:1776 AliTOFPreprocessor.cxx:1777 AliTOFPreprocessor.cxx:1778 AliTOFPreprocessor.cxx:1779 AliTOFPreprocessor.cxx:1780 AliTOFPreprocessor.cxx:1781 AliTOFPreprocessor.cxx:1782 AliTOFPreprocessor.cxx:1783 AliTOFPreprocessor.cxx:1784 AliTOFPreprocessor.cxx:1785 AliTOFPreprocessor.cxx:1786 AliTOFPreprocessor.cxx:1787 AliTOFPreprocessor.cxx:1788 AliTOFPreprocessor.cxx:1789 AliTOFPreprocessor.cxx:1790 AliTOFPreprocessor.cxx:1791 AliTOFPreprocessor.cxx:1792 AliTOFPreprocessor.cxx:1793 AliTOFPreprocessor.cxx:1794 AliTOFPreprocessor.cxx:1795 AliTOFPreprocessor.cxx:1796 AliTOFPreprocessor.cxx:1797 AliTOFPreprocessor.cxx:1798 AliTOFPreprocessor.cxx:1799 AliTOFPreprocessor.cxx:1800 AliTOFPreprocessor.cxx:1801 AliTOFPreprocessor.cxx:1802 AliTOFPreprocessor.cxx:1803 AliTOFPreprocessor.cxx:1804 AliTOFPreprocessor.cxx:1805 AliTOFPreprocessor.cxx:1806 AliTOFPreprocessor.cxx:1807 AliTOFPreprocessor.cxx:1808 AliTOFPreprocessor.cxx:1809 AliTOFPreprocessor.cxx:1810 AliTOFPreprocessor.cxx:1811 AliTOFPreprocessor.cxx:1812 AliTOFPreprocessor.cxx:1813 AliTOFPreprocessor.cxx:1814 AliTOFPreprocessor.cxx:1815 AliTOFPreprocessor.cxx:1816 AliTOFPreprocessor.cxx:1817 AliTOFPreprocessor.cxx:1818 AliTOFPreprocessor.cxx:1819 AliTOFPreprocessor.cxx:1820 AliTOFPreprocessor.cxx:1821 AliTOFPreprocessor.cxx:1822 AliTOFPreprocessor.cxx:1823 AliTOFPreprocessor.cxx:1824 AliTOFPreprocessor.cxx:1825 AliTOFPreprocessor.cxx:1826 AliTOFPreprocessor.cxx:1827 AliTOFPreprocessor.cxx:1828 AliTOFPreprocessor.cxx:1829 AliTOFPreprocessor.cxx:1830 AliTOFPreprocessor.cxx:1831 AliTOFPreprocessor.cxx:1832 AliTOFPreprocessor.cxx:1833 AliTOFPreprocessor.cxx:1834 AliTOFPreprocessor.cxx:1835 AliTOFPreprocessor.cxx:1836 AliTOFPreprocessor.cxx:1837 AliTOFPreprocessor.cxx:1838 AliTOFPreprocessor.cxx:1839 AliTOFPreprocessor.cxx:1840 AliTOFPreprocessor.cxx:1841 AliTOFPreprocessor.cxx:1842 AliTOFPreprocessor.cxx:1843 AliTOFPreprocessor.cxx:1844 AliTOFPreprocessor.cxx:1845 AliTOFPreprocessor.cxx:1846 AliTOFPreprocessor.cxx:1847 AliTOFPreprocessor.cxx:1848 AliTOFPreprocessor.cxx:1849 AliTOFPreprocessor.cxx:1850 AliTOFPreprocessor.cxx:1851 AliTOFPreprocessor.cxx:1852 AliTOFPreprocessor.cxx:1853 AliTOFPreprocessor.cxx:1854 AliTOFPreprocessor.cxx:1855 AliTOFPreprocessor.cxx:1856 AliTOFPreprocessor.cxx:1857 AliTOFPreprocessor.cxx:1858 AliTOFPreprocessor.cxx:1859 AliTOFPreprocessor.cxx:1860 AliTOFPreprocessor.cxx:1861 AliTOFPreprocessor.cxx:1862 AliTOFPreprocessor.cxx:1863 AliTOFPreprocessor.cxx:1864 AliTOFPreprocessor.cxx:1865 AliTOFPreprocessor.cxx:1866 AliTOFPreprocessor.cxx:1867 AliTOFPreprocessor.cxx:1868 AliTOFPreprocessor.cxx:1869 AliTOFPreprocessor.cxx:1870 AliTOFPreprocessor.cxx:1871 AliTOFPreprocessor.cxx:1872 AliTOFPreprocessor.cxx:1873 AliTOFPreprocessor.cxx:1874 AliTOFPreprocessor.cxx:1875 AliTOFPreprocessor.cxx:1876 AliTOFPreprocessor.cxx:1877 AliTOFPreprocessor.cxx:1878 AliTOFPreprocessor.cxx:1879 AliTOFPreprocessor.cxx:1880 AliTOFPreprocessor.cxx:1881 AliTOFPreprocessor.cxx:1882 AliTOFPreprocessor.cxx:1883 AliTOFPreprocessor.cxx:1884 AliTOFPreprocessor.cxx:1885 AliTOFPreprocessor.cxx:1886 AliTOFPreprocessor.cxx:1887 AliTOFPreprocessor.cxx:1888 AliTOFPreprocessor.cxx:1889 AliTOFPreprocessor.cxx:1890 AliTOFPreprocessor.cxx:1891 AliTOFPreprocessor.cxx:1892 AliTOFPreprocessor.cxx:1893 AliTOFPreprocessor.cxx:1894 AliTOFPreprocessor.cxx:1895 AliTOFPreprocessor.cxx:1896 AliTOFPreprocessor.cxx:1897 AliTOFPreprocessor.cxx:1898 AliTOFPreprocessor.cxx:1899 AliTOFPreprocessor.cxx:1900 AliTOFPreprocessor.cxx:1901 AliTOFPreprocessor.cxx:1902 AliTOFPreprocessor.cxx:1903 AliTOFPreprocessor.cxx:1904 AliTOFPreprocessor.cxx:1905 AliTOFPreprocessor.cxx:1906 AliTOFPreprocessor.cxx:1907 AliTOFPreprocessor.cxx:1908 AliTOFPreprocessor.cxx:1909 AliTOFPreprocessor.cxx:1910 AliTOFPreprocessor.cxx:1911 AliTOFPreprocessor.cxx:1912 AliTOFPreprocessor.cxx:1913 AliTOFPreprocessor.cxx:1914 AliTOFPreprocessor.cxx:1915 AliTOFPreprocessor.cxx:1916 AliTOFPreprocessor.cxx:1917 AliTOFPreprocessor.cxx:1918 AliTOFPreprocessor.cxx:1919 AliTOFPreprocessor.cxx:1920 AliTOFPreprocessor.cxx:1921 AliTOFPreprocessor.cxx:1922 AliTOFPreprocessor.cxx:1923 AliTOFPreprocessor.cxx:1924 AliTOFPreprocessor.cxx:1925 AliTOFPreprocessor.cxx:1926 AliTOFPreprocessor.cxx:1927 AliTOFPreprocessor.cxx:1928 AliTOFPreprocessor.cxx:1929 AliTOFPreprocessor.cxx:1930 AliTOFPreprocessor.cxx:1931 AliTOFPreprocessor.cxx:1932 AliTOFPreprocessor.cxx:1933 AliTOFPreprocessor.cxx:1934 AliTOFPreprocessor.cxx:1935 AliTOFPreprocessor.cxx:1936 AliTOFPreprocessor.cxx:1937 AliTOFPreprocessor.cxx:1938 AliTOFPreprocessor.cxx:1939 AliTOFPreprocessor.cxx:1940 AliTOFPreprocessor.cxx:1941 AliTOFPreprocessor.cxx:1942 AliTOFPreprocessor.cxx:1943 AliTOFPreprocessor.cxx:1944 AliTOFPreprocessor.cxx:1945 AliTOFPreprocessor.cxx:1946 AliTOFPreprocessor.cxx:1947 AliTOFPreprocessor.cxx:1948 AliTOFPreprocessor.cxx:1949 AliTOFPreprocessor.cxx:1950 AliTOFPreprocessor.cxx:1951 AliTOFPreprocessor.cxx:1952 AliTOFPreprocessor.cxx:1953 AliTOFPreprocessor.cxx:1954 AliTOFPreprocessor.cxx:1955 AliTOFPreprocessor.cxx:1956 AliTOFPreprocessor.cxx:1957 AliTOFPreprocessor.cxx:1958 AliTOFPreprocessor.cxx:1959 AliTOFPreprocessor.cxx:1960 AliTOFPreprocessor.cxx:1961 AliTOFPreprocessor.cxx:1962 AliTOFPreprocessor.cxx:1963 AliTOFPreprocessor.cxx:1964 AliTOFPreprocessor.cxx:1965 AliTOFPreprocessor.cxx:1966 AliTOFPreprocessor.cxx:1967 AliTOFPreprocessor.cxx:1968 AliTOFPreprocessor.cxx:1969 AliTOFPreprocessor.cxx:1970 AliTOFPreprocessor.cxx:1971 AliTOFPreprocessor.cxx:1972 AliTOFPreprocessor.cxx:1973 AliTOFPreprocessor.cxx:1974 AliTOFPreprocessor.cxx:1975 AliTOFPreprocessor.cxx:1976