ROOT logo
/**************************************************************************
 * Copyright(c) 1998-2007, 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.                  *
 **************************************************************************/

//-------------------------------------------------------------------------
//     Container class for ESD VZERO data
//     Author: Brigitte Cheynis & Cvetan Cheshkov
//-------------------------------------------------------------------------

#include "AliESDVZERO.h"
#include "AliLog.h"

ClassImp(AliESDVZERO)

//__________________________________________________________________________
AliESDVZERO::AliESDVZERO()
  :AliVVZERO(),
   fBBtriggerV0A(0),
   fBGtriggerV0A(0),
   fBBtriggerV0C(0),
   fBGtriggerV0C(0),
   fV0ATime(-1024),
   fV0CTime(-1024),
   fV0ATimeError(0),
   fV0CTimeError(0),
   fV0ADecision(kV0Invalid),
   fV0CDecision(kV0Invalid),
   fTriggerChargeA(0),
   fTriggerChargeC(0),
   fTriggerBits(0)
{   
   // Default constructor 
   for(Int_t j=0; j<64; j++){ 
      fMultiplicity[j] = 0.0;   
      fAdc[j]   = 0.0;   
      fTime[j]  = 0.0; 
      fWidth[j] = 0.0; 
      fBBFlag[j]= kFALSE;
      fBGFlag[j]= kFALSE;  
   }
}

//__________________________________________________________________________
AliESDVZERO::AliESDVZERO(const AliESDVZERO &o)
  :AliVVZERO(o),
   fBBtriggerV0A(o.fBBtriggerV0A),
   fBGtriggerV0A(o.fBGtriggerV0A),
   fBBtriggerV0C(o.fBBtriggerV0C),
   fBGtriggerV0C(o.fBGtriggerV0C),
   fV0ATime(o.fV0ATime),
   fV0CTime(o.fV0CTime),
   fV0ATimeError(o.fV0ATimeError),
   fV0CTimeError(o.fV0CTimeError),
   fV0ADecision(o.fV0ADecision),
   fV0CDecision(o.fV0CDecision),
   fTriggerChargeA(o.fTriggerChargeA),
   fTriggerChargeC(o.fTriggerChargeC),
   fTriggerBits(o.fTriggerBits)
{   
   // Default constructor 
   for(Int_t j=0; j<64; j++) {
       fMultiplicity[j] = o.fMultiplicity[j];
       fAdc[j]    = o.fAdc[j];
       fTime[j]   = o.fTime[j];
       fWidth[j]  = o.fWidth[j];
       fBBFlag[j] = o.fBBFlag[j];
       fBGFlag[j] = o.fBGFlag[j];
   }
}

//__________________________________________________________________________
AliESDVZERO::AliESDVZERO(UInt_t BBtriggerV0A, UInt_t BGtriggerV0A,
	      UInt_t BBtriggerV0C, UInt_t BGtriggerV0C,
	      Float_t *Multiplicity, Float_t *Adc, 
	      Float_t *Time, Float_t *Width, Bool_t *BBFlag, Bool_t *BGFlag)
  :AliVVZERO(),
   fBBtriggerV0A(BBtriggerV0A),
   fBGtriggerV0A(BGtriggerV0A),
   fBBtriggerV0C(BBtriggerV0C),
   fBGtriggerV0C(BGtriggerV0C),
   fV0ATime(-1024),
   fV0CTime(-1024),
   fV0ATimeError(0),
   fV0CTimeError(0),
   fV0ADecision(kV0Invalid),
   fV0CDecision(kV0Invalid),
   fTriggerChargeA(0),
   fTriggerChargeC(0),
   fTriggerBits(0)
{
   // Constructor
   for(Int_t j=0; j<64; j++) {
       fMultiplicity[j] = Multiplicity[j];
       fAdc[j]    = Adc[j];
       fTime[j]   = Time[j];
       fWidth[j]  = Width[j];
       fBBFlag[j] = BBFlag[j];
       fBGFlag[j] = BGFlag[j];
   }
}

