ROOT logo
#include<stdio.h>
#include "AliFlowVZEROResults.h"
#include "TList.h"

ClassImp(AliFlowVZEROResults);

AliFlowVZEROResults::AliFlowVZEROResults(const char *name,const Int_t nvar,const Int_t* binVar) :
  TNamed(name,name),
  fNbinVar(new TArrayI(nvar)),
  fXmin(new TArrayF(nvar)),
  fXmax(new TArrayF(nvar)),
  fNameVar(new TClonesArray("TNamed")),
  fV2(new TClonesArray("TProfile"))
{

  for(Int_t i=0;i < GetNvar();i++){
    (*fNbinVar)[i] = binVar[i];
  }
  
  for(Int_t i=0; i<GetNvar();i++){
    new((*fNameVar)[i]) TNamed("","");
  }
}

AliFlowVZEROResults::AliFlowVZEROResults() :
  TNamed("v2","v2"),
  fNbinVar(new TArrayI(0)),
  fXmin(new TArrayF(0)),
  fXmax(new TArrayF(0)),
  fNameVar(new TClonesArray("TNamed")),
  fV2(new TClonesArray("TProfile"))
{
  
}

AliFlowVZEROResults::~AliFlowVZEROResults(){
  for(Int_t i=fNameVar->GetEntries();i>0;i--){
    delete fNameVar->At(i-1);
    fNameVar->RemoveAt(i-1);
  }

  for(Int_t i=fV2->GetEntries();i>0;i--){
    delete fV2->At(i-1);
    fV2->RemoveAt(i-1);
  }

  delete fNbinVar;
  delete fXmin;
  delete fXmax;
}

void AliFlowVZEROResults::Reset(){
  for(Int_t i=fNameVar->GetEntries();i>0;i--){
    delete fNameVar->At(i-1);
    fNameVar->RemoveAt(i-1);
  }

  for(Int_t i=fV2->GetEntries();i>0;i--){
    delete fV2->At(i-1);
    fV2->RemoveAt(i-1);
  }

  delete fNbinVar;
  delete fXmin;
  delete fXmax;

  fNbinVar = new TArrayI(0);
  fXmin = new TArrayF(0);
  fXmax = new TArrayF(0);

}

AliFlowVZEROResults::AliFlowVZEROResults(const AliFlowVZEROResults &old) :
  TNamed(old),
  fNbinVar(NULL),
  fXmin(NULL),
  fXmax(NULL),
  fNameVar(new TClonesArray("TNamed")),
  fV2(new TClonesArray("TProfile"))
{

  fNbinVar = new TArrayI(old.GetNvar());
  fXmin = new TArrayF(old.GetNvar());
  fXmax = new TArrayF(old.GetNvar());

  for(Int_t i=0; i<old.GetNhistos();i++){
    new((*fV2)[i]) TProfile(*((TProfile *) old.GetV2(i)));
  }

  for(Int_t i=0; i<old.GetNvar();i++){
    new((*fNameVar)[i]) TNamed(old.GetVarName(i),old.GetVarName(i));
  }

  for(Int_t i=0;i < GetNvar();i++){
    (*fNbinVar)[i] = (*old.fNbinVar)[i];
    (*fXmin)[i] = (*old.fXmin)[i];
    (*fXmax)[i] = (*old.fXmax)[i];
   }

}

AliFlowVZEROResults& AliFlowVZEROResults::operator=(const AliFlowVZEROResults &old){

  if(this != &old){
     printf("different\n");
   }

   for(Int_t i=0; i<old.GetNhistos();i++){
     new((*fV2)[i]) TProfile(*((TProfile *) old.GetV2(i)));
   }
   
   fNbinVar = new TArrayI(old.GetNvar());
   fXmin = new TArrayF(old.GetNvar());
   fXmax = new TArrayF(old.GetNvar());
   
   for(Int_t i=0;i < old.GetNvar();i++){
     (*fNbinVar)[i] = (*old.fNbinVar)[i];
     (*fXmin)[i] = (*old.fXmin)[i];
     (*fXmax)[i] = (*old.fXmax)[i];
   }
   
   fNameVar = new TClonesArray("TNamed");
   for(Int_t i=0; i<old.GetNvar();i++){
     new((*fNameVar)[i]) TNamed(old.GetVarName(i),old.GetVarName(i));
   }

  return *this;
}
  
