#include "TString.h"
#include "TTimeStamp.h"
#include "TMap.h"
#include "TMath.h"
#include "TH1C.h"
#include "AliDCSValue.h"
#include "AliLog.h"
#include "AliBitPacking.h"
#include "AliTOFGeometry.h"
#include "AliTOFDCSmaps.h"
#include "AliTOFLvHvDataPoints.h"
class AliCDBMetaData;
class TDatime;
ClassImp(AliTOFLvHvDataPoints)
AliTOFLvHvDataPoints::AliTOFLvHvDataPoints():
TObject(),
fRun(0),
fStartTime(0),
fEndTime(0),
fStartTimeDCSQuery(0),
fEndTimeDCSQuery(0),
fIsProcessed(kFALSE),
fFDR(kFALSE),
fNumberOfLVdataPoints(0),
fNumberOfHVdataPoints(0),
fNumberOfHVandLVmaps(0),
fStartingLVmap(0x0),
fStartingHVmap(0x0),
fHisto(0x0),
fNSecondsBeforeEOR(60)
{
for (Int_t ii=0; ii<kNmaxDataPoints; ii++) fLVDataPoints[ii]= 0x0;
for (Int_t ii=0; ii<kNmaxDataPoints; ii++) fHVDataPoints[ii]= 0x0;
for (Int_t ii=0; ii<kNmaxDataPoints; ii++) fMap[ii]= 0x0;
}
AliTOFLvHvDataPoints::AliTOFLvHvDataPoints(Int_t nRun, UInt_t startTime, UInt_t endTime, UInt_t startTimeDCSQuery, UInt_t endTimeDCSQuery):
TObject(),
fRun(nRun),
fStartTime(startTime),
fEndTime(endTime),
fStartTimeDCSQuery(startTimeDCSQuery),
fEndTimeDCSQuery(endTimeDCSQuery),
fIsProcessed(kFALSE),
fFDR(kFALSE),
fNumberOfLVdataPoints(0),
fNumberOfHVdataPoints(0),
fNumberOfHVandLVmaps(0),
fStartingLVmap(new AliTOFDCSmaps()),
fStartingHVmap(new AliTOFDCSmaps()),
fHisto(new TH1C("histo","",kNpads,-0.5,kNpads-0.5)),
fNSecondsBeforeEOR(60)
{
for (Int_t ii=0; ii<kNmaxDataPoints; ii++) fLVDataPoints[ii]= 0x0;
for (Int_t ii=0; ii<kNmaxDataPoints; ii++) fHVDataPoints[ii]= 0x0;
for (Int_t ii=0; ii<kNmaxDataPoints; ii++) fMap[ii]= 0x0;
AliInfo(Form("\n\tRun %d \n\tStartTime %s \n\tEndTime %s \n\tStartTime DCS Query %s \n\tEndTime DCS Query %s", nRun,
TTimeStamp(startTime).AsString(),
TTimeStamp(endTime).AsString(),
TTimeStamp(startTimeDCSQuery).AsString(),
TTimeStamp(endTimeDCSQuery).AsString()));
Init();
}
AliTOFLvHvDataPoints::AliTOFLvHvDataPoints(const AliTOFLvHvDataPoints & data):
TObject(data),
fRun(data.fRun),
fStartTime(data.fStartTime),
fEndTime(data.fEndTime),
fStartTimeDCSQuery(data.fStartTimeDCSQuery),
fEndTimeDCSQuery(data.fEndTimeDCSQuery),
fIsProcessed(data.fIsProcessed),
fFDR(data.fFDR),
fNumberOfLVdataPoints(data.fNumberOfLVdataPoints),
fNumberOfHVdataPoints(data.fNumberOfHVdataPoints),
fNumberOfHVandLVmaps(data.fNumberOfHVandLVmaps),
fStartingLVmap(data.fStartingLVmap),
fStartingHVmap(data.fStartingHVmap),
fHisto(data.fHisto),
fNSecondsBeforeEOR(data.fNSecondsBeforeEOR)
{
for(int i=0;i<kNddl;i++)
fAliasNamesXLVmap[i]=data.fAliasNamesXLVmap[i];
for(int i=0;i<kNsectors;i++)
for(int j=0;j<kNplates;j++)
fAliasNamesXHVmap[i][j]=data.fAliasNamesXHVmap[i][j];
for (Int_t ii=0; ii<kNmaxDataPoints; ii++) fLVDataPoints[ii]= data.fLVDataPoints[ii];
for (Int_t ii=0; ii<kNmaxDataPoints; ii++) fHVDataPoints[ii]= data.fLVDataPoints[ii];
for (Int_t ii=0; ii<kNmaxDataPoints; ii++) fMap[ii]= data.fMap[ii];
}
AliTOFLvHvDataPoints& AliTOFLvHvDataPoints:: operator=(const AliTOFLvHvDataPoints & data) {
if (this == &data)
return *this;
TObject::operator=(data);
fRun=data.GetRun();
fStartTime=data.GetStartTime();
fEndTime=data.GetEndTime();
fStartTimeDCSQuery=data.GetStartTimeDCSQuery();
fEndTimeDCSQuery=data.GetEndTimeDCSQuery();
fNumberOfLVdataPoints=data.fNumberOfLVdataPoints;
fNumberOfHVdataPoints=data.fNumberOfHVdataPoints;
fNumberOfHVandLVmaps=data.fNumberOfHVandLVmaps;
fStartingLVmap=data.fStartingLVmap;
fStartingHVmap=data.fStartingHVmap;
for(int i=0;i<kNddl;i++)
fAliasNamesXLVmap[i]=data.fAliasNamesXLVmap[i];
for(int i=0;i<kNsectors;i++)
for(int j=0;j<kNplates;j++)
fAliasNamesXHVmap[i][j]=data.fAliasNamesXHVmap[i][j];
fHisto=data.fHisto;
fNSecondsBeforeEOR=data.fNSecondsBeforeEOR;
for (Int_t ii=0; ii<kNmaxDataPoints; ii++) fLVDataPoints[ii]= data.fLVDataPoints[ii];
for (Int_t ii=0; ii<kNmaxDataPoints; ii++) fHVDataPoints[ii]= data.fLVDataPoints[ii];
for (Int_t ii=0; ii<kNmaxDataPoints; ii++) fMap[ii]= data.fMap[ii];
return *this;
}
AliTOFLvHvDataPoints::~AliTOFLvHvDataPoints() {
delete fStartingLVmap;
delete fStartingHVmap;
for (Int_t ii=0; ii<kNmaxDataPoints; ii++)
if (fLVDataPoints[ii]) fLVDataPoints[ii]->Delete();
for (Int_t ii=0; ii<kNmaxDataPoints; ii++)
if (fHVDataPoints[ii]) fHVDataPoints[ii]->Delete();
for (Int_t ii=0; ii<kNmaxDataPoints; ii++)
if (fMap[ii]) fMap[ii]->Delete();
}
Bool_t AliTOFLvHvDataPoints::ProcessData(TMap& aliasMap) {
if(!(fAliasNamesXHVmap[0][0]) || !(fAliasNamesXLVmap[0])) Init();
AliInfo(Form(" Start Time = %i",fStartTime));
AliInfo(Form(" End Time = %i",fEndTime));
AliInfo(Form(" Start Time DCS Query= %i",fStartTimeDCSQuery));
AliInfo(Form(" End Time DCS Query= %i",fEndTimeDCSQuery));
if (fEndTime==fStartTime){
AliError(Form(" Run with null time length: start time = %d = end time = %d",fStartTime,fEndTime));
return kFALSE;
}
if (!ReadLVDataPoints(aliasMap)) return kFALSE;
AliDebug(1,Form(" Number of LV dp value changes = %d",fNumberOfLVdataPoints));
if (!ReadHVDataPoints(aliasMap)) return kFALSE;
AliDebug(1,Form(" Number of HV dp value changes = %d",fNumberOfHVdataPoints));
if (!MergeLVmap()) return kFALSE;
if (!MergeHVmap()) return kFALSE;
if (!MergeMaps()) return kFALSE;
fIsProcessed=kTRUE;
return kTRUE;
}
Bool_t AliTOFLvHvDataPoints::MergeMaps() {
Int_t timeMaps[kNmaxDataPoints];
for (Int_t ii=0; ii<kNmaxDataPoints; ii++) timeMaps[ii]=0;
for (Int_t ii=0; ii<fNumberOfHVdataPoints; ii++) {
AliDebug(1,Form(" fNumberOfHVandLVmaps = %d (HV=%d, LV=%d) - time=%d",fNumberOfHVandLVmaps,fNumberOfHVdataPoints,fNumberOfLVdataPoints,timeMaps[fNumberOfHVandLVmaps]));
timeMaps[fNumberOfHVandLVmaps++]=fHVDataPoints[ii]->GetTime();
}
AliDebug(1,Form(" fNumberOfHVandLVmaps = %d (HV=%d) ",fNumberOfHVandLVmaps,fNumberOfHVdataPoints));
Bool_t check = kTRUE;
for (Int_t jj=0; jj<fNumberOfLVdataPoints; jj++) {
check = kTRUE;
for (Int_t ii=0; ii<fNumberOfHVdataPoints; ii++)
check=check&&(fLVDataPoints[jj]->GetTime()!=timeMaps[ii]);
if (check) {
AliDebug(1,Form(" fNumberOfHVandLVmaps = %d (HV=%d, LV=%d) - time=%d",fNumberOfHVandLVmaps,fNumberOfHVdataPoints,fNumberOfLVdataPoints,timeMaps[fNumberOfHVandLVmaps]));
timeMaps[fNumberOfHVandLVmaps++]=fLVDataPoints[jj]->GetTime();
}
}
AliInfo(Form(" TOF HV dps = %d; TOF LV dps = %d; TOF HVandLV dps %d",
fNumberOfHVdataPoints, fNumberOfLVdataPoints, fNumberOfHVandLVmaps));
Int_t *controller = new Int_t[sizeof(Int_t)*fNumberOfHVandLVmaps];
for (Int_t ii=0; ii<fNumberOfHVandLVmaps; ii++) controller[ii]=-1;
TMath::Sort(fNumberOfHVandLVmaps,timeMaps,controller,kFALSE);
for (Int_t ii=0; ii<fNumberOfHVandLVmaps; ii++)
AliDebug(1, Form(" Time Order - time[controller[%d]] = %d", ii, timeMaps[controller[ii]]));
Short_t array[kNpads];
for (Int_t iPad=0; iPad<kNpads; iPad++) array[iPad]=-1;
Int_t time = 0;
for (Int_t index=0; index<fNumberOfHVandLVmaps; index++) {
time = timeMaps[controller[index]];
AliDebug(2, Form(" Time Order - time[controller[%d]] = %d", index, timeMaps[controller[index]]));
for (Int_t ii=0; ii<fNumberOfHVdataPoints; ii++)
for (Int_t jj=0; jj<fNumberOfLVdataPoints; jj++) {
AliDebug(2,Form(" time=%d --- HVdp_time[%d]=%d, LVdp_time[%d]=%d",
time,
ii,fHVDataPoints[ii]->GetTime(),
jj,fLVDataPoints[jj]->GetTime()));
if ( (fHVDataPoints[ii]->GetTime()==time && fLVDataPoints[jj]->GetTime()<=time) ||
(fLVDataPoints[jj]->GetTime()==time && fHVDataPoints[ii]->GetTime()<=time) ) {
AliDebug(2,Form(" HVdp_time[%d]=%d, LVdp_time[%d]=%d",
ii,fHVDataPoints[ii]->GetTime(),
jj,fLVDataPoints[jj]->GetTime()));
for (Int_t iPad=0; iPad<kNpads; iPad++)
array[iPad] = fHVDataPoints[ii]->GetCellValue(iPad)*fLVDataPoints[jj]->GetCellValue(iPad);
AliTOFDCSmaps *object = new AliTOFDCSmaps(time,array);
fMap[index]= object;
break;
}
else if ( fHVDataPoints[ii]->GetTime()==time && fLVDataPoints[jj]->GetTime()>time ) {
AliDebug(2,Form(" HVdp_time[%d]=%d, (no LVdp)",ii,fHVDataPoints[ii]->GetTime()));
for (Int_t iPad=0; iPad<kNpads; iPad++)
array[iPad] = fHVDataPoints[ii]->GetCellValue(iPad);
AliTOFDCSmaps *object = new AliTOFDCSmaps(time,array);
fMap[index]= object;
break;
} else if ( fLVDataPoints[jj]->GetTime()==time && fHVDataPoints[ii]->GetTime()>time ) {
AliDebug(2,Form(" LVdp_time[%d]=%d, (no HVdp)",jj,fLVDataPoints[jj]->GetTime()));
for (Int_t iPad=0; iPad<kNpads; iPad++)
array[iPad] = fLVDataPoints[jj]->GetCellValue(iPad);
AliTOFDCSmaps *object = new AliTOFDCSmaps(time,array);
fMap[index]= object;
break;
}
}
}
delete [] controller;
for (Int_t ii=0; ii<fNumberOfHVandLVmaps; ii++)
AliDebug(1,Form(" fMap[%d]->GetTime() = %d ",ii,fMap[ii]->GetTime()));
return kTRUE;
}
Bool_t AliTOFLvHvDataPoints::MergeHVmap() {
Bool_t check= kFALSE;
if (fNumberOfHVdataPoints==0)
return check;
else {
for (Int_t iPad=0; iPad<kNpads; iPad++) {
if (fHVDataPoints[0]->GetCellValue(iPad)==-1)
fHVDataPoints[0]->SetCellValue(iPad,fStartingHVmap->GetCellValue(iPad));
if (iPad%(96*91)==0)
AliDebug(2,Form("HVdp0: channel=%6d -> %1d",iPad,fHVDataPoints[0]->GetCellValue(iPad)));
}
for (Int_t ii=1; ii<fNumberOfHVdataPoints; ii++) {
for (Int_t iPad=0; iPad<kNpads; iPad++) {
if (fHVDataPoints[ii]->GetCellValue(iPad)==-1)
fHVDataPoints[ii]->SetCellValue(iPad,fHVDataPoints[ii-1]->GetCellValue(iPad));
if (iPad%(96*91)==0)
AliDebug(2,Form("HVdp%d: channel=%6d -> %1d",ii,iPad,fHVDataPoints[ii]->GetCellValue(iPad)));
}
}
check=kTRUE;
}
return kTRUE;
}
Bool_t AliTOFLvHvDataPoints::MergeLVmap() {
Bool_t check= kFALSE;
if (fNumberOfLVdataPoints==0)
return check;
else {
for (Int_t iPad=0; iPad<kNpads; iPad++) {
if (fLVDataPoints[0]->GetCellValue(iPad)==-1)
fLVDataPoints[0]->SetCellValue(iPad,fStartingLVmap->GetCellValue(iPad));
if (iPad%(96*91)==0)
AliDebug(2,Form("LVdp0: channel=%6d -> %1d",iPad,fLVDataPoints[0]->GetCellValue(iPad)));
}
for (Int_t ii=1; ii<fNumberOfLVdataPoints; ii++) {
for (Int_t iPad=0; iPad<kNpads; iPad++) {
if (fLVDataPoints[ii]->GetCellValue(iPad)==-1)
fLVDataPoints[ii]->SetCellValue(iPad,fLVDataPoints[ii-1]->GetCellValue(iPad));
if (iPad%(96*91)==0)
AliDebug(2,Form("LVdp%d: channel=%6d -> %1d",ii,iPad,fLVDataPoints[ii]->GetCellValue(iPad)));
}
}
check=kTRUE;
}
return check;
}
Bool_t AliTOFLvHvDataPoints::ReadHVDataPoints(TMap& aliasMap) {
TObjArray *aliasArr;
AliDCSValue* aValue;
AliDCSValue* aValuePrev;
Int_t val = 0;
Int_t time = 0;
Int_t nEntries = 0;
Short_t dummy[kNpads];
for (Int_t iBin=0; iBin<kNpads; iBin++) dummy[iBin]=-1;
for (int i=0; i<kNsectors; i++)
for (int j=0; j<kNplates; j++) {
aliasArr = (TObjArray*) aliasMap.GetValue(fAliasNamesXHVmap[i][j].Data());
if (!aliasArr) {
AliError(Form("Alias %s not found!", fAliasNamesXHVmap[i][j].Data()));
if (!fFDR)
return kFALSE;
else
continue;
}
nEntries = aliasArr->GetEntries();
if (nEntries<2) AliDebug(1, Form(" NB: number of values for dp %s %d (less than 2)",fAliasNamesXHVmap[i][j].Data(),nEntries));
if (nEntries==0) {
AliError(Form("Alias %s has no entries! Nothing will be stored",
fAliasNamesXHVmap[i][j].Data()));
continue;
}
else {
for (Int_t iBin=0; iBin<kNpads; iBin++) dummy[iBin]=-1;
aValue = (AliDCSValue*) aliasArr->At(0);
val = aValue->GetInt();
time = aValue->GetTimeStamp();
AliDebug(1, Form(" at t=%d, 1st value for dp %s = %d", time, fAliasNamesXHVmap[i][j].Data(), val));
FillHVarrayPerDataPoint(i,j,val,dummy);
AliTOFDCSmaps *object0 = new AliTOFDCSmaps(time,dummy);
if (InsertHVDataPoint(object0)!=0) return kTRUE;
for (Int_t iEntry=1; iEntry<nEntries; iEntry++) {
for (Int_t iBin=0; iBin<kNpads; iBin++) dummy[iBin]=-1;
aValue = (AliDCSValue*) aliasArr->At(iEntry);
val = aValue->GetInt();
time = aValue->GetTimeStamp();
AliDebug(2, Form(" at t=%d, %dth value for dp %s = %d", time, iEntry+1, fAliasNamesXHVmap[i][j].Data(), val));
aValuePrev = (AliDCSValue*) aliasArr->At(iEntry-1);
if (aValuePrev->GetInt()!=val) {
AliDebug(1, Form(" CHANGE - at t=%d, %dth value for dp %s = %d", time, iEntry+1, fAliasNamesXHVmap[i][j].Data(), val));
FillHVarrayPerDataPoint(i,j,val,dummy);
AliTOFDCSmaps *object = new AliTOFDCSmaps(time,dummy);
if (InsertHVDataPoint(object)!=0) return kTRUE;
}
}
}
}
if (fNumberOfHVdataPoints==0) {
AliInfo("Valid HV dps not found. By default all HV TOF channels (except the ones in the PHOS holes) switched ON, at SOR.");
if (InsertHVDataPoint(fStartingHVmap)!=0) return kTRUE;
}
return kTRUE;
}
Bool_t AliTOFLvHvDataPoints::ReadLVDataPoints(TMap& aliasMap) {
TObjArray *aliasArr;
AliDCSValue* aValue;
AliDCSValue* aValuePrev;
Int_t val = 0;
Int_t time = 0;
Int_t nEntries = 0;
Short_t dummy[kNpads];
for (Int_t iBin=0; iBin<kNpads; iBin++) dummy[iBin]=-1;
for (int i=0; i<kNddl; i++) {
aliasArr = (TObjArray*) aliasMap.GetValue(fAliasNamesXLVmap[i].Data());
if (!aliasArr) {
AliError(Form("Alias %s not found!", fAliasNamesXLVmap[i].Data()));
if (!fFDR)
return kFALSE;
else
continue;
}
nEntries = aliasArr->GetEntries();
if (nEntries<2) AliDebug(1, Form(" NB: number of values for dp %s %d (less than 2)",fAliasNamesXLVmap[i].Data(),nEntries));
if (nEntries==0) {
AliError(Form("Alias %s has no entries! Nothing will be stored",
fAliasNamesXLVmap[i].Data()));
continue;
}
else {
for (Int_t iBin=0; iBin<kNpads; iBin++) dummy[iBin]=-1;
aValue = (AliDCSValue*) aliasArr->At(0);
val = aValue->GetInt();
time = aValue->GetTimeStamp();
AliDebug(1, Form(" at t=%d, 1st value for dp %s = %d", time, fAliasNamesXLVmap[i].Data(), val));
FillLVarrayPerDataPoint(i,val,dummy);
AliTOFDCSmaps *object0 = new AliTOFDCSmaps(time,dummy);
if (InsertLVDataPoint(object0)!=0) return kTRUE;
for (Int_t iEntry=1; iEntry<nEntries; iEntry++) {
for (Int_t iBin=0; iBin<kNpads; iBin++) dummy[iBin]=-1;
aValue = (AliDCSValue*) aliasArr->At(iEntry);
val = aValue->GetInt();
time = aValue->GetTimeStamp();
AliDebug(2, Form(" at t=%d, %dth value for dp %s = %d", time, iEntry+1, fAliasNamesXLVmap[i].Data(), val));
aValuePrev = (AliDCSValue*) aliasArr->At(iEntry-1);
if (aValuePrev->GetInt()!=val) {
AliDebug(1, Form(" CHANGE - at t=%d, %dth value for dp %s = %d", time, iEntry+1, fAliasNamesXLVmap[i].Data(), val));
FillLVarrayPerDataPoint(i,val,dummy);
AliTOFDCSmaps *object = new AliTOFDCSmaps(time,dummy);
if (InsertLVDataPoint(object)!=0) return kTRUE;
}
}
}
}
if (fNumberOfLVdataPoints==0) {
AliInfo("Valid LV dps not found. By default all LV TOF channels switched ON, at SOR.");
if (InsertLVDataPoint(fStartingLVmap)!=0) return kTRUE;
}
return kTRUE;
}
Int_t AliTOFLvHvDataPoints::InsertHVDataPoint(AliTOFDCSmaps *object)
{
if (fNumberOfHVdataPoints==kNmaxDataPoints) {
AliError("Too many HV data points!");
return 1;
}
if (fNumberOfHVdataPoints==0) {
fHVDataPoints[fNumberOfHVdataPoints++] = object;
return 0;
}
for (Int_t index=0; index<fNumberOfHVdataPoints; index++) {
if (object->GetTime()==fHVDataPoints[index]->GetTime()) {
fHVDataPoints[index]->Update(object);
return 0;
}
}
Int_t ii = FindHVdpIndex(object->GetTime());
memmove(fHVDataPoints+ii+1 ,fHVDataPoints+ii,(fNumberOfHVdataPoints-ii)*sizeof(AliTOFDCSmaps*));
fHVDataPoints[ii] = object;
fNumberOfHVdataPoints++;
return 0;
}
Int_t AliTOFLvHvDataPoints::FindHVdpIndex(Int_t z) const {
if (fNumberOfHVdataPoints==0) return 0;
if (z <= fHVDataPoints[0]->GetTime()) return 0;
if (z > fHVDataPoints[fNumberOfHVdataPoints-1]->GetTime()) return fNumberOfHVdataPoints;
Int_t b = 0, e = fNumberOfHVdataPoints-1, m = (b+e)/2;
for (; b<e; m=(b+e)/2) {
if (z > fHVDataPoints[m]->GetTime()) b=m+1;
else e=m;
}
return m;
}
Int_t AliTOFLvHvDataPoints::InsertLVDataPoint(AliTOFDCSmaps *object)
{
if (fNumberOfLVdataPoints==kNmaxDataPoints) {
AliError("Too many LV data points!");
return 1;
}
if (fNumberOfLVdataPoints==0) {
fLVDataPoints[fNumberOfLVdataPoints++] = object;
return 0;
}
for (Int_t index=0; index<fNumberOfLVdataPoints; index++) {
if (object->GetTime()==fLVDataPoints[index]->GetTime()) {
fLVDataPoints[index]->Update(object);
return 0;
}
}
Int_t ii = FindLVdpIndex(object->GetTime());
memmove(fLVDataPoints+ii+1 ,fLVDataPoints+ii,(fNumberOfLVdataPoints-ii)*sizeof(AliTOFDCSmaps*));
fLVDataPoints[ii] = object;
fNumberOfLVdataPoints++;
return 0;
}
Int_t AliTOFLvHvDataPoints::FindLVdpIndex(Int_t z) const {
if (fNumberOfLVdataPoints==0) return 0;
if (z <= fLVDataPoints[0]->GetTime()) return 0;
if (z > fLVDataPoints[fNumberOfLVdataPoints-1]->GetTime()) return fNumberOfLVdataPoints;
Int_t b = 0, e = fNumberOfLVdataPoints-1, m = (b+e)/2;
for (; b<e; m=(b+e)/2) {
if (z > fLVDataPoints[m]->GetTime()) b=m+1;
else e=m;
}
return m;
}
void AliTOFLvHvDataPoints::Init(){
TString sindex;
for(int i=0;i<kNsectors;i++)
for(int j=0;j<kNplates;j++) {
fAliasNamesXHVmap[i][j] = "TOF_HVSTATUS_";
sindex.Form("SM%02dMOD%1d",i,j);
fAliasNamesXHVmap[i][j] += sindex;
}
for(int i=0;i<kNddl;i++) {
fAliasNamesXLVmap[i] = "TOF_FEACSTATUS_";
sindex.Form("%02d",i);
fAliasNamesXLVmap[i] += sindex;
}
fStartingLVmap->SetTime(0);
for (Int_t iPad=0; iPad<kNpads; iPad++)
fStartingLVmap->SetCellValue(iPad,1);
fStartingHVmap->SetTime(0);
for (Int_t iPad=0; iPad<kNpads; iPad++) {
Int_t vol[5] = {-1,-1,-1,-1,-1};
AliTOFGeometry::GetVolumeIndices(iPad,vol);
if ( (vol[0]==13 || vol[0]==14 || vol[0]==15) &&
vol[1]==2)
fStartingHVmap->SetCellValue(iPad,0);
else
fStartingHVmap->SetCellValue(iPad,1);
}
}
void AliTOFLvHvDataPoints::FillHVarrayPerDataPoint(Int_t sector, Int_t plate, UInt_t baseWord, Short_t *array) const
{
Int_t det[5] = {sector, plate, -1, -1, -1};
UInt_t checkBit = 0;
Int_t channel = -1;
for (Int_t iStrip=0; iStrip<AliTOFGeometry::NStrip(plate); iStrip++) {
checkBit = AliBitPacking::UnpackWord(baseWord,iStrip,iStrip);
for (Int_t iPadZ=0; iPadZ<AliTOFGeometry::NpadZ(); iPadZ++)
for (Int_t iPadX=0; iPadX<AliTOFGeometry::NpadX(); iPadX++) {
det[2] = iStrip;
det[3] = iPadZ;
det[4] = iPadX;
channel = AliTOFGeometry::GetIndex(det);
array[channel]=checkBit;
}
}
}
void AliTOFLvHvDataPoints::FillLVarrayPerDataPoint(Int_t nDDL, UInt_t baseWord, Short_t *array) const
{
Int_t det[5] = {nDDL/4, -1, -1, -1, -1};
UInt_t checkBit = 0;
Int_t iStripXsm[6] = {-1,-1,-1,-1,-1,-1};
Int_t firstPadX = -1;
Int_t lastPadX = -1;
Int_t plate = -1;
Int_t strip = -1;
Int_t channel = -1;
for (Int_t nFEAC=0; nFEAC<8; nFEAC++) {
checkBit = AliBitPacking::UnpackWord(baseWord,nFEAC,nFEAC);
firstPadX = -1;
lastPadX = -1;
GetStripsConnectedToFEAC(nDDL, nFEAC, iStripXsm, firstPadX,lastPadX);
for (Int_t index=0; index<6; index++) {
if (iStripXsm[index]==-1) continue;
for (Int_t iPadZ=0; iPadZ<AliTOFGeometry::NpadZ(); iPadZ++)
for (Int_t iPadX=firstPadX; iPadX<=lastPadX; iPadX++) {
AliTOFGeometry::GetStripAndModule(iStripXsm[index],plate,strip);
det[1] = plate;
det[2] = strip;
det[3] = iPadZ;
det[4] = iPadX;
channel = AliTOFGeometry::GetIndex(det);
array[channel]=checkBit;
}
}
}
}
void AliTOFLvHvDataPoints::GetStripsConnectedToFEAC(Int_t nDDL, Int_t nFEAC, Int_t *iStrip, Int_t &firstPadX, Int_t &lastPadX) const
{
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=-1;
if (nDDL<0 || nDDL>=kNddl || nFEAC<0 || nFEAC>=8) return;
switch (nDDL%4) {
case 0:
firstPadX = 0;
lastPadX = AliTOFGeometry::NpadX()/2-1;
if (nFEAC<=2)
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=ii+6*nFEAC;
else if (nFEAC==3)
for (Int_t ii=0; ii<5; ii++) iStrip[ii]=ii+6*nFEAC;
else if (nFEAC==4)
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=ii+6*nFEAC-1;
else if (nFEAC==5)
for (Int_t ii=0; ii<5; ii++) iStrip[ii]=ii+6*nFEAC-1;
else if (nFEAC==6)
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=ii+6*nFEAC-2;
else if (nFEAC==7)
for (Int_t ii=0; ii<5; ii++) iStrip[ii]=ii+6*nFEAC-2;
break;
case 1:
firstPadX = AliTOFGeometry::NpadX()/2;
lastPadX = AliTOFGeometry::NpadX()-1;
if (nFEAC<=2)
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=ii+6*nFEAC;
else if (nFEAC==3)
for (Int_t ii=0; ii<5; ii++) iStrip[ii]=ii+6*nFEAC;
else if (nFEAC==4)
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=ii+6*nFEAC-1;
else if (nFEAC==5)
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=ii+6*nFEAC-1;
else if (nFEAC==6)
for (Int_t ii=0; ii<5; ii++) iStrip[ii]=ii+6*nFEAC-1;
else if (nFEAC==7)
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=ii+6*nFEAC-2;
break;
case 2:
firstPadX = AliTOFGeometry::NpadX()/2;
lastPadX = AliTOFGeometry::NpadX()-1;
if (nFEAC<=2)
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=90-(ii+6*nFEAC);
else if (nFEAC==3)
for (Int_t ii=0; ii<5; ii++) iStrip[ii]=90-(ii+6*nFEAC);
else if (nFEAC==4)
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=90-(ii+6*nFEAC-1);
else if (nFEAC==5)
for (Int_t ii=0; ii<5; ii++) iStrip[ii]=90-(ii+6*nFEAC-1);
else if (nFEAC==6)
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=90-(ii+6*nFEAC-2);
else if (nFEAC==7)
for (Int_t ii=0; ii<5; ii++) iStrip[ii]=90-(ii+6*nFEAC-2);
break;
case 3:
firstPadX = 0;
lastPadX = AliTOFGeometry::NpadX()/2-1;
if (nFEAC<=2)
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=90-(ii+6*nFEAC);
else if (nFEAC==3)
for (Int_t ii=0; ii<5; ii++) iStrip[ii]=90-(ii+6*nFEAC);
else if (nFEAC==4)
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=90-(ii+6*nFEAC-1);
else if (nFEAC==5)
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=90-(ii+6*nFEAC-1);
else if (nFEAC==6)
for (Int_t ii=0; ii<5; ii++) iStrip[ii]=90-(ii+6*nFEAC-1);
else if (nFEAC==7)
for (Int_t ii=0; ii<6; ii++) iStrip[ii]=90-(ii+6*nFEAC-2);
break;
}
}
void AliTOFLvHvDataPoints::Draw(const Option_t* )
{
if(!fIsProcessed) return;
}
void AliTOFLvHvDataPoints::DrawHVandLVMap(Int_t index)
{
const Int_t kSize = 100;
if(!fIsProcessed) return;
if (index>=fNumberOfHVandLVmaps) return;
AliTOFDCSmaps *mappa=(AliTOFDCSmaps*)GetHVandLVmap(index);
char title[kSize];
if (index==0) snprintf(title,kSize,"HVandLV map at time %d (%dst map)",mappa->GetTime(),index+1);
else if (index==1) snprintf(title,kSize,"HVandLV map at time %d (%dnd map)",mappa->GetTime(),index+1);
else if (index==2) snprintf(title,kSize,"HVandLV map at time %d (%drd map)",mappa->GetTime(),index+1);
else if (index>=3) snprintf(title,kSize,"HVandLV map at time %d (%dth map)",mappa->GetTime(),index+1);
fHisto->Delete();
fHisto = new TH1C("histo","",kNpads,-0.5,kNpads-0.5);
fHisto->SetTitle(title);
for (Int_t ii=0; ii<kNpads; ii++)
fHisto->SetBinContent(ii+1,mappa->GetCellValue(ii));
fHisto->Draw();
}
void AliTOFLvHvDataPoints::DrawLVMap(Int_t index)
{
const Int_t kSize = 100;
if(!fIsProcessed) return;
if (index>=fNumberOfLVdataPoints) return;
AliTOFDCSmaps *mappa=(AliTOFDCSmaps*)GetLVmap(index);
char title[kSize];
if (index==0) snprintf(title,kSize,"LV map at time %d (%dst map)",mappa->GetTime(),index+1);
else if (index==1) snprintf(title,kSize,"LV map at time %d (%dnd map)",mappa->GetTime(),index+1);
else if (index==2) snprintf(title,kSize,"LV map at time %d (%drd map)",mappa->GetTime(),index+1);
else if (index>=3) snprintf(title,kSize,"LV map at time %d (%dth map)",mappa->GetTime(),index+1);
fHisto->Delete();
fHisto = new TH1C("histo","",kNpads,-0.5,kNpads-0.5);
fHisto->SetTitle(title);
for (Int_t ii=0; ii<kNpads; ii++)
fHisto->SetBinContent(ii+1,mappa->GetCellValue(ii));
fHisto->Draw();
}
void AliTOFLvHvDataPoints::DrawHVMap(Int_t index)
{
const Int_t kSize = 100;
if(!fIsProcessed) return;
if (index>=fNumberOfHVdataPoints) return;
AliTOFDCSmaps *mappa=(AliTOFDCSmaps*)GetHVmap(index);
char title[kSize];
if (index==0) snprintf(title,kSize,"HV map at time %d (%dst map)",mappa->GetTime(),index+1);
else if (index==1) snprintf(title,kSize,"HV map at time %d (%dnd map)",mappa->GetTime(),index+1);
else if (index==2) snprintf(title,kSize,"HV map at time %d (%drd map)",mappa->GetTime(),index+1);
else if (index>=3) snprintf(title,kSize,"HV map at time %d (%dth map)",mappa->GetTime(),index+1);
fHisto->Delete();
fHisto = new TH1C("histo","",kNpads,-0.5,kNpads-0.5);
fHisto->SetTitle(title);
for (Int_t ii=0; ii<kNpads; ii++)
fHisto->SetBinContent(ii+1,mappa->GetCellValue(ii));
fHisto->Draw();
}
AliTOFDCSmaps *AliTOFLvHvDataPoints::GetHVandLVmapAtEOR()
{
AliTOFDCSmaps * lvANDhvMap = 0;
if (fNumberOfHVandLVmaps==1) {
AliInfo(Form("Nothing changed in the TOF channels LV and HV status during the run number %d",fRun));
lvANDhvMap = fMap[fNumberOfHVandLVmaps-1];
}
else {
if ( (fEndTimeDCSQuery-fMap[fNumberOfHVandLVmaps-1]->GetTime()<=fNSecondsBeforeEOR) ||
(fEndTime-fMap[fNumberOfHVandLVmaps-1]->GetTime()<=fNSecondsBeforeEOR) ) {
lvANDhvMap = (AliTOFDCSmaps*)fMap[fNumberOfHVandLVmaps-2];
AliInfo(Form("Probably, TOF caused the EOR (EOR-t(last map))<%d).For run number %d the second-last HVandLV map will be take into account.",fNSecondsBeforeEOR,fRun));
}
else {
lvANDhvMap = (AliTOFDCSmaps*)fMap[fNumberOfHVandLVmaps-1];
AliInfo(Form("The run number %d ended correctly. The last HVandLV map will be take into account.",fRun));
}
}
return lvANDhvMap;
}
AliTOFLvHvDataPoints.cxx:1 AliTOFLvHvDataPoints.cxx:2 AliTOFLvHvDataPoints.cxx:3 AliTOFLvHvDataPoints.cxx:4 AliTOFLvHvDataPoints.cxx:5 AliTOFLvHvDataPoints.cxx:6 AliTOFLvHvDataPoints.cxx:7 AliTOFLvHvDataPoints.cxx:8 AliTOFLvHvDataPoints.cxx:9 AliTOFLvHvDataPoints.cxx:10 AliTOFLvHvDataPoints.cxx:11 AliTOFLvHvDataPoints.cxx:12 AliTOFLvHvDataPoints.cxx:13 AliTOFLvHvDataPoints.cxx:14 AliTOFLvHvDataPoints.cxx:15 AliTOFLvHvDataPoints.cxx:16 AliTOFLvHvDataPoints.cxx:17 AliTOFLvHvDataPoints.cxx:18 AliTOFLvHvDataPoints.cxx:19 AliTOFLvHvDataPoints.cxx:20 AliTOFLvHvDataPoints.cxx:21 AliTOFLvHvDataPoints.cxx:22 AliTOFLvHvDataPoints.cxx:23 AliTOFLvHvDataPoints.cxx:24 AliTOFLvHvDataPoints.cxx:25 AliTOFLvHvDataPoints.cxx:26 AliTOFLvHvDataPoints.cxx:27 AliTOFLvHvDataPoints.cxx:28 AliTOFLvHvDataPoints.cxx:29 AliTOFLvHvDataPoints.cxx:30 AliTOFLvHvDataPoints.cxx:31 AliTOFLvHvDataPoints.cxx:32 AliTOFLvHvDataPoints.cxx:33 AliTOFLvHvDataPoints.cxx:34 AliTOFLvHvDataPoints.cxx:35 AliTOFLvHvDataPoints.cxx:36 AliTOFLvHvDataPoints.cxx:37 AliTOFLvHvDataPoints.cxx:38 AliTOFLvHvDataPoints.cxx:39 AliTOFLvHvDataPoints.cxx:40 AliTOFLvHvDataPoints.cxx:41 AliTOFLvHvDataPoints.cxx:42 AliTOFLvHvDataPoints.cxx:43 AliTOFLvHvDataPoints.cxx:44 AliTOFLvHvDataPoints.cxx:45 AliTOFLvHvDataPoints.cxx:46 AliTOFLvHvDataPoints.cxx:47 AliTOFLvHvDataPoints.cxx:48 AliTOFLvHvDataPoints.cxx:49 AliTOFLvHvDataPoints.cxx:50 AliTOFLvHvDataPoints.cxx:51 AliTOFLvHvDataPoints.cxx:52 AliTOFLvHvDataPoints.cxx:53 AliTOFLvHvDataPoints.cxx:54 AliTOFLvHvDataPoints.cxx:55 AliTOFLvHvDataPoints.cxx:56 AliTOFLvHvDataPoints.cxx:57 AliTOFLvHvDataPoints.cxx:58 AliTOFLvHvDataPoints.cxx:59 AliTOFLvHvDataPoints.cxx:60 AliTOFLvHvDataPoints.cxx:61 AliTOFLvHvDataPoints.cxx:62 AliTOFLvHvDataPoints.cxx:63 AliTOFLvHvDataPoints.cxx:64 AliTOFLvHvDataPoints.cxx:65 AliTOFLvHvDataPoints.cxx:66 AliTOFLvHvDataPoints.cxx:67 AliTOFLvHvDataPoints.cxx:68 AliTOFLvHvDataPoints.cxx:69 AliTOFLvHvDataPoints.cxx:70 AliTOFLvHvDataPoints.cxx:71 AliTOFLvHvDataPoints.cxx:72 AliTOFLvHvDataPoints.cxx:73 AliTOFLvHvDataPoints.cxx:74 AliTOFLvHvDataPoints.cxx:75 AliTOFLvHvDataPoints.cxx:76 AliTOFLvHvDataPoints.cxx:77 AliTOFLvHvDataPoints.cxx:78 AliTOFLvHvDataPoints.cxx:79 AliTOFLvHvDataPoints.cxx:80 AliTOFLvHvDataPoints.cxx:81 AliTOFLvHvDataPoints.cxx:82 AliTOFLvHvDataPoints.cxx:83 AliTOFLvHvDataPoints.cxx:84 AliTOFLvHvDataPoints.cxx:85 AliTOFLvHvDataPoints.cxx:86 AliTOFLvHvDataPoints.cxx:87 AliTOFLvHvDataPoints.cxx:88 AliTOFLvHvDataPoints.cxx:89 AliTOFLvHvDataPoints.cxx:90 AliTOFLvHvDataPoints.cxx:91 AliTOFLvHvDataPoints.cxx:92 AliTOFLvHvDataPoints.cxx:93 AliTOFLvHvDataPoints.cxx:94 AliTOFLvHvDataPoints.cxx:95 AliTOFLvHvDataPoints.cxx:96 AliTOFLvHvDataPoints.cxx:97 AliTOFLvHvDataPoints.cxx:98 AliTOFLvHvDataPoints.cxx:99 AliTOFLvHvDataPoints.cxx:100 AliTOFLvHvDataPoints.cxx:101 AliTOFLvHvDataPoints.cxx:102 AliTOFLvHvDataPoints.cxx:103 AliTOFLvHvDataPoints.cxx:104 AliTOFLvHvDataPoints.cxx:105 AliTOFLvHvDataPoints.cxx:106 AliTOFLvHvDataPoints.cxx:107 AliTOFLvHvDataPoints.cxx:108 AliTOFLvHvDataPoints.cxx:109 AliTOFLvHvDataPoints.cxx:110 AliTOFLvHvDataPoints.cxx:111 AliTOFLvHvDataPoints.cxx:112 AliTOFLvHvDataPoints.cxx:113 AliTOFLvHvDataPoints.cxx:114 AliTOFLvHvDataPoints.cxx:115 AliTOFLvHvDataPoints.cxx:116 AliTOFLvHvDataPoints.cxx:117 AliTOFLvHvDataPoints.cxx:118 AliTOFLvHvDataPoints.cxx:119 AliTOFLvHvDataPoints.cxx:120 AliTOFLvHvDataPoints.cxx:121 AliTOFLvHvDataPoints.cxx:122 AliTOFLvHvDataPoints.cxx:123 AliTOFLvHvDataPoints.cxx:124 AliTOFLvHvDataPoints.cxx:125 AliTOFLvHvDataPoints.cxx:126 AliTOFLvHvDataPoints.cxx:127 AliTOFLvHvDataPoints.cxx:128 AliTOFLvHvDataPoints.cxx:129 AliTOFLvHvDataPoints.cxx:130 AliTOFLvHvDataPoints.cxx:131 AliTOFLvHvDataPoints.cxx:132 AliTOFLvHvDataPoints.cxx:133 AliTOFLvHvDataPoints.cxx:134 AliTOFLvHvDataPoints.cxx:135 AliTOFLvHvDataPoints.cxx:136 AliTOFLvHvDataPoints.cxx:137 AliTOFLvHvDataPoints.cxx:138 AliTOFLvHvDataPoints.cxx:139 AliTOFLvHvDataPoints.cxx:140 AliTOFLvHvDataPoints.cxx:141 AliTOFLvHvDataPoints.cxx:142 AliTOFLvHvDataPoints.cxx:143 AliTOFLvHvDataPoints.cxx:144 AliTOFLvHvDataPoints.cxx:145 AliTOFLvHvDataPoints.cxx:146 AliTOFLvHvDataPoints.cxx:147 AliTOFLvHvDataPoints.cxx:148 AliTOFLvHvDataPoints.cxx:149 AliTOFLvHvDataPoints.cxx:150 AliTOFLvHvDataPoints.cxx:151 AliTOFLvHvDataPoints.cxx:152 AliTOFLvHvDataPoints.cxx:153 AliTOFLvHvDataPoints.cxx:154 AliTOFLvHvDataPoints.cxx:155 AliTOFLvHvDataPoints.cxx:156 AliTOFLvHvDataPoints.cxx:157 AliTOFLvHvDataPoints.cxx:158 AliTOFLvHvDataPoints.cxx:159 AliTOFLvHvDataPoints.cxx:160 AliTOFLvHvDataPoints.cxx:161 AliTOFLvHvDataPoints.cxx:162 AliTOFLvHvDataPoints.cxx:163 AliTOFLvHvDataPoints.cxx:164 AliTOFLvHvDataPoints.cxx:165 AliTOFLvHvDataPoints.cxx:166 AliTOFLvHvDataPoints.cxx:167 AliTOFLvHvDataPoints.cxx:168 AliTOFLvHvDataPoints.cxx:169 AliTOFLvHvDataPoints.cxx:170 AliTOFLvHvDataPoints.cxx:171 AliTOFLvHvDataPoints.cxx:172 AliTOFLvHvDataPoints.cxx:173 AliTOFLvHvDataPoints.cxx:174 AliTOFLvHvDataPoints.cxx:175 AliTOFLvHvDataPoints.cxx:176 AliTOFLvHvDataPoints.cxx:177 AliTOFLvHvDataPoints.cxx:178 AliTOFLvHvDataPoints.cxx:179 AliTOFLvHvDataPoints.cxx:180 AliTOFLvHvDataPoints.cxx:181 AliTOFLvHvDataPoints.cxx:182 AliTOFLvHvDataPoints.cxx:183 AliTOFLvHvDataPoints.cxx:184 AliTOFLvHvDataPoints.cxx:185 AliTOFLvHvDataPoints.cxx:186 AliTOFLvHvDataPoints.cxx:187 AliTOFLvHvDataPoints.cxx:188 AliTOFLvHvDataPoints.cxx:189 AliTOFLvHvDataPoints.cxx:190 AliTOFLvHvDataPoints.cxx:191 AliTOFLvHvDataPoints.cxx:192 AliTOFLvHvDataPoints.cxx:193 AliTOFLvHvDataPoints.cxx:194 AliTOFLvHvDataPoints.cxx:195 AliTOFLvHvDataPoints.cxx:196 AliTOFLvHvDataPoints.cxx:197 AliTOFLvHvDataPoints.cxx:198 AliTOFLvHvDataPoints.cxx:199 AliTOFLvHvDataPoints.cxx:200 AliTOFLvHvDataPoints.cxx:201 AliTOFLvHvDataPoints.cxx:202 AliTOFLvHvDataPoints.cxx:203 AliTOFLvHvDataPoints.cxx:204 AliTOFLvHvDataPoints.cxx:205 AliTOFLvHvDataPoints.cxx:206 AliTOFLvHvDataPoints.cxx:207 AliTOFLvHvDataPoints.cxx:208 AliTOFLvHvDataPoints.cxx:209 AliTOFLvHvDataPoints.cxx:210 AliTOFLvHvDataPoints.cxx:211 AliTOFLvHvDataPoints.cxx:212 AliTOFLvHvDataPoints.cxx:213 AliTOFLvHvDataPoints.cxx:214 AliTOFLvHvDataPoints.cxx:215 AliTOFLvHvDataPoints.cxx:216 AliTOFLvHvDataPoints.cxx:217 AliTOFLvHvDataPoints.cxx:218 AliTOFLvHvDataPoints.cxx:219 AliTOFLvHvDataPoints.cxx:220 AliTOFLvHvDataPoints.cxx:221 AliTOFLvHvDataPoints.cxx:222 AliTOFLvHvDataPoints.cxx:223 AliTOFLvHvDataPoints.cxx:224 AliTOFLvHvDataPoints.cxx:225 AliTOFLvHvDataPoints.cxx:226 AliTOFLvHvDataPoints.cxx:227 AliTOFLvHvDataPoints.cxx:228 AliTOFLvHvDataPoints.cxx:229 AliTOFLvHvDataPoints.cxx:230 AliTOFLvHvDataPoints.cxx:231 AliTOFLvHvDataPoints.cxx:232 AliTOFLvHvDataPoints.cxx:233 AliTOFLvHvDataPoints.cxx:234 AliTOFLvHvDataPoints.cxx:235 AliTOFLvHvDataPoints.cxx:236 AliTOFLvHvDataPoints.cxx:237 AliTOFLvHvDataPoints.cxx:238 AliTOFLvHvDataPoints.cxx:239 AliTOFLvHvDataPoints.cxx:240 AliTOFLvHvDataPoints.cxx:241 AliTOFLvHvDataPoints.cxx:242 AliTOFLvHvDataPoints.cxx:243 AliTOFLvHvDataPoints.cxx:244 AliTOFLvHvDataPoints.cxx:245 AliTOFLvHvDataPoints.cxx:246 AliTOFLvHvDataPoints.cxx:247 AliTOFLvHvDataPoints.cxx:248 AliTOFLvHvDataPoints.cxx:249 AliTOFLvHvDataPoints.cxx:250 AliTOFLvHvDataPoints.cxx:251 AliTOFLvHvDataPoints.cxx:252 AliTOFLvHvDataPoints.cxx:253 AliTOFLvHvDataPoints.cxx:254 AliTOFLvHvDataPoints.cxx:255 AliTOFLvHvDataPoints.cxx:256 AliTOFLvHvDataPoints.cxx:257 AliTOFLvHvDataPoints.cxx:258 AliTOFLvHvDataPoints.cxx:259 AliTOFLvHvDataPoints.cxx:260 AliTOFLvHvDataPoints.cxx:261 AliTOFLvHvDataPoints.cxx:262 AliTOFLvHvDataPoints.cxx:263 AliTOFLvHvDataPoints.cxx:264 AliTOFLvHvDataPoints.cxx:265 AliTOFLvHvDataPoints.cxx:266 AliTOFLvHvDataPoints.cxx:267 AliTOFLvHvDataPoints.cxx:268 AliTOFLvHvDataPoints.cxx:269 AliTOFLvHvDataPoints.cxx:270 AliTOFLvHvDataPoints.cxx:271 AliTOFLvHvDataPoints.cxx:272 AliTOFLvHvDataPoints.cxx:273 AliTOFLvHvDataPoints.cxx:274 AliTOFLvHvDataPoints.cxx:275 AliTOFLvHvDataPoints.cxx:276 AliTOFLvHvDataPoints.cxx:277 AliTOFLvHvDataPoints.cxx:278 AliTOFLvHvDataPoints.cxx:279 AliTOFLvHvDataPoints.cxx:280 AliTOFLvHvDataPoints.cxx:281 AliTOFLvHvDataPoints.cxx:282 AliTOFLvHvDataPoints.cxx:283 AliTOFLvHvDataPoints.cxx:284 AliTOFLvHvDataPoints.cxx:285 AliTOFLvHvDataPoints.cxx:286 AliTOFLvHvDataPoints.cxx:287 AliTOFLvHvDataPoints.cxx:288 AliTOFLvHvDataPoints.cxx:289 AliTOFLvHvDataPoints.cxx:290 AliTOFLvHvDataPoints.cxx:291 AliTOFLvHvDataPoints.cxx:292 AliTOFLvHvDataPoints.cxx:293 AliTOFLvHvDataPoints.cxx:294 AliTOFLvHvDataPoints.cxx:295 AliTOFLvHvDataPoints.cxx:296 AliTOFLvHvDataPoints.cxx:297 AliTOFLvHvDataPoints.cxx:298 AliTOFLvHvDataPoints.cxx:299 AliTOFLvHvDataPoints.cxx:300 AliTOFLvHvDataPoints.cxx:301 AliTOFLvHvDataPoints.cxx:302 AliTOFLvHvDataPoints.cxx:303 AliTOFLvHvDataPoints.cxx:304 AliTOFLvHvDataPoints.cxx:305 AliTOFLvHvDataPoints.cxx:306 AliTOFLvHvDataPoints.cxx:307 AliTOFLvHvDataPoints.cxx:308 AliTOFLvHvDataPoints.cxx:309 AliTOFLvHvDataPoints.cxx:310 AliTOFLvHvDataPoints.cxx:311 AliTOFLvHvDataPoints.cxx:312 AliTOFLvHvDataPoints.cxx:313 AliTOFLvHvDataPoints.cxx:314 AliTOFLvHvDataPoints.cxx:315 AliTOFLvHvDataPoints.cxx:316 AliTOFLvHvDataPoints.cxx:317 AliTOFLvHvDataPoints.cxx:318 AliTOFLvHvDataPoints.cxx:319 AliTOFLvHvDataPoints.cxx:320 AliTOFLvHvDataPoints.cxx:321 AliTOFLvHvDataPoints.cxx:322 AliTOFLvHvDataPoints.cxx:323 AliTOFLvHvDataPoints.cxx:324 AliTOFLvHvDataPoints.cxx:325 AliTOFLvHvDataPoints.cxx:326 AliTOFLvHvDataPoints.cxx:327 AliTOFLvHvDataPoints.cxx:328 AliTOFLvHvDataPoints.cxx:329 AliTOFLvHvDataPoints.cxx:330 AliTOFLvHvDataPoints.cxx:331 AliTOFLvHvDataPoints.cxx:332 AliTOFLvHvDataPoints.cxx:333 AliTOFLvHvDataPoints.cxx:334 AliTOFLvHvDataPoints.cxx:335 AliTOFLvHvDataPoints.cxx:336 AliTOFLvHvDataPoints.cxx:337 AliTOFLvHvDataPoints.cxx:338 AliTOFLvHvDataPoints.cxx:339 AliTOFLvHvDataPoints.cxx:340 AliTOFLvHvDataPoints.cxx:341 AliTOFLvHvDataPoints.cxx:342 AliTOFLvHvDataPoints.cxx:343 AliTOFLvHvDataPoints.cxx:344 AliTOFLvHvDataPoints.cxx:345 AliTOFLvHvDataPoints.cxx:346 AliTOFLvHvDataPoints.cxx:347 AliTOFLvHvDataPoints.cxx:348 AliTOFLvHvDataPoints.cxx:349 AliTOFLvHvDataPoints.cxx:350 AliTOFLvHvDataPoints.cxx:351 AliTOFLvHvDataPoints.cxx:352 AliTOFLvHvDataPoints.cxx:353 AliTOFLvHvDataPoints.cxx:354 AliTOFLvHvDataPoints.cxx:355 AliTOFLvHvDataPoints.cxx:356 AliTOFLvHvDataPoints.cxx:357 AliTOFLvHvDataPoints.cxx:358 AliTOFLvHvDataPoints.cxx:359 AliTOFLvHvDataPoints.cxx:360 AliTOFLvHvDataPoints.cxx:361 AliTOFLvHvDataPoints.cxx:362 AliTOFLvHvDataPoints.cxx:363 AliTOFLvHvDataPoints.cxx:364 AliTOFLvHvDataPoints.cxx:365 AliTOFLvHvDataPoints.cxx:366 AliTOFLvHvDataPoints.cxx:367 AliTOFLvHvDataPoints.cxx:368 AliTOFLvHvDataPoints.cxx:369 AliTOFLvHvDataPoints.cxx:370 AliTOFLvHvDataPoints.cxx:371 AliTOFLvHvDataPoints.cxx:372 AliTOFLvHvDataPoints.cxx:373 AliTOFLvHvDataPoints.cxx:374 AliTOFLvHvDataPoints.cxx:375 AliTOFLvHvDataPoints.cxx:376 AliTOFLvHvDataPoints.cxx:377 AliTOFLvHvDataPoints.cxx:378 AliTOFLvHvDataPoints.cxx:379 AliTOFLvHvDataPoints.cxx:380 AliTOFLvHvDataPoints.cxx:381 AliTOFLvHvDataPoints.cxx:382 AliTOFLvHvDataPoints.cxx:383 AliTOFLvHvDataPoints.cxx:384 AliTOFLvHvDataPoints.cxx:385 AliTOFLvHvDataPoints.cxx:386 AliTOFLvHvDataPoints.cxx:387 AliTOFLvHvDataPoints.cxx:388 AliTOFLvHvDataPoints.cxx:389 AliTOFLvHvDataPoints.cxx:390 AliTOFLvHvDataPoints.cxx:391 AliTOFLvHvDataPoints.cxx:392 AliTOFLvHvDataPoints.cxx:393 AliTOFLvHvDataPoints.cxx:394 AliTOFLvHvDataPoints.cxx:395 AliTOFLvHvDataPoints.cxx:396 AliTOFLvHvDataPoints.cxx:397 AliTOFLvHvDataPoints.cxx:398 AliTOFLvHvDataPoints.cxx:399 AliTOFLvHvDataPoints.cxx:400 AliTOFLvHvDataPoints.cxx:401 AliTOFLvHvDataPoints.cxx:402 AliTOFLvHvDataPoints.cxx:403 AliTOFLvHvDataPoints.cxx:404 AliTOFLvHvDataPoints.cxx:405 AliTOFLvHvDataPoints.cxx:406 AliTOFLvHvDataPoints.cxx:407 AliTOFLvHvDataPoints.cxx:408 AliTOFLvHvDataPoints.cxx:409 AliTOFLvHvDataPoints.cxx:410 AliTOFLvHvDataPoints.cxx:411 AliTOFLvHvDataPoints.cxx:412 AliTOFLvHvDataPoints.cxx:413 AliTOFLvHvDataPoints.cxx:414 AliTOFLvHvDataPoints.cxx:415 AliTOFLvHvDataPoints.cxx:416 AliTOFLvHvDataPoints.cxx:417 AliTOFLvHvDataPoints.cxx:418 AliTOFLvHvDataPoints.cxx:419 AliTOFLvHvDataPoints.cxx:420 AliTOFLvHvDataPoints.cxx:421 AliTOFLvHvDataPoints.cxx:422 AliTOFLvHvDataPoints.cxx:423 AliTOFLvHvDataPoints.cxx:424 AliTOFLvHvDataPoints.cxx:425 AliTOFLvHvDataPoints.cxx:426 AliTOFLvHvDataPoints.cxx:427 AliTOFLvHvDataPoints.cxx:428 AliTOFLvHvDataPoints.cxx:429 AliTOFLvHvDataPoints.cxx:430 AliTOFLvHvDataPoints.cxx:431 AliTOFLvHvDataPoints.cxx:432 AliTOFLvHvDataPoints.cxx:433 AliTOFLvHvDataPoints.cxx:434 AliTOFLvHvDataPoints.cxx:435 AliTOFLvHvDataPoints.cxx:436 AliTOFLvHvDataPoints.cxx:437 AliTOFLvHvDataPoints.cxx:438 AliTOFLvHvDataPoints.cxx:439 AliTOFLvHvDataPoints.cxx:440 AliTOFLvHvDataPoints.cxx:441 AliTOFLvHvDataPoints.cxx:442 AliTOFLvHvDataPoints.cxx:443 AliTOFLvHvDataPoints.cxx:444 AliTOFLvHvDataPoints.cxx:445 AliTOFLvHvDataPoints.cxx:446 AliTOFLvHvDataPoints.cxx:447 AliTOFLvHvDataPoints.cxx:448 AliTOFLvHvDataPoints.cxx:449 AliTOFLvHvDataPoints.cxx:450 AliTOFLvHvDataPoints.cxx:451 AliTOFLvHvDataPoints.cxx:452 AliTOFLvHvDataPoints.cxx:453 AliTOFLvHvDataPoints.cxx:454 AliTOFLvHvDataPoints.cxx:455 AliTOFLvHvDataPoints.cxx:456 AliTOFLvHvDataPoints.cxx:457 AliTOFLvHvDataPoints.cxx:458 AliTOFLvHvDataPoints.cxx:459 AliTOFLvHvDataPoints.cxx:460 AliTOFLvHvDataPoints.cxx:461 AliTOFLvHvDataPoints.cxx:462 AliTOFLvHvDataPoints.cxx:463 AliTOFLvHvDataPoints.cxx:464 AliTOFLvHvDataPoints.cxx:465 AliTOFLvHvDataPoints.cxx:466 AliTOFLvHvDataPoints.cxx:467 AliTOFLvHvDataPoints.cxx:468 AliTOFLvHvDataPoints.cxx:469 AliTOFLvHvDataPoints.cxx:470 AliTOFLvHvDataPoints.cxx:471 AliTOFLvHvDataPoints.cxx:472 AliTOFLvHvDataPoints.cxx:473 AliTOFLvHvDataPoints.cxx:474 AliTOFLvHvDataPoints.cxx:475 AliTOFLvHvDataPoints.cxx:476 AliTOFLvHvDataPoints.cxx:477 AliTOFLvHvDataPoints.cxx:478 AliTOFLvHvDataPoints.cxx:479 AliTOFLvHvDataPoints.cxx:480 AliTOFLvHvDataPoints.cxx:481 AliTOFLvHvDataPoints.cxx:482 AliTOFLvHvDataPoints.cxx:483 AliTOFLvHvDataPoints.cxx:484 AliTOFLvHvDataPoints.cxx:485 AliTOFLvHvDataPoints.cxx:486 AliTOFLvHvDataPoints.cxx:487 AliTOFLvHvDataPoints.cxx:488 AliTOFLvHvDataPoints.cxx:489 AliTOFLvHvDataPoints.cxx:490 AliTOFLvHvDataPoints.cxx:491 AliTOFLvHvDataPoints.cxx:492 AliTOFLvHvDataPoints.cxx:493 AliTOFLvHvDataPoints.cxx:494 AliTOFLvHvDataPoints.cxx:495 AliTOFLvHvDataPoints.cxx:496 AliTOFLvHvDataPoints.cxx:497 AliTOFLvHvDataPoints.cxx:498 AliTOFLvHvDataPoints.cxx:499 AliTOFLvHvDataPoints.cxx:500 AliTOFLvHvDataPoints.cxx:501 AliTOFLvHvDataPoints.cxx:502 AliTOFLvHvDataPoints.cxx:503 AliTOFLvHvDataPoints.cxx:504 AliTOFLvHvDataPoints.cxx:505 AliTOFLvHvDataPoints.cxx:506 AliTOFLvHvDataPoints.cxx:507 AliTOFLvHvDataPoints.cxx:508 AliTOFLvHvDataPoints.cxx:509 AliTOFLvHvDataPoints.cxx:510 AliTOFLvHvDataPoints.cxx:511 AliTOFLvHvDataPoints.cxx:512 AliTOFLvHvDataPoints.cxx:513 AliTOFLvHvDataPoints.cxx:514 AliTOFLvHvDataPoints.cxx:515 AliTOFLvHvDataPoints.cxx:516 AliTOFLvHvDataPoints.cxx:517 AliTOFLvHvDataPoints.cxx:518 AliTOFLvHvDataPoints.cxx:519 AliTOFLvHvDataPoints.cxx:520 AliTOFLvHvDataPoints.cxx:521 AliTOFLvHvDataPoints.cxx:522 AliTOFLvHvDataPoints.cxx:523 AliTOFLvHvDataPoints.cxx:524 AliTOFLvHvDataPoints.cxx:525 AliTOFLvHvDataPoints.cxx:526 AliTOFLvHvDataPoints.cxx:527 AliTOFLvHvDataPoints.cxx:528 AliTOFLvHvDataPoints.cxx:529 AliTOFLvHvDataPoints.cxx:530 AliTOFLvHvDataPoints.cxx:531 AliTOFLvHvDataPoints.cxx:532 AliTOFLvHvDataPoints.cxx:533 AliTOFLvHvDataPoints.cxx:534 AliTOFLvHvDataPoints.cxx:535 AliTOFLvHvDataPoints.cxx:536 AliTOFLvHvDataPoints.cxx:537 AliTOFLvHvDataPoints.cxx:538 AliTOFLvHvDataPoints.cxx:539 AliTOFLvHvDataPoints.cxx:540 AliTOFLvHvDataPoints.cxx:541 AliTOFLvHvDataPoints.cxx:542 AliTOFLvHvDataPoints.cxx:543 AliTOFLvHvDataPoints.cxx:544 AliTOFLvHvDataPoints.cxx:545 AliTOFLvHvDataPoints.cxx:546 AliTOFLvHvDataPoints.cxx:547 AliTOFLvHvDataPoints.cxx:548 AliTOFLvHvDataPoints.cxx:549 AliTOFLvHvDataPoints.cxx:550 AliTOFLvHvDataPoints.cxx:551 AliTOFLvHvDataPoints.cxx:552 AliTOFLvHvDataPoints.cxx:553 AliTOFLvHvDataPoints.cxx:554 AliTOFLvHvDataPoints.cxx:555 AliTOFLvHvDataPoints.cxx:556 AliTOFLvHvDataPoints.cxx:557 AliTOFLvHvDataPoints.cxx:558 AliTOFLvHvDataPoints.cxx:559 AliTOFLvHvDataPoints.cxx:560 AliTOFLvHvDataPoints.cxx:561 AliTOFLvHvDataPoints.cxx:562 AliTOFLvHvDataPoints.cxx:563 AliTOFLvHvDataPoints.cxx:564 AliTOFLvHvDataPoints.cxx:565 AliTOFLvHvDataPoints.cxx:566 AliTOFLvHvDataPoints.cxx:567 AliTOFLvHvDataPoints.cxx:568 AliTOFLvHvDataPoints.cxx:569 AliTOFLvHvDataPoints.cxx:570 AliTOFLvHvDataPoints.cxx:571 AliTOFLvHvDataPoints.cxx:572 AliTOFLvHvDataPoints.cxx:573 AliTOFLvHvDataPoints.cxx:574 AliTOFLvHvDataPoints.cxx:575 AliTOFLvHvDataPoints.cxx:576 AliTOFLvHvDataPoints.cxx:577 AliTOFLvHvDataPoints.cxx:578 AliTOFLvHvDataPoints.cxx:579 AliTOFLvHvDataPoints.cxx:580 AliTOFLvHvDataPoints.cxx:581 AliTOFLvHvDataPoints.cxx:582 AliTOFLvHvDataPoints.cxx:583 AliTOFLvHvDataPoints.cxx:584 AliTOFLvHvDataPoints.cxx:585 AliTOFLvHvDataPoints.cxx:586 AliTOFLvHvDataPoints.cxx:587 AliTOFLvHvDataPoints.cxx:588 AliTOFLvHvDataPoints.cxx:589 AliTOFLvHvDataPoints.cxx:590 AliTOFLvHvDataPoints.cxx:591 AliTOFLvHvDataPoints.cxx:592 AliTOFLvHvDataPoints.cxx:593 AliTOFLvHvDataPoints.cxx:594 AliTOFLvHvDataPoints.cxx:595 AliTOFLvHvDataPoints.cxx:596 AliTOFLvHvDataPoints.cxx:597 AliTOFLvHvDataPoints.cxx:598 AliTOFLvHvDataPoints.cxx:599 AliTOFLvHvDataPoints.cxx:600 AliTOFLvHvDataPoints.cxx:601 AliTOFLvHvDataPoints.cxx:602 AliTOFLvHvDataPoints.cxx:603 AliTOFLvHvDataPoints.cxx:604 AliTOFLvHvDataPoints.cxx:605 AliTOFLvHvDataPoints.cxx:606 AliTOFLvHvDataPoints.cxx:607 AliTOFLvHvDataPoints.cxx:608 AliTOFLvHvDataPoints.cxx:609 AliTOFLvHvDataPoints.cxx:610 AliTOFLvHvDataPoints.cxx:611 AliTOFLvHvDataPoints.cxx:612 AliTOFLvHvDataPoints.cxx:613 AliTOFLvHvDataPoints.cxx:614 AliTOFLvHvDataPoints.cxx:615 AliTOFLvHvDataPoints.cxx:616 AliTOFLvHvDataPoints.cxx:617 AliTOFLvHvDataPoints.cxx:618 AliTOFLvHvDataPoints.cxx:619 AliTOFLvHvDataPoints.cxx:620 AliTOFLvHvDataPoints.cxx:621 AliTOFLvHvDataPoints.cxx:622 AliTOFLvHvDataPoints.cxx:623 AliTOFLvHvDataPoints.cxx:624 AliTOFLvHvDataPoints.cxx:625 AliTOFLvHvDataPoints.cxx:626 AliTOFLvHvDataPoints.cxx:627 AliTOFLvHvDataPoints.cxx:628 AliTOFLvHvDataPoints.cxx:629 AliTOFLvHvDataPoints.cxx:630 AliTOFLvHvDataPoints.cxx:631 AliTOFLvHvDataPoints.cxx:632 AliTOFLvHvDataPoints.cxx:633 AliTOFLvHvDataPoints.cxx:634 AliTOFLvHvDataPoints.cxx:635 AliTOFLvHvDataPoints.cxx:636 AliTOFLvHvDataPoints.cxx:637 AliTOFLvHvDataPoints.cxx:638 AliTOFLvHvDataPoints.cxx:639 AliTOFLvHvDataPoints.cxx:640 AliTOFLvHvDataPoints.cxx:641 AliTOFLvHvDataPoints.cxx:642 AliTOFLvHvDataPoints.cxx:643 AliTOFLvHvDataPoints.cxx:644 AliTOFLvHvDataPoints.cxx:645 AliTOFLvHvDataPoints.cxx:646 AliTOFLvHvDataPoints.cxx:647 AliTOFLvHvDataPoints.cxx:648 AliTOFLvHvDataPoints.cxx:649 AliTOFLvHvDataPoints.cxx:650 AliTOFLvHvDataPoints.cxx:651 AliTOFLvHvDataPoints.cxx:652 AliTOFLvHvDataPoints.cxx:653 AliTOFLvHvDataPoints.cxx:654 AliTOFLvHvDataPoints.cxx:655 AliTOFLvHvDataPoints.cxx:656 AliTOFLvHvDataPoints.cxx:657 AliTOFLvHvDataPoints.cxx:658 AliTOFLvHvDataPoints.cxx:659 AliTOFLvHvDataPoints.cxx:660 AliTOFLvHvDataPoints.cxx:661 AliTOFLvHvDataPoints.cxx:662 AliTOFLvHvDataPoints.cxx:663 AliTOFLvHvDataPoints.cxx:664 AliTOFLvHvDataPoints.cxx:665 AliTOFLvHvDataPoints.cxx:666 AliTOFLvHvDataPoints.cxx:667 AliTOFLvHvDataPoints.cxx:668 AliTOFLvHvDataPoints.cxx:669 AliTOFLvHvDataPoints.cxx:670 AliTOFLvHvDataPoints.cxx:671 AliTOFLvHvDataPoints.cxx:672 AliTOFLvHvDataPoints.cxx:673 AliTOFLvHvDataPoints.cxx:674 AliTOFLvHvDataPoints.cxx:675 AliTOFLvHvDataPoints.cxx:676 AliTOFLvHvDataPoints.cxx:677 AliTOFLvHvDataPoints.cxx:678 AliTOFLvHvDataPoints.cxx:679 AliTOFLvHvDataPoints.cxx:680 AliTOFLvHvDataPoints.cxx:681 AliTOFLvHvDataPoints.cxx:682 AliTOFLvHvDataPoints.cxx:683 AliTOFLvHvDataPoints.cxx:684 AliTOFLvHvDataPoints.cxx:685 AliTOFLvHvDataPoints.cxx:686 AliTOFLvHvDataPoints.cxx:687 AliTOFLvHvDataPoints.cxx:688 AliTOFLvHvDataPoints.cxx:689 AliTOFLvHvDataPoints.cxx:690 AliTOFLvHvDataPoints.cxx:691 AliTOFLvHvDataPoints.cxx:692 AliTOFLvHvDataPoints.cxx:693 AliTOFLvHvDataPoints.cxx:694 AliTOFLvHvDataPoints.cxx:695 AliTOFLvHvDataPoints.cxx:696 AliTOFLvHvDataPoints.cxx:697 AliTOFLvHvDataPoints.cxx:698 AliTOFLvHvDataPoints.cxx:699 AliTOFLvHvDataPoints.cxx:700 AliTOFLvHvDataPoints.cxx:701 AliTOFLvHvDataPoints.cxx:702 AliTOFLvHvDataPoints.cxx:703 AliTOFLvHvDataPoints.cxx:704 AliTOFLvHvDataPoints.cxx:705 AliTOFLvHvDataPoints.cxx:706 AliTOFLvHvDataPoints.cxx:707 AliTOFLvHvDataPoints.cxx:708 AliTOFLvHvDataPoints.cxx:709 AliTOFLvHvDataPoints.cxx:710 AliTOFLvHvDataPoints.cxx:711 AliTOFLvHvDataPoints.cxx:712 AliTOFLvHvDataPoints.cxx:713 AliTOFLvHvDataPoints.cxx:714 AliTOFLvHvDataPoints.cxx:715 AliTOFLvHvDataPoints.cxx:716 AliTOFLvHvDataPoints.cxx:717 AliTOFLvHvDataPoints.cxx:718 AliTOFLvHvDataPoints.cxx:719 AliTOFLvHvDataPoints.cxx:720 AliTOFLvHvDataPoints.cxx:721 AliTOFLvHvDataPoints.cxx:722 AliTOFLvHvDataPoints.cxx:723 AliTOFLvHvDataPoints.cxx:724 AliTOFLvHvDataPoints.cxx:725 AliTOFLvHvDataPoints.cxx:726 AliTOFLvHvDataPoints.cxx:727 AliTOFLvHvDataPoints.cxx:728 AliTOFLvHvDataPoints.cxx:729 AliTOFLvHvDataPoints.cxx:730 AliTOFLvHvDataPoints.cxx:731 AliTOFLvHvDataPoints.cxx:732 AliTOFLvHvDataPoints.cxx:733 AliTOFLvHvDataPoints.cxx:734 AliTOFLvHvDataPoints.cxx:735 AliTOFLvHvDataPoints.cxx:736 AliTOFLvHvDataPoints.cxx:737 AliTOFLvHvDataPoints.cxx:738 AliTOFLvHvDataPoints.cxx:739 AliTOFLvHvDataPoints.cxx:740 AliTOFLvHvDataPoints.cxx:741 AliTOFLvHvDataPoints.cxx:742 AliTOFLvHvDataPoints.cxx:743 AliTOFLvHvDataPoints.cxx:744 AliTOFLvHvDataPoints.cxx:745 AliTOFLvHvDataPoints.cxx:746 AliTOFLvHvDataPoints.cxx:747 AliTOFLvHvDataPoints.cxx:748 AliTOFLvHvDataPoints.cxx:749 AliTOFLvHvDataPoints.cxx:750 AliTOFLvHvDataPoints.cxx:751 AliTOFLvHvDataPoints.cxx:752 AliTOFLvHvDataPoints.cxx:753 AliTOFLvHvDataPoints.cxx:754 AliTOFLvHvDataPoints.cxx:755 AliTOFLvHvDataPoints.cxx:756 AliTOFLvHvDataPoints.cxx:757 AliTOFLvHvDataPoints.cxx:758 AliTOFLvHvDataPoints.cxx:759 AliTOFLvHvDataPoints.cxx:760 AliTOFLvHvDataPoints.cxx:761 AliTOFLvHvDataPoints.cxx:762 AliTOFLvHvDataPoints.cxx:763 AliTOFLvHvDataPoints.cxx:764 AliTOFLvHvDataPoints.cxx:765 AliTOFLvHvDataPoints.cxx:766 AliTOFLvHvDataPoints.cxx:767 AliTOFLvHvDataPoints.cxx:768 AliTOFLvHvDataPoints.cxx:769 AliTOFLvHvDataPoints.cxx:770 AliTOFLvHvDataPoints.cxx:771 AliTOFLvHvDataPoints.cxx:772 AliTOFLvHvDataPoints.cxx:773 AliTOFLvHvDataPoints.cxx:774 AliTOFLvHvDataPoints.cxx:775 AliTOFLvHvDataPoints.cxx:776 AliTOFLvHvDataPoints.cxx:777 AliTOFLvHvDataPoints.cxx:778 AliTOFLvHvDataPoints.cxx:779 AliTOFLvHvDataPoints.cxx:780 AliTOFLvHvDataPoints.cxx:781 AliTOFLvHvDataPoints.cxx:782 AliTOFLvHvDataPoints.cxx:783 AliTOFLvHvDataPoints.cxx:784 AliTOFLvHvDataPoints.cxx:785 AliTOFLvHvDataPoints.cxx:786 AliTOFLvHvDataPoints.cxx:787 AliTOFLvHvDataPoints.cxx:788 AliTOFLvHvDataPoints.cxx:789 AliTOFLvHvDataPoints.cxx:790 AliTOFLvHvDataPoints.cxx:791 AliTOFLvHvDataPoints.cxx:792 AliTOFLvHvDataPoints.cxx:793 AliTOFLvHvDataPoints.cxx:794 AliTOFLvHvDataPoints.cxx:795 AliTOFLvHvDataPoints.cxx:796 AliTOFLvHvDataPoints.cxx:797 AliTOFLvHvDataPoints.cxx:798 AliTOFLvHvDataPoints.cxx:799 AliTOFLvHvDataPoints.cxx:800 AliTOFLvHvDataPoints.cxx:801 AliTOFLvHvDataPoints.cxx:802 AliTOFLvHvDataPoints.cxx:803 AliTOFLvHvDataPoints.cxx:804 AliTOFLvHvDataPoints.cxx:805 AliTOFLvHvDataPoints.cxx:806 AliTOFLvHvDataPoints.cxx:807 AliTOFLvHvDataPoints.cxx:808 AliTOFLvHvDataPoints.cxx:809 AliTOFLvHvDataPoints.cxx:810 AliTOFLvHvDataPoints.cxx:811 AliTOFLvHvDataPoints.cxx:812 AliTOFLvHvDataPoints.cxx:813 AliTOFLvHvDataPoints.cxx:814 AliTOFLvHvDataPoints.cxx:815 AliTOFLvHvDataPoints.cxx:816 AliTOFLvHvDataPoints.cxx:817 AliTOFLvHvDataPoints.cxx:818 AliTOFLvHvDataPoints.cxx:819 AliTOFLvHvDataPoints.cxx:820 AliTOFLvHvDataPoints.cxx:821 AliTOFLvHvDataPoints.cxx:822 AliTOFLvHvDataPoints.cxx:823 AliTOFLvHvDataPoints.cxx:824 AliTOFLvHvDataPoints.cxx:825 AliTOFLvHvDataPoints.cxx:826 AliTOFLvHvDataPoints.cxx:827 AliTOFLvHvDataPoints.cxx:828 AliTOFLvHvDataPoints.cxx:829 AliTOFLvHvDataPoints.cxx:830 AliTOFLvHvDataPoints.cxx:831 AliTOFLvHvDataPoints.cxx:832 AliTOFLvHvDataPoints.cxx:833 AliTOFLvHvDataPoints.cxx:834 AliTOFLvHvDataPoints.cxx:835 AliTOFLvHvDataPoints.cxx:836 AliTOFLvHvDataPoints.cxx:837 AliTOFLvHvDataPoints.cxx:838 AliTOFLvHvDataPoints.cxx:839 AliTOFLvHvDataPoints.cxx:840 AliTOFLvHvDataPoints.cxx:841 AliTOFLvHvDataPoints.cxx:842 AliTOFLvHvDataPoints.cxx:843 AliTOFLvHvDataPoints.cxx:844 AliTOFLvHvDataPoints.cxx:845 AliTOFLvHvDataPoints.cxx:846 AliTOFLvHvDataPoints.cxx:847 AliTOFLvHvDataPoints.cxx:848 AliTOFLvHvDataPoints.cxx:849 AliTOFLvHvDataPoints.cxx:850 AliTOFLvHvDataPoints.cxx:851 AliTOFLvHvDataPoints.cxx:852 AliTOFLvHvDataPoints.cxx:853 AliTOFLvHvDataPoints.cxx:854 AliTOFLvHvDataPoints.cxx:855 AliTOFLvHvDataPoints.cxx:856 AliTOFLvHvDataPoints.cxx:857 AliTOFLvHvDataPoints.cxx:858 AliTOFLvHvDataPoints.cxx:859 AliTOFLvHvDataPoints.cxx:860 AliTOFLvHvDataPoints.cxx:861 AliTOFLvHvDataPoints.cxx:862 AliTOFLvHvDataPoints.cxx:863 AliTOFLvHvDataPoints.cxx:864 AliTOFLvHvDataPoints.cxx:865 AliTOFLvHvDataPoints.cxx:866 AliTOFLvHvDataPoints.cxx:867 AliTOFLvHvDataPoints.cxx:868 AliTOFLvHvDataPoints.cxx:869 AliTOFLvHvDataPoints.cxx:870 AliTOFLvHvDataPoints.cxx:871 AliTOFLvHvDataPoints.cxx:872 AliTOFLvHvDataPoints.cxx:873 AliTOFLvHvDataPoints.cxx:874 AliTOFLvHvDataPoints.cxx:875 AliTOFLvHvDataPoints.cxx:876 AliTOFLvHvDataPoints.cxx:877 AliTOFLvHvDataPoints.cxx:878 AliTOFLvHvDataPoints.cxx:879 AliTOFLvHvDataPoints.cxx:880 AliTOFLvHvDataPoints.cxx:881 AliTOFLvHvDataPoints.cxx:882 AliTOFLvHvDataPoints.cxx:883 AliTOFLvHvDataPoints.cxx:884 AliTOFLvHvDataPoints.cxx:885 AliTOFLvHvDataPoints.cxx:886 AliTOFLvHvDataPoints.cxx:887 AliTOFLvHvDataPoints.cxx:888 AliTOFLvHvDataPoints.cxx:889 AliTOFLvHvDataPoints.cxx:890 AliTOFLvHvDataPoints.cxx:891 AliTOFLvHvDataPoints.cxx:892 AliTOFLvHvDataPoints.cxx:893 AliTOFLvHvDataPoints.cxx:894 AliTOFLvHvDataPoints.cxx:895 AliTOFLvHvDataPoints.cxx:896 AliTOFLvHvDataPoints.cxx:897 AliTOFLvHvDataPoints.cxx:898 AliTOFLvHvDataPoints.cxx:899 AliTOFLvHvDataPoints.cxx:900 AliTOFLvHvDataPoints.cxx:901 AliTOFLvHvDataPoints.cxx:902 AliTOFLvHvDataPoints.cxx:903 AliTOFLvHvDataPoints.cxx:904 AliTOFLvHvDataPoints.cxx:905 AliTOFLvHvDataPoints.cxx:906 AliTOFLvHvDataPoints.cxx:907 AliTOFLvHvDataPoints.cxx:908 AliTOFLvHvDataPoints.cxx:909 AliTOFLvHvDataPoints.cxx:910 AliTOFLvHvDataPoints.cxx:911 AliTOFLvHvDataPoints.cxx:912 AliTOFLvHvDataPoints.cxx:913 AliTOFLvHvDataPoints.cxx:914 AliTOFLvHvDataPoints.cxx:915 AliTOFLvHvDataPoints.cxx:916 AliTOFLvHvDataPoints.cxx:917 AliTOFLvHvDataPoints.cxx:918 AliTOFLvHvDataPoints.cxx:919 AliTOFLvHvDataPoints.cxx:920 AliTOFLvHvDataPoints.cxx:921 AliTOFLvHvDataPoints.cxx:922 AliTOFLvHvDataPoints.cxx:923 AliTOFLvHvDataPoints.cxx:924 AliTOFLvHvDataPoints.cxx:925 AliTOFLvHvDataPoints.cxx:926 AliTOFLvHvDataPoints.cxx:927 AliTOFLvHvDataPoints.cxx:928 AliTOFLvHvDataPoints.cxx:929 AliTOFLvHvDataPoints.cxx:930 AliTOFLvHvDataPoints.cxx:931 AliTOFLvHvDataPoints.cxx:932 AliTOFLvHvDataPoints.cxx:933 AliTOFLvHvDataPoints.cxx:934 AliTOFLvHvDataPoints.cxx:935 AliTOFLvHvDataPoints.cxx:936 AliTOFLvHvDataPoints.cxx:937 AliTOFLvHvDataPoints.cxx:938 AliTOFLvHvDataPoints.cxx:939 AliTOFLvHvDataPoints.cxx:940 AliTOFLvHvDataPoints.cxx:941 AliTOFLvHvDataPoints.cxx:942 AliTOFLvHvDataPoints.cxx:943 AliTOFLvHvDataPoints.cxx:944 AliTOFLvHvDataPoints.cxx:945 AliTOFLvHvDataPoints.cxx:946 AliTOFLvHvDataPoints.cxx:947 AliTOFLvHvDataPoints.cxx:948 AliTOFLvHvDataPoints.cxx:949 AliTOFLvHvDataPoints.cxx:950 AliTOFLvHvDataPoints.cxx:951 AliTOFLvHvDataPoints.cxx:952 AliTOFLvHvDataPoints.cxx:953 AliTOFLvHvDataPoints.cxx:954 AliTOFLvHvDataPoints.cxx:955 AliTOFLvHvDataPoints.cxx:956 AliTOFLvHvDataPoints.cxx:957 AliTOFLvHvDataPoints.cxx:958 AliTOFLvHvDataPoints.cxx:959 AliTOFLvHvDataPoints.cxx:960 AliTOFLvHvDataPoints.cxx:961 AliTOFLvHvDataPoints.cxx:962 AliTOFLvHvDataPoints.cxx:963 AliTOFLvHvDataPoints.cxx:964 AliTOFLvHvDataPoints.cxx:965 AliTOFLvHvDataPoints.cxx:966 AliTOFLvHvDataPoints.cxx:967 AliTOFLvHvDataPoints.cxx:968 AliTOFLvHvDataPoints.cxx:969 AliTOFLvHvDataPoints.cxx:970 AliTOFLvHvDataPoints.cxx:971 AliTOFLvHvDataPoints.cxx:972 AliTOFLvHvDataPoints.cxx:973 AliTOFLvHvDataPoints.cxx:974 AliTOFLvHvDataPoints.cxx:975 AliTOFLvHvDataPoints.cxx:976 AliTOFLvHvDataPoints.cxx:977 AliTOFLvHvDataPoints.cxx:978 AliTOFLvHvDataPoints.cxx:979 AliTOFLvHvDataPoints.cxx:980 AliTOFLvHvDataPoints.cxx:981 AliTOFLvHvDataPoints.cxx:982 AliTOFLvHvDataPoints.cxx:983 AliTOFLvHvDataPoints.cxx:984 AliTOFLvHvDataPoints.cxx:985 AliTOFLvHvDataPoints.cxx:986 AliTOFLvHvDataPoints.cxx:987 AliTOFLvHvDataPoints.cxx:988 AliTOFLvHvDataPoints.cxx:989 AliTOFLvHvDataPoints.cxx:990 AliTOFLvHvDataPoints.cxx:991 AliTOFLvHvDataPoints.cxx:992 AliTOFLvHvDataPoints.cxx:993 AliTOFLvHvDataPoints.cxx:994 AliTOFLvHvDataPoints.cxx:995 AliTOFLvHvDataPoints.cxx:996 AliTOFLvHvDataPoints.cxx:997 AliTOFLvHvDataPoints.cxx:998 AliTOFLvHvDataPoints.cxx:999 AliTOFLvHvDataPoints.cxx:1000 AliTOFLvHvDataPoints.cxx:1001 AliTOFLvHvDataPoints.cxx:1002 AliTOFLvHvDataPoints.cxx:1003 AliTOFLvHvDataPoints.cxx:1004 AliTOFLvHvDataPoints.cxx:1005 AliTOFLvHvDataPoints.cxx:1006 AliTOFLvHvDataPoints.cxx:1007 AliTOFLvHvDataPoints.cxx:1008 AliTOFLvHvDataPoints.cxx:1009 AliTOFLvHvDataPoints.cxx:1010 AliTOFLvHvDataPoints.cxx:1011 AliTOFLvHvDataPoints.cxx:1012 AliTOFLvHvDataPoints.cxx:1013 AliTOFLvHvDataPoints.cxx:1014 AliTOFLvHvDataPoints.cxx:1015 AliTOFLvHvDataPoints.cxx:1016 AliTOFLvHvDataPoints.cxx:1017 AliTOFLvHvDataPoints.cxx:1018 AliTOFLvHvDataPoints.cxx:1019 AliTOFLvHvDataPoints.cxx:1020 AliTOFLvHvDataPoints.cxx:1021 AliTOFLvHvDataPoints.cxx:1022 AliTOFLvHvDataPoints.cxx:1023 AliTOFLvHvDataPoints.cxx:1024 AliTOFLvHvDataPoints.cxx:1025 AliTOFLvHvDataPoints.cxx:1026 AliTOFLvHvDataPoints.cxx:1027 AliTOFLvHvDataPoints.cxx:1028 AliTOFLvHvDataPoints.cxx:1029 AliTOFLvHvDataPoints.cxx:1030 AliTOFLvHvDataPoints.cxx:1031 AliTOFLvHvDataPoints.cxx:1032 AliTOFLvHvDataPoints.cxx:1033