ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/


//-------------------------------------------------------------------------
//                      Implementation of   Class AliESDZDC
//   This is a class that summarizes the ZDC data
//   for the ESD   
//   Origin: Christian Klein-Boesing, CERN, Christian.Klein-Boesing@cern.ch 
//-------------------------------------------------------------------------

#include <TMath.h>

#include "AliESDZDC.h"

ClassImp(AliESDZDC)

//______________________________________________________________________________
AliESDZDC::AliESDZDC() :
  AliVZDC(),
  fZDCN1Energy(0),
  fZDCP1Energy(0),
  fZDCN2Energy(0),
  fZDCP2Energy(0),
  fZDCEMEnergy(0),
  fZDCEMEnergy1(0),
  fZDCParticipants(0),
  fZDCPartSideA(0),
  fZDCPartSideC(0),
  fImpactParameter(0),
  fImpactParamSideA(0),
  fImpactParamSideC(0),
  fESDQuality(0),
  fZNCTDChit(kFALSE),
  fZNATDChit(kFALSE),
  fZPCTDChit(kFALSE),
  fZPATDChit(kFALSE),
  fZEM1TDChit(kFALSE),
  fZEM2TDChit(kFALSE)

{
  for(Int_t i=0; i<5; i++){
    fZN1TowerEnergy[i] = fZN2TowerEnergy[i] = 0.;
    fZP1TowerEnergy[i] = fZP2TowerEnergy[i] = 0.;
    fZN1TowerEnergyLR[i] = fZN2TowerEnergyLR[i] = 0.;
    fZP1TowerEnergyLR[i] = fZP2TowerEnergyLR[i] = 0.;
  }
  for(Int_t i=0; i<2; i++){
    fZNACentrCoord[i] = fZNCCentrCoord[i] = 0.;
  }
  for(Int_t i=0; i<32; i++){
    fVMEScaler[i]=0;
    for(Int_t y=0; y<4; y++){
      fZDCTDCData[i][y]=0;
      fZDCTDCCorrected[i][y]=0.;
    }
  }
}

//______________________________________________________________________________
AliESDZDC::AliESDZDC(const AliESDZDC& zdc) :
  AliVZDC(zdc),
  fZDCN1Energy(zdc.fZDCN1Energy),
  fZDCP1Energy(zdc.fZDCP1Energy),
  fZDCN2Energy(zdc.fZDCN2Energy),
  fZDCP2Energy(zdc.fZDCP2Energy),
  fZDCEMEnergy(zdc.fZDCEMEnergy),
  fZDCEMEnergy1(zdc.fZDCEMEnergy1),
  fZDCParticipants(zdc.fZDCParticipants),
  fZDCPartSideA(zdc.fZDCPartSideA),
  fZDCPartSideC(zdc.fZDCPartSideC),
  fImpactParameter(zdc.fImpactParameter),
  fImpactParamSideA(zdc.fImpactParamSideA),
  fImpactParamSideC(zdc.fImpactParamSideC),
  fESDQuality(zdc.fESDQuality),
  fZNCTDChit(zdc.fZNCTDChit),
  fZNATDChit(zdc.fZNATDChit),
  fZPCTDChit(zdc.fZPCTDChit),
  fZPATDChit(zdc.fZPATDChit),
  fZEM1TDChit(zdc.fZEM1TDChit),
  fZEM2TDChit(zdc.fZEM2TDChit)

{
  // copy constructor
  for(Int_t i=0; i<5; i++){
     fZN1TowerEnergy[i] = zdc.fZN1TowerEnergy[i];
     fZN2TowerEnergy[i] = zdc.fZN2TowerEnergy[i];
     fZP1TowerEnergy[i] = zdc.fZP1TowerEnergy[i];
     fZP2TowerEnergy[i] = zdc.fZP2TowerEnergy[i];
     fZN1TowerEnergyLR[i] = zdc.fZN1TowerEnergyLR[i];
     fZN2TowerEnergyLR[i] = zdc.fZN2TowerEnergyLR[i];
     fZP1TowerEnergyLR[i] = zdc.fZP1TowerEnergyLR[i];
     fZP2TowerEnergyLR[i] = zdc.fZP2TowerEnergyLR[i];
  }
  for(Int_t i=0; i<2; i++){
    fZNACentrCoord[i] = zdc.fZNACentrCoord[i];
    fZNCCentrCoord[i] = zdc.fZNCCentrCoord[i];
  }
  for(Int_t i=0; i<32; i++){
    fVMEScaler[i] = zdc.fVMEScaler[i];
    for(Int_t y=0; y<4; y++){
       fZDCTDCData[i][y] = zdc.fZDCTDCData[i][y];
       fZDCTDCCorrected[i][y] = zdc.fZDCTDCCorrected[i][y];
    }
  }
}