Int_t AliFlowVZEROResults::GetNspecies() const{
  Int_t n = fV2->GetEntries();

  for(Int_t i=0;i < GetNvar();i++){
    n /= (*fNbinVar)[i];
  }

  return n;
}

void AliFlowVZEROResults::AddSpecies(const char *name,Int_t nXbin,const Double_t *bin){
  
  Bool_t kErr = kFALSE;
  for(Int_t i=0;i < GetNvar();i++){ // check the var ranges are set properly    
    if((*fNbinVar)[i] < 1 || (*fXmin)[i] >= (*fXmax)[i]){
    printf("var ranges are not set properly for variable %i please chek it before to define the species\n",i);
	kErr = kTRUE;
    }
  }
  if(kErr){
    printf("AddSpecies: NOTHING DONE\n");
    return;
  }

  Int_t ncomb = 1;
  for(Int_t i=0;i < GetNvar();i++){
    ncomb *= (*fNbinVar)[i];
  }

  char nameHisto[200];
  char title[300];
  char title2[300];
  for(Int_t i=0; i < ncomb;i++){
    snprintf(nameHisto,200,"%s_%s_%i",GetName(),name,i);
    snprintf(title,300,"%s",name);
    Int_t ncombTemp = i;
    for(Int_t j=0;j < GetNvar();j++){
      Int_t ibin = ncombTemp%(*fNbinVar)[j];
      snprintf(title2,300,"%s",title);
      snprintf(title,300,"%s_%04.1f<%s<%04.1f",title2,(*fXmin)[j] + ((*fXmax)[j]-(*fXmin)[j])/(*fNbinVar)[j]*ibin,fNameVar->At(j)->GetName(),(*fXmin)[j] + ((*fXmax)[j]-(*fXmin)[j])/(*fNbinVar)[j]*(ibin+1));
      ncombTemp /= (*fNbinVar)[j];
    }

    new((*fV2)[GetNhistos()]) TProfile(nameHisto,title,nXbin,bin);
    ((TProfile *) GetV2(GetNhistos()-1))->GetXaxis()->SetTitle("p_{t} (GeV/c)");
    ((TProfile *) GetV2(GetNhistos()-1))->GetYaxis()->SetTitle("v_{2}");
  }
}

Int_t AliFlowVZEROResults::Add(const AliFlowVZEROResults *oth){
  if(GetNhistos() == oth->GetNhistos()){
    for(Int_t i=0;i < GetNhistos();i++){
      GetV2(i)->Add(oth->GetV2(i));
    }
    return 0;
  }
  else{
    printf("ADD error: number of objects is different (%i != %i)\n",GetNhistos(),oth->GetNhistos());
    return 1;
  }
}

void AliFlowVZEROResults::SetVarRange(Int_t ivar,Float_t xMin,Float_t xMax){
  if(!GetNhistos()){
    (*fXmin)[ivar]=xMin;
    (*fXmax)[ivar]=xMax;
  }
  else{ // to avoid different range among the histos
    printf("Ranges should be set before to define the species\nNOTHING DONE\n");
  }

}

void AliFlowVZEROResults::Fill(Int_t species,Float_t pt,Float_t v2,Float_t x[]){
  Int_t ncomb = 1;
  Int_t histo = 0;
 
  for(Int_t i=0;i < GetNvar();i++){
    Int_t ibin = GetBin(i,x[i]);
    if(ibin < 0 || ibin >= (*fNbinVar)[i]){
      printf("%i) %i not good w.r.t. %i (%f) (%f,%f)\n",i,ibin,(*fNbinVar)[i],x[i],(*fXmin)[i],(*fXmax)[i]);
      return;
    }
    histo += ncomb * ibin;
    ncomb *= (*fNbinVar)[i];
  }
  histo += species*ncomb;
  DirectFill(histo,pt,v2);
 };