//__________________________________________________________________________
AliESDVZERO& AliESDVZERO::operator=(const AliESDVZERO& o)
{

  if(this==&o) return *this;
  AliVVZERO::operator=(o);
  // Assignment operator
  fBBtriggerV0A=o.fBBtriggerV0A;
  fBGtriggerV0A=o.fBGtriggerV0A;
  fBBtriggerV0C=o.fBBtriggerV0C;
  fBGtriggerV0C=o.fBGtriggerV0C;

  fV0ATime = o.fV0ATime;
  fV0CTime = o.fV0CTime;
  fV0ATimeError = o.fV0ATimeError;
  fV0CTimeError = o.fV0CTimeError;
  fV0ADecision = o.fV0ADecision;
  fV0CDecision = o.fV0CDecision;
  fTriggerChargeA = o.fTriggerChargeA;
  fTriggerChargeC = o.fTriggerChargeC;
  fTriggerBits = o.fTriggerBits;

   for(Int_t j=0; j<64; j++) {
       fMultiplicity[j] = o.fMultiplicity[j];
       fAdc[j]    = o.fAdc[j];
       fTime[j]   = o.fTime[j];
       fWidth[j]  = o.fWidth[j];
       fBBFlag[j] = o.fBBFlag[j];
       fBGFlag[j] = o.fBGFlag[j];
   }
  return *this;
}

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

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

}

//__________________________________________________________________________
Short_t AliESDVZERO::GetNbPMV0A() const
{
  // Returns the number of
  // fired PM in V0A
  Short_t n=0;
  for(Int_t i=32;i<64;i++) 
    if (fMultiplicity[i]>0) n++;
  return n;
}

