Coverity fixes
[u/mrichter/AliRoot.git] / PWGGA / GammaConv / AliAnalysisTaskdPhi.cxx
CommitLineData
3b77b2d1 1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Authors: Svein Lindal *
5 * Version 1.0 *
6 * *
7 * *
8 * Permission to use, copy, modify and distribute this software and its *
9 * documentation strictly for non-commercial purposes is hereby granted *
10 * without fee, provided that the above copyright notice appears in all *
11 * copies and that both the copyright notice and this permission notice *
12 * appear in the supporting documentation. The authors make no claims *
13 * about the suitability of this software for any purpose. It is *
14 * provided "as is" without express or implied warranty. *
15 **************************************************************************/
16
17////////////////////////////////////////////////
18//---------------------------------------------
19// Class doing conversion gamma dPhi correlations
20// Gamma Conversion analysis
21//---------------------------------------------
22////////////////////////////////////////////////
23
24#include "AliAnalysisTaskdPhi.h"
25
26#include <TH2I.h>
27#include <TList.h>
28#include <TChain.h>
29
30#include <AliAnalysisManager.h>
31#include <AliInputEventHandler.h>
32#include <AliESDInputHandler.h>
33#include <AliAODInputHandler.h>
34#include <AliAnalysisFilter.h>
35
36#include "AliConversionCuts.h"
37#include "AliAODConversionPhoton.h"
38#include "AliAODConversionMother.h"
39#include "AliAnaConvCorrPhoton.h"
40#include "AliAnaConvCorrPion.h"
41#include "AliAnaConvIsolation.h"
42// Author Svein Lindal <slindal@fys.uio.no>
43using namespace std;
44
45ClassImp(AliAnalysisTaskdPhi)
46
47
48//________________________________________________________________________
49AliAnalysisTaskdPhi::AliAnalysisTaskdPhi(const char *name) : AliAnalysisTaskSE(name),
50 fHistograms(NULL),
51 fHistoGamma(NULL),
52 fHistoPion(NULL),
53 fDielV0TrackFilter(NULL),
54 fDielV0Filter(NULL),
55 fDielPi0Filter(NULL),
56 fDielTrackFilter(NULL),
57 fV0Filter(NULL),
58 fGammas(NULL),
59 fPions(NULL),
60 hMETracks(NULL),
61 hMEPhotons(NULL),
62 hMEPions(NULL),
63 hMEvents(NULL),
64 fPhotonCorr(NULL),
65 fPionCorr(NULL),
66 fIsoAna(NULL),
67 fL1(-1),
68 fL2(-1),
69 fDeltaAODBranchName("AliAODGammaConversion_gamma"),
3bff49c3 70 fAxistPt(),
71 fAxiscPt(),
3b77b2d1 72 fAxisEta(),
73 fAxisPhi(),
74 fAxisCent(),
75 fAxisZ(),
76 fAxisPiM()
77{
78 //constructor
3bff49c3 79 fAxistPt.SetNameTitle("tPtAxis", "tPt");
80 fAxistPt.Set(20, 0, 100);
3b77b2d1 81
3bff49c3 82 fAxiscPt.SetNameTitle("cPtAxis", "cPt");
83 fAxiscPt.Set(20, 0, 100);
3b77b2d1 84
3b77b2d1 85 fAxisEta.SetNameTitle("EtaAxis", "Eta");
86 fAxisEta.Set(160, -0.8, 0.8);
3bff49c3 87
3b77b2d1 88 fAxisPhi.SetNameTitle("PhiAxis", "Phi");
89 fAxisPhi.Set(128, 0, TMath::TwoPi());
3bff49c3 90
3b77b2d1 91 fAxisZ.SetNameTitle("ZAxis", "Z");
92 fAxisZ.Set(4, -10, 10);
93 fAxisCent.SetNameTitle("CentAxis", "Cent");
94
95 Double_t centbins[5] = {0, 10, 30, 60, 100.1};
96 fAxisCent.Set(4, centbins);
97
3b77b2d1 98 Double_t mbins[7] = {0.1, 0.11, 0.12, 0.15, 0.16, 0.18, 0.2};
99 fAxisPiM.SetNameTitle("InvMassPi0", "Invariant mass");
100 fAxisPiM.Set(6, mbins);
101
102 fGammas = new TObjArray();
103 fGammas->SetOwner(kFALSE);
104
105 fPions = new TObjArray();
106 fPions->SetOwner(kFALSE);
107
108 // Define input and output slots here
109 DefineInput(0, TChain::Class());
110 DefineInput(1, TClonesArray::Class());
111 DefineOutput(1, TList::Class());
112 DefineOutput(2, TList::Class());
113 DefineOutput(3, TList::Class());
114}
115
116
117
118//________________________________________________________________________
119AliAnalysisTaskdPhi::~AliAnalysisTaskdPhi(){
120 //destructor
121 if(fPions)
122 delete fPions;
123 fPions = NULL;
124
125 if(fGammas)
126 delete fGammas;
127 fGammas = NULL;
128
129 if(fIsoAna)
130 delete fIsoAna;
131 fIsoAna = NULL;
132
133 if(fV0Filter)
134 delete fV0Filter;
135 fV0Filter = NULL;
136
137 if(fHistograms)
138 delete fHistograms;
139 fHistograms = NULL;
140
141if(fHistoPion)
142 delete fHistoPion;
143 fHistoPion = NULL;
144
145 if(fHistoGamma)
146 delete fHistoGamma;
147 fHistoGamma = NULL;
148
149}
150
151///________________________________________________________________________
152void AliAnalysisTaskdPhi::SetUpCorrObjects() {
153 ///Creat corr obj
154 fIsoAna = new AliAnaConvIsolation();
155
156
157 fPhotonCorr = new TObjArray();
158 fPionCorr = new TObjArray();
159
160 TList * hPhoton = new TList();
161 hPhoton->SetName("hPhotonCorr");
162 hPhoton->SetOwner(kTRUE);
163 fHistoGamma->Add(hPhoton);
164
165 TList * hPion = new TList();
166 hPion->SetName("hPionCorr");
167 hPion->SetOwner(kTRUE);
168 fHistoPion->Add(hPion);
169
170
171 for(Int_t iz = 0; iz < fAxisZ.GetNbins(); iz++) {
172 TObjArray * photonArray = new TObjArray();
173 photonArray->SetOwner(kTRUE);
174 fPhotonCorr->AddAt(photonArray, iz);
175
176 TObjArray * pionArray = new TObjArray();
177 pionArray->SetOwner(kTRUE);
178 fPionCorr->AddAt(pionArray, iz);
179
180 TList * photonList = new TList();
181 photonList->SetName(Form("photon_%d", iz));
182 photonList->SetOwner(kTRUE);
183 hPhoton->AddAt(photonList, iz);
184
185 TList * pionList = new TList();
186 pionList->SetName(Form("pion_%d", iz));
187 pionList->SetOwner(kTRUE);
188 hPion->AddAt(pionList, iz);
189
190 for(Int_t ic = 0; ic < fAxisCent.GetNbins(); ic++) {
191
192 TString nameString = Form("%d_%d", iz, ic);
193 TString titleString = Form("%f < Z < %f ... %f cent %f",
194 fAxisZ.GetBinLowEdge(iz+1), fAxisZ.GetBinUpEdge(iz+1),
195 fAxisCent.GetBinLowEdge(ic+1), fAxisCent.GetBinUpEdge(ic+1));
196
197
198
199 AliAnaConvCorrPhoton * photonCorr = new AliAnaConvCorrPhoton(Form("PhotonCorr_%s", nameString.Data()), Form("photon %s", titleString.Data()));
200 photonArray->AddAt(photonCorr, ic);
3bff49c3 201 photonCorr->GetAxistPt().Set(fAxistPt.GetNbins(), fAxistPt.GetXbins()->GetArray());
202 photonCorr->GetAxiscPt().Set(fAxiscPt.GetNbins(), fAxiscPt.GetXbins()->GetArray());
3b77b2d1 203 photonCorr->CreateHistograms();
204 photonList->Add(photonCorr->GetHistograms());
205
206 AliAnaConvCorrPion * pionCorr = new AliAnaConvCorrPion(Form("PionCorr_%s", nameString.Data()), Form("pion %s", titleString.Data()));
207 pionArray->AddAt(pionCorr, ic);
3bff49c3 208 pionCorr->GetAxistPt().Set(fAxistPt.GetNbins(), fAxistPt.GetXbins()->GetArray());
209 pionCorr->GetAxiscPt().Set(fAxiscPt.GetNbins(), fAxiscPt.GetXbins()->GetArray());
3b77b2d1 210 pionCorr->GetAxisM().Set(fAxisPiM.GetNbins(), fAxisPiM.GetXbins()->GetArray());
211 pionCorr->CreateHistograms();
212 pionList->Add(pionCorr->GetHistograms());
213 }
214 }
215}
216
217//________________________________________________________________________
218void AliAnalysisTaskdPhi::UserCreateOutputObjects() {
219 // Create histograms
220
221 fHistograms = new TList();
222 fHistograms->SetName("dPhi_histograms");
223 fHistograms->SetOwner(kTRUE);
224
225 fHistoGamma = new TList();
226 fHistoGamma->SetName("Gamma_histo");
227 fHistoGamma->SetOwner(kTRUE);
228
229 fHistoPion = new TList();
230 fHistoPion->SetName("Pion_histo");
231 fHistoPion->SetOwner(kTRUE);
232
233
234 if(fV0Filter) {
235 fV0Filter->InitCutHistograms();
236 fHistograms->Add(fV0Filter->GetCutHistograms());
237 }
238
239
240 SetUpCorrObjects();
241
242
243 ///Set up ME histograms
244 TList * MEHistograms = new TList();
245 MEHistograms->SetName("MEHistograms");
246 MEHistograms->SetOwner(kTRUE);
247 fHistograms->Add(MEHistograms);
248
249 hMETracks = new TObjArray();
250 hMETracks->SetName("TrackArray");
251 hMETracks->SetOwner(kTRUE);
252 hMEPhotons = new TObjArray();
253 hMEPhotons->SetName("PhotonArray");
254 hMEPhotons->SetOwner(kTRUE);
255 hMEPions = new TObjArray();
256 hMEPions->SetName("PionArray");
257 hMEPions->SetOwner(kTRUE);
258
259 MEHistograms->Add(hMETracks);
260 MEHistograms->Add(hMEPions);
261 MEHistograms->Add(hMEPhotons);
262
263 hMEvents = new TH2I("hMEvents", "Nevents vs centrality vertexz",
264 fAxisZ.GetNbins(), fAxisZ.GetBinLowEdge(1), fAxisZ.GetBinUpEdge(fAxisZ.GetNbins()),
265 fAxisCent.GetNbins(), fAxisCent.GetBinLowEdge(1), fAxisCent.GetBinUpEdge(fAxisCent.GetNbins()));
266 hMEvents->GetYaxis()->Set(fAxisCent.GetNbins(), fAxisCent.GetXbins()->GetArray());
267 MEHistograms->Add(hMEvents);
268
269
270 TList axesList;
271 axesList.AddAt(&GetAxisEta(), 0);
272 axesList.AddAt(&GetAxisPhi(), 1);
3bff49c3 273 axesList.AddAt(&GetAxistPt(), 2);
3b77b2d1 274 axesList.SetOwner(kFALSE);
275
276 TList piAxesList;
277 piAxesList.AddAt(&GetAxisEta(), 0);
278 piAxesList.AddAt(&GetAxisPhi(), 1);
3bff49c3 279 piAxesList.AddAt(&GetAxistPt(), 2);
3b77b2d1 280 piAxesList.AddAt(&GetAxisPiMass(), 3);
281 piAxesList.SetOwner(kFALSE);
282
283
284 TList * outAxesList = new TList();
285 outAxesList->Add(&fAxisCent);
286 outAxesList->Add(&fAxisZ);
287
3bff49c3 288 // for(Int_t iz = 0; iz < fAxisZ.GetNbins(); iz++) {
289 // TObjArray * trackArray = new TObjArray();
290 // trackArray->SetName(Form("METracks_%d", iz));
291 // trackArray->SetOwner(kTRUE);
292 // TObjArray * photonArray = new TObjArray();
293 // photonArray->SetName(Form("MEPhotons_%d", iz));
294 // photonArray->SetOwner(kTRUE);
295 // TObjArray * pionArray = new TObjArray();
296 // pionArray->SetName(Form("MEPions_%d", iz));
297 // pionArray->SetOwner(kTRUE);
3b77b2d1 298
299
3bff49c3 300 // hMEPions->AddAt(pionArray, iz);
301 // hMETracks->AddAt(trackArray, iz);
302 // hMEPhotons->AddAt(photonArray, iz);
3b77b2d1 303
3bff49c3 304 // for(Int_t ic = 0; ic < fAxisCent.GetNbins(); ic++) {
3b77b2d1 305
3bff49c3 306 // TString nameString = Form("%d_%d", iz, ic);
307 // TString titleString = Form("%f < Z < %f ... %f cent %f",
308 // fAxisZ.GetBinLowEdge(iz+1), fAxisZ.GetBinUpEdge(iz+1),
309 // fAxisCent.GetBinLowEdge(ic+1), fAxisCent.GetBinUpEdge(ic+1));
3b77b2d1 310
311
3bff49c3 312 // THnSparseF * trackHistogram = CreateSparse(Form("tracks_%s", nameString.Data()),
313 // Form("tracks %s", titleString.Data()), &axesList );
314 // trackArray->AddAt(trackHistogram, ic);
3b77b2d1 315
3bff49c3 316 // THnSparseF * photonHistogram = CreateSparse(Form("photons_%s", nameString.Data()),
317 // Form("photons %s", titleString.Data()), &axesList );
318 // photonArray->AddAt(photonHistogram, ic);
3b77b2d1 319
3bff49c3 320 // THnSparseF * pionHistogram = CreateSparse(Form("pions_%s", nameString.Data()),
321 // Form("pions %s", titleString.Data()), &piAxesList );
322 // pionArray->AddAt(pionHistogram, ic);
323 // }
324 // }
3b77b2d1 325
326 PostData(1, fHistograms);
327 PostData(2, fHistoGamma);
328 PostData(3, fHistoPion);
329
330}
331
332///________________________________________________________________________
333THnSparseF * AliAnalysisTaskdPhi::CreateSparse(TString nameString, TString titleString, TList * axesList) {
334 ///Creat sparse
335 const Int_t dim = axesList->GetSize();
336
337 TAxis * axes[dim];
338 Int_t bins[dim];
339 Double_t min[dim];
340 Double_t max[dim];
341
342 for(Int_t i = 0; i<dim; i++) {
343 TAxis * axis = dynamic_cast<TAxis*>(axesList->At(i));
344 if(axis) {
345 axes[i] = axis;
346 } else {
347 cout << "AliAnalysisTaskdPhi::CreateSparse: Error error, all the axes are not present in axis list" << endl;
348 return NULL;
349 }
350 }
351
352 for(Int_t i = 0; i<dim; i++) {
353 bins[i] = axes[i]->GetNbins();
354 min[i] = axes[i]->GetBinLowEdge(1);
355 max[i] = axes[i]->GetBinUpEdge(axes[i]->GetNbins());
356 }
357
358 THnSparseF * sparse = new THnSparseF(Form("METracks_%s", nameString.Data()),
359 Form("tracks %s", titleString.Data()),
360 dim, bins, min, max);
361
362 for(Int_t i = 0; i<dim; i++) {
363 sparse->GetAxis(i)->SetNameTitle(axes[i]->GetName(), axes[i]->GetTitle() );
364 if(axes[i]->GetXbins()->GetSize() > 0) {
365 sparse->SetBinEdges(i, axes[i]->GetXbins()->GetArray() );
366 }
367 }
368
369 return sparse;
370}
371
372//________________________________________________________________________
373void AliAnalysisTaskdPhi::UserExec(Option_t *) {
374 ///User exec.
375
376 //if(! fV0Filter->EventIsSelected(fInputEvent)) return;
377
378
379 AliAnalysisManager *man=AliAnalysisManager::GetAnalysisManager();
380 Bool_t isAOD=man->GetInputEventHandler()->IsA()==AliAODInputHandler::Class();
381
382 AliInputEventHandler* inputHandler = (AliInputEventHandler*) (man->GetInputEventHandler());
383 if (!inputHandler) {
384 cout << "cout no input event handler"<<endl;
385 return;
386 }
387
388
389 if ( fV0Filter && !fV0Filter->GetPIDResponse() ) {
390 if ( inputHandler->GetPIDResponse() ){
391 fV0Filter->SetPIDResponse( inputHandler->GetPIDResponse() );
392 } else {
393
394 //AOD case
395 if (isAOD){
396 if (!fV0Filter->GetPIDResponse()){
397 fV0Filter->InitAODpidUtil(1);
398 }
399 }
400 }
401 }
402
403 Double_t centrality = 0.0;
404 Double_t eventPlane = 0.0;
405 Double_t vertexz = fInputEvent->GetPrimaryVertex()->GetZ();
406 if(isAOD) {
407 AliAODHeader * header = static_cast<AliAODHeader*>(fInputEvent->GetHeader());
408 centrality = header->GetCentrality();
409 eventPlane = header->GetEventplane();
410 } else {
411 centrality = static_cast<AliESDEvent*>(fInputEvent)->GetCentrality()->GetCentralityPercentile("kV0M");
412 eventPlane = fInputEvent->GetEventplane()->GetEventplane("Q");
413 }
414
3bff49c3 415 if(DebugLevel () > 4) {
3b77b2d1 416 cout << "centrality: " << centrality << " " << GetBin(fAxisCent, centrality) << endl;
417 cout << "vertexz: " << vertexz << " " << GetBin(fAxisZ, vertexz) << endl;
418 cout << "eventPlane: " << eventPlane << " " << endl;
419 }
420
421 const Int_t centBin = GetBin(fAxisCent, centrality);
422 const Int_t vertexBin = GetBin(fAxisZ, vertexz);
423
424 if(centBin < 0 || vertexBin < 0) {
425 AliError("bin out of range");
3bff49c3 426 cout << "bad bin"<<endl;
3b77b2d1 427 return;
428 }
429
430 fGammas->Clear();
431 fPions->Clear();
432
433 TClonesArray * aodGammas = GetConversionGammas(isAOD);
434 if(!aodGammas) {
435 AliError("no aod gammas found!");
436 return;
437 }
438
439 if(aodGammas->GetEntriesFast() > 0) {
440 if( static_cast<AliAODConversionParticle*>(aodGammas->At(0))->GetLabel(0) == fL1 &&
441 static_cast<AliAODConversionParticle*>(aodGammas->At(0))->GetLabel(1) == fL2
442 ) {
443 return;
444 }
445 fL1 = static_cast<AliAODConversionParticle*>(aodGammas->At(0))->GetLabel(0);
446 fL2 = static_cast<AliAODConversionParticle*>(aodGammas->At(0))->GetLabel(1);
447 //cout << aodGammas->GetEntriesFast() << " " << fInputEvent->GetNumberOfTracks() << "c" << endl;
448 }
449
450 if(DebugLevel() > 1) printf("Number of conversion gammas %d \n", aodGammas->GetEntriesFast());
451 for(Int_t ig = 0; ig < aodGammas->GetEntriesFast(); ig++) {
452 AliAODConversionPhoton * photon = dynamic_cast<AliAODConversionPhoton*>(aodGammas->At(ig));
453
454 if(!photon) continue;
455 if(!fV0Filter || fV0Filter->PhotonIsSelected(static_cast<AliConversionPhotonBase*>(photon), fInputEvent)) {
456 fGammas->Add(static_cast<TObject*>(photon));
457 }
458 }
459
460 if(DebugLevel() > 4) printf("Number of accepted gammas %d \n", fGammas->GetEntriesFast());
461
3bff49c3 462 // THnSparseF * trackMehist = GetMEHistogram(vertexBin, centBin, hMETracks);
463 // hMEvents->Fill(vertexz, centrality);
3b77b2d1 464
465 ///Add tracks to array
466 TObjArray tracks;
467 for(Int_t iTrack = 0; iTrack < fInputEvent->GetNumberOfTracks(); iTrack++) {
468
469 AliVTrack * track = static_cast<AliVTrack*>(fInputEvent->GetTrack(iTrack));
470 if(track->Pt() < 0.5) continue;
471 if(TMath::Abs(track->Eta()) > 0.8) continue;
472 tracks.Add(track);
3b77b2d1 473 }
474
475 Process(fGammas, &tracks, vertexBin, centBin);
476
477 PostData(1, fHistograms);
478 PostData(2, fHistoGamma);
479 PostData(3, fHistoPion);
480
481}
482
483
484//________________________________________________________________________
485void AliAnalysisTaskdPhi::Process(TObjArray * gammas, TObjArray * tracks, Int_t vertexBin, Int_t centBin) {
486 ///Process stuff
487
488 if(DebugLevel() > 4) printf("Number of accepted tracks %d \n", tracks->GetEntriesFast());
489
3b77b2d1 490 AliAnaConvCorrBase * gCorr = GetCorrObject(vertexBin, centBin, fPhotonCorr);
491 AliAnaConvCorrBase * piCorr = GetCorrObject(vertexBin, centBin, fPionCorr);
492
493 if(!gCorr || !piCorr) {
494 AliError("corr object missing");
495 return;
496 }
497
3b77b2d1 498 for(Int_t i1 = 0; i1 < gammas->GetEntriesFast(); i1++) {
499 AliAODConversionPhoton * ph1 = static_cast<AliAODConversionPhoton*>(gammas->UncheckedAt(i1));
500 Int_t tIDs[4] = {ph1->GetLabel(0), ph1->GetLabel(1), -1, -1};
501
3bff49c3 502 Int_t leading = fIsoAna->IsLeading(static_cast<AliAODConversionParticle*>(ph1), tracks, tIDs);
503 gCorr->CorrelateWithTracks( static_cast<AliAODConversionParticle*>(ph1), tracks, tIDs, leading);
3b77b2d1 504
3b77b2d1 505 for(Int_t i2 = 0; i2 < i1; i2++) {
506 AliAODConversionPhoton * ph2 = static_cast<AliAODConversionPhoton*>(gammas->UncheckedAt(i2));
3bff49c3 507
3b77b2d1 508 if( ph2->GetTrackLabelPositive()==ph1->GetTrackLabelPositive()
509 || ph2->GetTrackLabelNegative()==ph1->GetTrackLabelNegative()
510 || ph2->GetTrackLabelNegative()==ph1->GetTrackLabelPositive()
511 || ph2->GetTrackLabelPositive()==ph1->GetTrackLabelNegative()) {
512 continue;
513 }
514
515 AliAODConversionMother * pion = new AliAODConversionMother(ph1, ph2);
516 pion->SetLabels(i1, i2);
3bff49c3 517
3b77b2d1 518 if(!fV0Filter || fV0Filter->MesonIsSelected(pion, kTRUE) ) {
3bff49c3 519 Int_t leadingpi = fIsoAna->IsLeading(static_cast<AliAODConversionParticle*>(pion), tracks, tIDs);
520 tIDs[2] = ph2->GetLabel(0);
521 tIDs[3] = ph2->GetLabel(1);
522 piCorr->CorrelateWithTracks(pion, tracks, tIDs, leadingpi);
3b77b2d1 523 }
524 }
525 }
526}
527
528
529//________________________________________________________________________
530void AliAnalysisTaskdPhi::Terminate(Option_t *) {
531
532 // Draw result to the screen
533 // Called once at the end of the query
534}
535
536//________________________________________________________________________
537TClonesArray * AliAnalysisTaskdPhi::GetConversionGammas(Bool_t isAOD) {
538
539
540 if(isAOD) {
541
542 TClonesArray * gammas = dynamic_cast<TClonesArray*>(fInputEvent->FindListObject(fDeltaAODBranchName.Data()));
543 if(gammas) {
544 return gammas;
545 }
546 //If not found try to locate branch
547 FindDeltaAODBranchName(AODEvent());
548 //gammas = dynamic_cast<TClonesArray*>(fInputEvent->FindListObject(fDeltaAODBranchName.Data()));
549 //return gammas;
550
551 gammas = dynamic_cast<TClonesArray*>(AODEvent()->FindListObject(fDeltaAODBranchName.Data()));
552 return gammas;
553
554 } else {
555 TClonesArray * gammas = dynamic_cast<TClonesArray*>(GetInputData(1));
556 return gammas;
557 }
558
559}
560
561//________________________________________________________________________
562void AliAnalysisTaskdPhi::FindDeltaAODBranchName(AliAODEvent * event){
563 ///Find aod branch
564 TList *list=event->GetList();
565 for(Int_t ii=0;ii<list->GetEntries();ii++){
566 TString name((list->At(ii))->GetName());
567 if(name.BeginsWith("GammaConv")&&name.EndsWith("gamma")){
568 fDeltaAODBranchName=name;
569 AliInfo(Form("Set DeltaAOD BranchName to: %s",fDeltaAODBranchName.Data()));
570 return;
571 }
572 }
573}
574
575