TProfile *AliFlowVZEROResults::GetV2(Int_t species,Float_t x[]) const{
  Int_t ncomb = 1;
  Int_t histo = 0;
 
  for(Int_t i=0;i < GetNvar();i++){
    Int_t ibin = GetBin(i,x[i]);
    if(ibin < 0 || ibin >= (*fNbinVar)[i]){
      printf("%i) %i not good w.r.t. %i (%f) (%f,%f)\n",i,ibin,(*fNbinVar)[i],x[i],(*fXmin)[i],(*fXmax)[i]);
      return NULL;
    }
    histo += ncomb * ibin;
    ncomb *= (*fNbinVar)[i];
  }
  histo += species*ncomb;


  return GetV2(histo);

}

TProfile *AliFlowVZEROResults::GetV2(Int_t species,Float_t xMin[],Float_t xMax[]) const{
  if(GetNvar()){
    char title[300];
    char title2[300];
    Int_t ncomb = 1;
    for(Int_t i=0;i < GetNvar();i++){
      ncomb *= (*fNbinVar)[i];
    }

    TProfile *htemplate = GetV2(species*ncomb);
    TProfile *temp = new TProfile(*htemplate);
    temp->SetName("histo");
    temp->Reset();
    snprintf(title,300,"%i",species);
    for(Int_t i=0;i < GetNvar();i++){
      Int_t imin = GetBin(i,xMin[i]);
      if(imin < 0) imin = 0;
      else if(imin >= (*fNbinVar)[i]) imin = (*fNbinVar)[i]-1;
      Int_t imax = GetBin(i,xMax[i]);
      if(imax < imin) imax = imin;
      else if(imax >= (*fNbinVar)[i]) imax = (*fNbinVar)[i]-1;
      snprintf(title2,300,"%s",title);
      snprintf(title,300,"%s_%04.1f<%s<%04.1f",title2,
                (*fXmin)[i] + ((*fXmax)[i]-(*fXmin)[i])/(*fNbinVar)[i]*imin,
                fNameVar->At(i)->GetName(),
                (*fXmin)[i] + ((*fXmax)[i]-(*fXmin)[i])/(*fNbinVar)[i]*(imax+1));
    }
    temp->SetTitle(title);

    for(Int_t i=species*ncomb;i < (species+1)*ncomb;i++){
      Bool_t kGood = kTRUE;

      Int_t ncombTemp = i;
      for(Int_t j=0;j < GetNvar();j++){
	Int_t imin = GetBin(j,xMin[j]);
	if(imin < 0) imin = 0;
	else if(imin >= (*fNbinVar)[j]) imin = (*fNbinVar)[j]-1;
	Int_t imax = GetBin(j,xMax[j]);
	if(imax < imin) imax = imin;
	else if(imax >= (*fNbinVar)[j]) imax = (*fNbinVar)[j]-1;
	
	Int_t ibin = ncombTemp%(*fNbinVar)[j];
	ncombTemp /= (*fNbinVar)[j];

	if(ibin < imin || ibin > imax){
	  kGood = kFALSE;
	  j = GetNvar();
	}
      }

      if(kGood) temp->Add(GetV2(i));
    }
    return temp;
  }

  return GetV2(species);
}
TProfile *AliFlowVZEROResults::GetV2reweight(Int_t species,Float_t xMin[],Float_t xMax[],Int_t varRW,Float_t rw[]) const{
  if(GetNvar()){
    char title[300];
    char title2[300];
    Int_t ncomb = 1;
    for(Int_t i=0;i < GetNvar();i++){
      ncomb *= (*fNbinVar)[i];
    }

    TProfile *htemplate = GetV2(species*ncomb);
    TProfile *temp = new TProfile(*htemplate);
    temp->SetName("histo");
    temp->Reset();
    snprintf(title,300,"%i",species);
    for(Int_t i=0;i < GetNvar();i++){
      Int_t imin = GetBin(i,xMin[i]);
      if(imin < 0) imin = 0;
      else if(imin >= (*fNbinVar)[i]) imin = (*fNbinVar)[i]-1;
      Int_t imax = GetBin(i,xMax[i]);
      if(imax < imin) imax = imin;
      else if(imax >= (*fNbinVar)[i]) imax = (*fNbinVar)[i]-1;
      snprintf(title2,300,"%s",title);
      snprintf(title,300,"%s_%04.1f<%s<%04.1f",title2,
                (*fXmin)[i] + ((*fXmax)[i]-(*fXmin)[i])/(*fNbinVar)[i]*imin,
                fNameVar->At(i)->GetName(),
                (*fXmin)[i] + ((*fXmax)[i]-(*fXmin)[i])/(*fNbinVar)[i]*(imax+1));
    }
    temp->SetTitle(title);

    for(Int_t i=species*ncomb;i < (species+1)*ncomb;i++){
      Bool_t kGood = kTRUE;

      Int_t currentBin=0;

      Int_t ncombTemp = i;
      for(Int_t j=0;j < GetNvar();j++){
	Int_t imin = GetBin(j,xMin[j]);
	if(imin < 0) imin = 0;
	else if(imin >= (*fNbinVar)[j]) imin = (*fNbinVar)[j]-1;
	Int_t imax = GetBin(j,xMax[j]);
	if(imax < imin) imax = imin;
	else if(imax >= (*fNbinVar)[j]) imax = (*fNbinVar)[j]-1;
	
	Int_t ibin = ncombTemp%(*fNbinVar)[j];
	ncombTemp /= (*fNbinVar)[j];

	if(j == varRW) currentBin = ibin;

	if(ibin < imin || ibin > imax){
	  kGood = kFALSE;
	  j = GetNvar();
	}
      }

      if(kGood) temp->Add(GetV2(i),rw[currentBin]);
    }
    return temp;
  }

  return GetV2(species);
}