//__________________________________________________________________________
Short_t AliESDVZERO::GetNbPMV0C() const
{
  // Returns the number of
  // fired PM in V0C
  Short_t n=0;
  for(Int_t i=0;i<32;i++) 
    if (fMultiplicity[i]>0) n++;
  return n;
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetMTotV0A() const
{
  // returns total multiplicity
  // in V0A
  Float_t mul=0.0;
  for(Int_t i=32;i<64;i++) 
    mul+=  fMultiplicity[i];
  return mul;
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetMTotV0C() const
{
  // returns total multiplicity
  // in V0C
  Float_t mul=0.0;
  for(Int_t i=0;i<32;i++) 
    mul+=  fMultiplicity[i];
  return mul;
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetMRingV0A(Int_t ring) const
{ 
  // returns multiplicity in a
  // given ring of V0A
  if (OutOfRange(ring, "AliESDVZERO:::GetMRingV0A",4)) return -1;
  Float_t mul =0.0;

  if (ring == 0) for(Int_t i=32;i<40;i++) mul +=  fMultiplicity[i];
  if (ring == 1) for(Int_t i=40;i<48;i++) mul +=  fMultiplicity[i];
  if (ring == 2) for(Int_t i=48;i<56;i++) mul +=  fMultiplicity[i];
  if (ring == 3) for(Int_t i=56;i<64;i++) mul +=  fMultiplicity[i];
  return mul ;
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetMRingV0C(Int_t ring) const
{ 
  // returns multiplicity in a
  // given ring of V0C
  if (OutOfRange(ring, "AliESDVZERO:::GetMRingV0C",4)) return -1;
  Float_t mul =0.0;

  if (ring == 0) for(Int_t i=0;i<8;i++)   mul +=  fMultiplicity[i];
  if (ring == 1) for(Int_t i=8;i<16;i++)  mul +=  fMultiplicity[i];
  if (ring == 2) for(Int_t i=16;i<24;i++) mul +=  fMultiplicity[i];
  if (ring == 3) for(Int_t i=24;i<32;i++) mul +=  fMultiplicity[i];
  return mul ;
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetMultiplicity(Int_t i) const

{
  // returns multiplicity in a
  // given cell of V0
  if (OutOfRange(i, "AliESDVZERO::GetMultiplicity:",64)) return -1;
  return fMultiplicity[i];
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetMultiplicityV0A(Int_t i) const

{
  // returns multiplicity in a
  // given cell of V0A
  if (OutOfRange(i, "AliESDVZERO::GetMultiplicityV0A:",32)) return -1;
  return fMultiplicity[32+i];
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetMultiplicityV0C(Int_t i) const

{
  // returns multiplicity in a
  // given cell of V0C
  if (OutOfRange(i, "AliESDVZERO::GetMultiplicityV0C:",32)) return -1;
  return fMultiplicity[i];
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetAdc(Int_t i) const

{
  // returns ADC charge in a
  // given cell of V0
  if (OutOfRange(i, "AliESDVZERO::GetAdc:",64)) return -1;
  return fAdc[i];
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetAdcV0A(Int_t i) const

{
  // returns ADC charge in a
  // given cell of V0A
  if (OutOfRange(i, "AliESDVZERO::GetAdcV0A:",32)) return -1;
  return fAdc[32+i];
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetAdcV0C(Int_t i) const

{
  // returns ADC charge in a
  // given cell of V0C
  if (OutOfRange(i, "AliESDVZERO::GetAdcV0C:",32)) return -1;
  return fAdc[i];
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetTime(Int_t i) const

{
  // returns leading time measured by TDC
  // in a given cell of V0
  if (OutOfRange(i, "AliESDVZERO::GetTime:",64)) return -1;
  return fTime[i];
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetTimeV0A(Int_t i) const

{
  // returns leading time measured by TDC
  // in a given cell of V0A
  if (OutOfRange(i, "AliESDVZERO::GetTimeV0A:",32)) return -1;
  return fTime[32+i];
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetTimeV0C(Int_t i) const

{
  // returns leading time measured by TDC
  // in a given cell of V0C
  if (OutOfRange(i, "AliESDVZERO::GetTimeV0C:",32)) return -1;
  return fTime[i];
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetWidth(Int_t i) const

{
  // returns time signal width
  // in a given cell of V0
  if (OutOfRange(i, "AliESDVZERO::GetWidth:",64)) return -1;
  return fWidth[i];
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetWidthV0A(Int_t i) const

{
  // returns time signal width
  // in a given cell of V0A
  if (OutOfRange(i, "AliESDVZERO::GetWidthV0A:",32)) return -1;
  return fWidth[32+i];
}

//__________________________________________________________________________
Float_t AliESDVZERO::GetWidthV0C(Int_t i) const

{
  // returns time signal width
  // in a given cell of V0C
  if (OutOfRange(i, "AliESDVZERO::GetWidthV0C:",32)) return -1;
  return fWidth[i];
}

//__________________________________________________________________________
Bool_t AliESDVZERO::BBTriggerV0A(Int_t i) const
{
  // returns offline beam-beam flags in V0A
  // one bit per cell
  if (OutOfRange(i, "AliESDVZERO:::BBTriggerV0A",32)) return kFALSE;
  UInt_t test = 1;
  return ( fBBtriggerV0A & (test << i) ? kTRUE : kFALSE );
}

//__________________________________________________________________________
Bool_t AliESDVZERO::BGTriggerV0A(Int_t i) const
{
  // returns offline beam-gas flags in V0A
  // one bit per cell
  if (OutOfRange(i, "AliESDVZERO:::BGTriggerV0A",32)) return kFALSE;
  UInt_t test = 1;
  return ( fBGtriggerV0A & (test << i) ? kTRUE : kFALSE );
}

//__________________________________________________________________________
Bool_t AliESDVZERO::BBTriggerV0C(Int_t i) const
{
  // returns offline beam-beam flags in V0C
  // one bit per cell
  if (OutOfRange(i, "AliESDVZERO:::BBTriggerV0C",32)) return kFALSE;
  UInt_t test = 1;
  return ( fBBtriggerV0C & (test << i) ? kTRUE : kFALSE );
}

//__________________________________________________________________________
Bool_t AliESDVZERO::BGTriggerV0C(Int_t i) const
{
  // returns offline beam-gasflags in V0C
  // one bit per cell
  if (OutOfRange(i, "AliESDVZERO:::BGTriggerV0C",32)) return kFALSE;
  UInt_t test = 1;
  return ( fBGtriggerV0C & (test << i) ? kTRUE : kFALSE );
}

//__________________________________________________________________________
Bool_t AliESDVZERO::GetBBFlag(Int_t i) const

{
  // returns online beam-beam flag in V0
  // one boolean per cell
  if (OutOfRange(i, "AliESDVZERO::GetBBFlag:",64)) return kFALSE;
  return fBBFlag[i];
}

//__________________________________________________________________________
Bool_t AliESDVZERO::GetBGFlag(Int_t i) const

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