//______________________________________________________________________________
AliESDZDC& AliESDZDC::operator=(const AliESDZDC&zdc)
{
  // assigment operator
  if(this!=&zdc) {
    AliVZDC::operator=(zdc);
    fZDCN1Energy = zdc.fZDCN1Energy;
    fZDCP1Energy = zdc.fZDCP1Energy;
    fZDCN2Energy = zdc.fZDCN2Energy;
    fZDCP2Energy = zdc.fZDCP2Energy;
    fZDCEMEnergy = zdc.fZDCEMEnergy;
    fZDCEMEnergy1 = zdc.fZDCEMEnergy1;
    for(Int_t i=0; i<5; i++){
       fZN1TowerEnergy[i] = zdc.fZN1TowerEnergy[i];
       fZN2TowerEnergy[i] = zdc.fZN2TowerEnergy[i];
       fZP1TowerEnergy[i] = zdc.fZP1TowerEnergy[i];
       fZP2TowerEnergy[i] = zdc.fZP2TowerEnergy[i];
       fZN1TowerEnergyLR[i] = zdc.fZN1TowerEnergyLR[i];
       fZN2TowerEnergyLR[i] = zdc.fZN2TowerEnergyLR[i];
       fZP1TowerEnergyLR[i] = zdc.fZP1TowerEnergyLR[i];
       fZP2TowerEnergyLR[i] = zdc.fZP2TowerEnergyLR[i];
    }
    //
    fZDCParticipants = zdc.fZDCParticipants;
    fZDCPartSideA = zdc.fZDCPartSideA;
    fZDCPartSideC = zdc.fZDCPartSideC;
    fImpactParameter = zdc.fImpactParameter;
    fImpactParamSideA = zdc.fImpactParamSideA;
    fImpactParamSideC = zdc.fImpactParamSideC;
    //
    for(Int_t i=0; i<2; i++){
         fZNACentrCoord[i] = zdc.fZNACentrCoord[i];
         fZNCCentrCoord[i] = zdc.fZNCCentrCoord[i];
    }
    //
    fESDQuality = zdc.fESDQuality;
    for(Int_t i=0; i<32; i++){
      fVMEScaler[i] = zdc.fVMEScaler[i];
      for(Int_t y=0; y<4; y++){ 
         fZDCTDCData[i][y] = zdc.fZDCTDCData[i][y];
         fZDCTDCCorrected[i][y] = zdc.fZDCTDCCorrected[i][y];
      }
    }
  } 
  fZNCTDChit = zdc.fZNCTDChit;
  fZNATDChit = zdc.fZNATDChit;
  fZPCTDChit = zdc.fZPCTDChit;
  fZPATDChit = zdc.fZPATDChit;
  fZEM1TDChit = zdc.fZEM1TDChit;
  fZEM2TDChit = zdc.fZEM2TDChit;
 
  return *this;
}

//______________________________________________________________________________
void AliESDZDC::Copy(TObject &obj) const {
  
  // this overwrites the virtual TOBject::Copy()
  // to allow run time copying without casting
  // in AliESDEvent

  if(this==&obj)return;
  AliESDZDC *robj = dynamic_cast<AliESDZDC*>(&obj);
  if(!robj)return; // not an AliESDZDC
  *robj = *this;

}


//______________________________________________________________________________
void AliESDZDC::Reset()
{
  // reset all data members
  fZDCN1Energy=0;
  fZDCP1Energy=0;
  fZDCN2Energy=0;
  fZDCP2Energy=0;
  fZDCEMEnergy=0;
  fZDCEMEnergy1=0;
  for(Int_t i=0; i<5; i++){
    fZN1TowerEnergy[i] = fZN2TowerEnergy[i] = 0.;
    fZP1TowerEnergy[i] = fZP2TowerEnergy[i] = 0.;
    fZN1TowerEnergyLR[i] = fZN2TowerEnergyLR[i] = 0.;
    fZP1TowerEnergyLR[i] = fZP2TowerEnergyLR[i] = 0.;
  }
  fZDCParticipants=0;  
  fZDCPartSideA=0;  
  fZDCPartSideC=0;  
  fImpactParameter=0;
  fImpactParamSideA=0;
  fImpactParamSideC=0;
  for(Int_t i=0; i<2; i++){
       fZNACentrCoord[i] = fZNCCentrCoord[i] = 0.;
  }
  fESDQuality=0;
  for(Int_t i=0; i<32; i++){
     fVMEScaler[i] = 0;
     for(Int_t y=0; y<4; y++){
        fZDCTDCData[i][y] = 0;
        fZDCTDCCorrected[i][y] = 0.;
     }
  }
  fZNCTDChit = kFALSE;
  fZNATDChit = kFALSE;
  fZPCTDChit = kFALSE;
  fZPATDChit = kFALSE;
  fZEM1TDChit = kFALSE;
  fZEM2TDChit = kFALSE;

}