Long64_t AliFlowVZEROResults::Merge(TCollection* list){
  Long64_t res=0;
  if (!list) return 0;
  if (list->IsEmpty()) return 0;

  TList *listObj = new TList();
  listObj->AddAll(list);

  for(Int_t i=0;i < listObj->GetEntries();i++){
    AliFlowVZEROResults *obj = (AliFlowVZEROResults *) listObj->At(i);
    Add(obj);
    res++;
  }
  return res;
}
 AliFlowVZEROResults.cxx:1
 AliFlowVZEROResults.cxx:2
 AliFlowVZEROResults.cxx:3
 AliFlowVZEROResults.cxx:4
 AliFlowVZEROResults.cxx:5
 AliFlowVZEROResults.cxx:6
 AliFlowVZEROResults.cxx:7
 AliFlowVZEROResults.cxx:8
 AliFlowVZEROResults.cxx:9
 AliFlowVZEROResults.cxx:10
 AliFlowVZEROResults.cxx:11
 AliFlowVZEROResults.cxx:12
 AliFlowVZEROResults.cxx:13
 AliFlowVZEROResults.cxx:14
 AliFlowVZEROResults.cxx:15
 AliFlowVZEROResults.cxx:16
 AliFlowVZEROResults.cxx:17
 AliFlowVZEROResults.cxx:18
 AliFlowVZEROResults.cxx:19
 AliFlowVZEROResults.cxx:20
 AliFlowVZEROResults.cxx:21
 AliFlowVZEROResults.cxx:22
 AliFlowVZEROResults.cxx:23
 AliFlowVZEROResults.cxx:24
 AliFlowVZEROResults.cxx:25
 AliFlowVZEROResults.cxx:26
 AliFlowVZEROResults.cxx:27
 AliFlowVZEROResults.cxx:28
 AliFlowVZEROResults.cxx:29
 AliFlowVZEROResults.cxx:30
 AliFlowVZEROResults.cxx:31
 AliFlowVZEROResults.cxx:32
 AliFlowVZEROResults.cxx:33
 AliFlowVZEROResults.cxx:34
 AliFlowVZEROResults.cxx:35
 AliFlowVZEROResults.cxx:36
 AliFlowVZEROResults.cxx:37
 AliFlowVZEROResults.cxx:38
 AliFlowVZEROResults.cxx:39
 AliFlowVZEROResults.cxx:40
 AliFlowVZEROResults.cxx:41
 AliFlowVZEROResults.cxx:42
 AliFlowVZEROResults.cxx:43
 AliFlowVZEROResults.cxx:44
 AliFlowVZEROResults.cxx:45
 AliFlowVZEROResults.cxx:46
 AliFlowVZEROResults.cxx:47
 AliFlowVZEROResults.cxx:48
 AliFlowVZEROResults.cxx:49
 AliFlowVZEROResults.cxx:50
 AliFlowVZEROResults.cxx:51
 AliFlowVZEROResults.cxx:52
 AliFlowVZEROResults.cxx:53
 AliFlowVZEROResults.cxx:54
 AliFlowVZEROResults.cxx:55
 AliFlowVZEROResults.cxx:56
 AliFlowVZEROResults.cxx:57
 AliFlowVZEROResults.cxx:58
 AliFlowVZEROResults.cxx:59
 AliFlowVZEROResults.cxx:60
 AliFlowVZEROResults.cxx:61
 AliFlowVZEROResults.cxx:62
 AliFlowVZEROResults.cxx:63
 AliFlowVZEROResults.cxx:64
 AliFlowVZEROResults.cxx:65
 AliFlowVZEROResults.cxx:66
 AliFlowVZEROResults.cxx:67
 AliFlowVZEROResults.cxx:68
 AliFlowVZEROResults.cxx:69
 AliFlowVZEROResults.cxx:70
 AliFlowVZEROResults.cxx:71
 AliFlowVZEROResults.cxx:72
 AliFlowVZEROResults.cxx:73
 AliFlowVZEROResults.cxx:74
 AliFlowVZEROResults.cxx:75
 AliFlowVZEROResults.cxx:76
 AliFlowVZEROResults.cxx:77
 AliFlowVZEROResults.cxx:78
 AliFlowVZEROResults.cxx:79
 AliFlowVZEROResults.cxx:80
 AliFlowVZEROResults.cxx:81
 AliFlowVZEROResults.cxx:82
 AliFlowVZEROResults.cxx:83
 AliFlowVZEROResults.cxx:84
 AliFlowVZEROResults.cxx:85
 AliFlowVZEROResults.cxx:86
 AliFlowVZEROResults.cxx:87
 AliFlowVZEROResults.cxx:88
 AliFlowVZEROResults.cxx:89
 AliFlowVZEROResults.cxx:90
 AliFlowVZEROResults.cxx:91
 AliFlowVZEROResults.cxx:92
 AliFlowVZEROResults.cxx:93
 AliFlowVZEROResults.cxx:94
 AliFlowVZEROResults.cxx:95
 AliFlowVZEROResults.cxx:96
 AliFlowVZEROResults.cxx:97
 AliFlowVZEROResults.cxx:98
 AliFlowVZEROResults.cxx:99
 AliFlowVZEROResults.cxx:100
 AliFlowVZEROResults.cxx:101
 AliFlowVZEROResults.cxx:102
 AliFlowVZEROResults.cxx:103
 AliFlowVZEROResults.cxx:104
 AliFlowVZEROResults.cxx:105
 AliFlowVZEROResults.cxx:106
 AliFlowVZEROResults.cxx:107
 AliFlowVZEROResults.cxx:108
 AliFlowVZEROResults.cxx:109
 AliFlowVZEROResults.cxx:110
 AliFlowVZEROResults.cxx:111
 AliFlowVZEROResults.cxx:112
 AliFlowVZEROResults.cxx:113
 AliFlowVZEROResults.cxx:114
 AliFlowVZEROResults.cxx:115
 AliFlowVZEROResults.cxx:116
 AliFlowVZEROResults.cxx:117
 AliFlowVZEROResults.cxx:118
 AliFlowVZEROResults.cxx:119
 AliFlowVZEROResults.cxx:120
 AliFlowVZEROResults.cxx:121
 AliFlowVZEROResults.cxx:122
 AliFlowVZEROResults.cxx:123
 AliFlowVZEROResults.cxx:124
 AliFlowVZEROResults.cxx:125
 AliFlowVZEROResults.cxx:126
 AliFlowVZEROResults.cxx:127
 AliFlowVZEROResults.cxx:128
 AliFlowVZEROResults.cxx:129
 AliFlowVZEROResults.cxx:130
 AliFlowVZEROResults.cxx:131
 AliFlowVZEROResults.cxx:132
 AliFlowVZEROResults.cxx:133
 AliFlowVZEROResults.cxx:134
 AliFlowVZEROResults.cxx:135
 AliFlowVZEROResults.cxx:136
 AliFlowVZEROResults.cxx:137
 AliFlowVZEROResults.cxx:138
 AliFlowVZEROResults.cxx:139
 AliFlowVZEROResults.cxx:140
 AliFlowVZEROResults.cxx:141
 AliFlowVZEROResults.cxx:142
 AliFlowVZEROResults.cxx:143
 AliFlowVZEROResults.cxx:144
 AliFlowVZEROResults.cxx:145
 AliFlowVZEROResults.cxx:146
 AliFlowVZEROResults.cxx:147
 AliFlowVZEROResults.cxx:148
 AliFlowVZEROResults.cxx:149
 AliFlowVZEROResults.cxx:150
 AliFlowVZEROResults.cxx:151
 AliFlowVZEROResults.cxx:152
 AliFlowVZEROResults.cxx:153
 AliFlowVZEROResults.cxx:154
 AliFlowVZEROResults.cxx:155
 AliFlowVZEROResults.cxx:156
 AliFlowVZEROResults.cxx:157
 AliFlowVZEROResults.cxx:158
 AliFlowVZEROResults.cxx:159
 AliFlowVZEROResults.cxx:160
 AliFlowVZEROResults.cxx:161
 AliFlowVZEROResults.cxx:162
 AliFlowVZEROResults.cxx:163
 AliFlowVZEROResults.cxx:164
 AliFlowVZEROResults.cxx:165
 AliFlowVZEROResults.cxx:166
 AliFlowVZEROResults.cxx:167
 AliFlowVZEROResults.cxx:168
 AliFlowVZEROResults.cxx:169
 AliFlowVZEROResults.cxx:170
 AliFlowVZEROResults.cxx:171
 AliFlowVZEROResults.cxx:172
 AliFlowVZEROResults.cxx:173
 AliFlowVZEROResults.cxx:174
 AliFlowVZEROResults.cxx:175
 AliFlowVZEROResults.cxx:176
 AliFlowVZEROResults.cxx:177
 AliFlowVZEROResults.cxx:178
 AliFlowVZEROResults.cxx:179
 AliFlowVZEROResults.cxx:180
 AliFlowVZEROResults.cxx:181
 AliFlowVZEROResults.cxx:182
 AliFlowVZEROResults.cxx:183
 AliFlowVZEROResults.cxx:184
 AliFlowVZEROResults.cxx:185
 AliFlowVZEROResults.cxx:186
 AliFlowVZEROResults.cxx:187
 AliFlowVZEROResults.cxx:188
 AliFlowVZEROResults.cxx:189
 AliFlowVZEROResults.cxx:190
 AliFlowVZEROResults.cxx:191
 AliFlowVZEROResults.cxx:192
 AliFlowVZEROResults.cxx:193
 AliFlowVZEROResults.cxx:194
 AliFlowVZEROResults.cxx:195
 AliFlowVZEROResults.cxx:196
 AliFlowVZEROResults.cxx:197
 AliFlowVZEROResults.cxx:198
 AliFlowVZEROResults.cxx:199
 AliFlowVZEROResults.cxx:200
 AliFlowVZEROResults.cxx:201
 AliFlowVZEROResults.cxx:202
 AliFlowVZEROResults.cxx:203
 AliFlowVZEROResults.cxx:204
 AliFlowVZEROResults.cxx:205
 AliFlowVZEROResults.cxx:206
 AliFlowVZEROResults.cxx:207
 AliFlowVZEROResults.cxx:208
 AliFlowVZEROResults.cxx:209
 AliFlowVZEROResults.cxx:210
 AliFlowVZEROResults.cxx:211
 AliFlowVZEROResults.cxx:212
 AliFlowVZEROResults.cxx:213
 AliFlowVZEROResults.cxx:214
 AliFlowVZEROResults.cxx:215
 AliFlowVZEROResults.cxx:216
 AliFlowVZEROResults.cxx:217
 AliFlowVZEROResults.cxx:218
 AliFlowVZEROResults.cxx:219
 AliFlowVZEROResults.cxx:220
 AliFlowVZEROResults.cxx:221
 AliFlowVZEROResults.cxx:222
 AliFlowVZEROResults.cxx:223
 AliFlowVZEROResults.cxx:224
 AliFlowVZEROResults.cxx:225
 AliFlowVZEROResults.cxx:226
 AliFlowVZEROResults.cxx:227
 AliFlowVZEROResults.cxx:228
 AliFlowVZEROResults.cxx:229
 AliFlowVZEROResults.cxx:230
 AliFlowVZEROResults.cxx:231
 AliFlowVZEROResults.cxx:232
 AliFlowVZEROResults.cxx:233
 AliFlowVZEROResults.cxx:234
 AliFlowVZEROResults.cxx:235
 AliFlowVZEROResults.cxx:236
 AliFlowVZEROResults.cxx:237
 AliFlowVZEROResults.cxx:238
 AliFlowVZEROResults.cxx:239
 AliFlowVZEROResults.cxx:240
 AliFlowVZEROResults.cxx:241
 AliFlowVZEROResults.cxx:242
 AliFlowVZEROResults.cxx:243
 AliFlowVZEROResults.cxx:244
 AliFlowVZEROResults.cxx:245
 AliFlowVZEROResults.cxx:246
 AliFlowVZEROResults.cxx:247
 AliFlowVZEROResults.cxx:248
 AliFlowVZEROResults.cxx:249
 AliFlowVZEROResults.cxx:250
 AliFlowVZEROResults.cxx:251
 AliFlowVZEROResults.cxx:252
 AliFlowVZEROResults.cxx:253
 AliFlowVZEROResults.cxx:254
 AliFlowVZEROResults.cxx:255
 AliFlowVZEROResults.cxx:256
 AliFlowVZEROResults.cxx:257
 AliFlowVZEROResults.cxx:258
 AliFlowVZEROResults.cxx:259
 AliFlowVZEROResults.cxx:260
 AliFlowVZEROResults.cxx:261
 AliFlowVZEROResults.cxx:262
 AliFlowVZEROResults.cxx:263
 AliFlowVZEROResults.cxx:264
 AliFlowVZEROResults.cxx:265
 AliFlowVZEROResults.cxx:266
 AliFlowVZEROResults.cxx:267
 AliFlowVZEROResults.cxx:268
 AliFlowVZEROResults.cxx:269
 AliFlowVZEROResults.cxx:270
 AliFlowVZEROResults.cxx:271
 AliFlowVZEROResults.cxx:272
 AliFlowVZEROResults.cxx:273
 AliFlowVZEROResults.cxx:274
 AliFlowVZEROResults.cxx:275
 AliFlowVZEROResults.cxx:276
 AliFlowVZEROResults.cxx:277
 AliFlowVZEROResults.cxx:278
 AliFlowVZEROResults.cxx:279
 AliFlowVZEROResults.cxx:280
 AliFlowVZEROResults.cxx:281
 AliFlowVZEROResults.cxx:282
 AliFlowVZEROResults.cxx:283
 AliFlowVZEROResults.cxx:284
 AliFlowVZEROResults.cxx:285
 AliFlowVZEROResults.cxx:286
 AliFlowVZEROResults.cxx:287
 AliFlowVZEROResults.cxx:288
 AliFlowVZEROResults.cxx:289
 AliFlowVZEROResults.cxx:290
 AliFlowVZEROResults.cxx:291
 AliFlowVZEROResults.cxx:292
 AliFlowVZEROResults.cxx:293
 AliFlowVZEROResults.cxx:294
 AliFlowVZEROResults.cxx:295
 AliFlowVZEROResults.cxx:296
 AliFlowVZEROResults.cxx:297
 AliFlowVZEROResults.cxx:298
 AliFlowVZEROResults.cxx:299
 AliFlowVZEROResults.cxx:300
 AliFlowVZEROResults.cxx:301
 AliFlowVZEROResults.cxx:302
 AliFlowVZEROResults.cxx:303
 AliFlowVZEROResults.cxx:304
 AliFlowVZEROResults.cxx:305
 AliFlowVZEROResults.cxx:306
 AliFlowVZEROResults.cxx:307
 AliFlowVZEROResults.cxx:308
 AliFlowVZEROResults.cxx:309
 AliFlowVZEROResults.cxx:310
 AliFlowVZEROResults.cxx:311
 AliFlowVZEROResults.cxx:312
 AliFlowVZEROResults.cxx:313
 AliFlowVZEROResults.cxx:314
 AliFlowVZEROResults.cxx:315
 AliFlowVZEROResults.cxx:316
 AliFlowVZEROResults.cxx:317
 AliFlowVZEROResults.cxx:318
 AliFlowVZEROResults.cxx:319
 AliFlowVZEROResults.cxx:320
 AliFlowVZEROResults.cxx:321
 AliFlowVZEROResults.cxx:322
 AliFlowVZEROResults.cxx:323
 AliFlowVZEROResults.cxx:324
 AliFlowVZEROResults.cxx:325
 AliFlowVZEROResults.cxx:326
 AliFlowVZEROResults.cxx:327
 AliFlowVZEROResults.cxx:328
 AliFlowVZEROResults.cxx:329
 AliFlowVZEROResults.cxx:330
 AliFlowVZEROResults.cxx:331
 AliFlowVZEROResults.cxx:332
 AliFlowVZEROResults.cxx:333
 AliFlowVZEROResults.cxx:334
 AliFlowVZEROResults.cxx:335
 AliFlowVZEROResults.cxx:336
 AliFlowVZEROResults.cxx:337
 AliFlowVZEROResults.cxx:338
 AliFlowVZEROResults.cxx:339
 AliFlowVZEROResults.cxx:340
 AliFlowVZEROResults.cxx:341
 AliFlowVZEROResults.cxx:342
 AliFlowVZEROResults.cxx:343
 AliFlowVZEROResults.cxx:344
 AliFlowVZEROResults.cxx:345
 AliFlowVZEROResults.cxx:346
 AliFlowVZEROResults.cxx:347
 AliFlowVZEROResults.cxx:348
 AliFlowVZEROResults.cxx:349
 AliFlowVZEROResults.cxx:350
 AliFlowVZEROResults.cxx:351
 AliFlowVZEROResults.cxx:352
 AliFlowVZEROResults.cxx:353
 AliFlowVZEROResults.cxx:354
 AliFlowVZEROResults.cxx:355
 AliFlowVZEROResults.cxx:356
 AliFlowVZEROResults.cxx:357
 AliFlowVZEROResults.cxx:358
 AliFlowVZEROResults.cxx:359
 AliFlowVZEROResults.cxx:360
 AliFlowVZEROResults.cxx:361
 AliFlowVZEROResults.cxx:362
 AliFlowVZEROResults.cxx:363
 AliFlowVZEROResults.cxx:364
 AliFlowVZEROResults.cxx:365
 AliFlowVZEROResults.cxx:366
 AliFlowVZEROResults.cxx:367
 AliFlowVZEROResults.cxx:368
 AliFlowVZEROResults.cxx:369
 AliFlowVZEROResults.cxx:370
 AliFlowVZEROResults.cxx:371
 AliFlowVZEROResults.cxx:372
 AliFlowVZEROResults.cxx:373
 AliFlowVZEROResults.cxx:374