//______________________________________________________________________________
void AliESDZDC::Print(const Option_t *) const
{
  //  Print ESD for the ZDC
  printf(" ### ZDC energies: \n");
  printf("\n \t E_ZNC = %1.2f (%1.2f+%1.2f+%1.2f+%1.2f+%1.2f) GeV \n \t E_ZNA = %1.2f (%1.2f+%1.2f+%1.2f+%1.2f+%1.2f) GeV\n"
  " \t E_ZPC = %1.2f GeV E_ZPA = %1.2f GeV"
  "\n E_ZEM1 = %1.2f GeV,   E_ZEM2 = %1.2f GeV\n \t Npart = %d, b = %1.2f fm\n",
  fZDCN1Energy, fZN1TowerEnergy[0], fZN1TowerEnergy[1], 
  fZN1TowerEnergy[2], fZN1TowerEnergy[3], fZN1TowerEnergy[4], 
  fZDCN2Energy,fZN2TowerEnergy[0], fZN2TowerEnergy[1], 
  fZN2TowerEnergy[2], fZN2TowerEnergy[3], fZN2TowerEnergy[4], 
  fZDCP1Energy,fZDCP2Energy, fZDCEMEnergy, fZDCEMEnergy1, 
  fZDCParticipants,fImpactParameter);
  //
  /*printf(" ### VMEScaler (!=0): \n");
  for(Int_t i=0; i<32; i++) if(fVMEScaler[i]!=0) printf("\t %d \n",fVMEScaler[i]);
  printf("\n");
  //
  printf(" ### TDCData (!=0): \n");
  for(Int_t i=0; i<32; i++){
    for(Int_t j=0; j<4; j++)
      if(TMath::Abs(fZDCTDCCorrected[i][j])>1e-4) printf("\t %1.0f \n",fZDCTDCCorrected[i][j]);
  }*/
  printf("\n");
}

//______________________________________________________________________________
Bool_t AliESDZDC::GetZNCentroidInPbPb(Float_t beamEne, Double_t centrZNC[2], Double_t centrZNA[2]) 
{
  // Provide coordinates of centroid over ZN (side C) front face
  if(beamEne==0){
    printf(" ZDC centroid in PbPb can't be calculated with E_beam = 0 !!!\n");
    for(Int_t jj=0; jj<2; jj++) fZNCCentrCoord[jj] = 999.;
    return kFALSE;
  }

  const Float_t x[4] = {-1.75, 1.75, -1.75, 1.75};
  const Float_t y[4] = {-1.75, -1.75, 1.75, 1.75};
  const Float_t alpha=0.395;
  Float_t numXZNC=0., numYZNC=0., denZNC=0., cZNC, wZNC; 
  Float_t numXZNA=0., numYZNA=0., denZNA=0., cZNA, wZNA; 
  //
  for(Int_t i=0; i<4; i++){
    if(fZN1TowerEnergy[i+1]>0.) {
      wZNC = TMath::Power(fZN1TowerEnergy[i+1], alpha);
      numXZNC += x[i]*wZNC;
      numYZNC += y[i]*wZNC;
      denZNC += wZNC;
    }
    if(fZN2TowerEnergy[i+1]>0.) {
      wZNA = TMath::Power(fZN2TowerEnergy[i+1], alpha);
      numXZNA += x[i]*wZNA;
      numYZNA += y[i]*wZNA;
      denZNA += wZNA;
    }
  }
  //
  if(denZNC!=0){
    Float_t nSpecnC = fZDCN1Energy/beamEne;
    cZNC = 1.89358-0.71262/(nSpecnC+0.71789);
    fZNCCentrCoord[0] = cZNC*numXZNC/denZNC;
    fZNCCentrCoord[1] = cZNC*numYZNC/denZNC;
  } 
  else{
    fZNCCentrCoord[0] = fZNCCentrCoord[1] = 999.;
  }
  if(denZNA!=0){
    Float_t nSpecnA = fZDCN2Energy/beamEne;
    cZNA = 1.89358-0.71262/(nSpecnA+0.71789);
    fZNACentrCoord[0] = cZNA*numXZNA/denZNA;
    fZNACentrCoord[1] = cZNA*numYZNA/denZNA;
  } 
  else{
    fZNACentrCoord[0] = fZNACentrCoord[1] = 999.;
  }
  //
  for(Int_t il=0; il<2; il++){
    centrZNC[il] = fZNCCentrCoord[il];
    centrZNA[il] = fZNACentrCoord[il];
  }
  
  return kTRUE;
}

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