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.                  *
 **************************************************************************/


//////////////////////////////////////////////
//    QA task for EMCAL electron analysis   //
//  Author: Deepa Thomas, Shingo Sakai      //
//////////////////////////////////////////////

#include "TChain.h"
#include "TTree.h"
#include "TH1F.h"
#include "TCanvas.h"
#include "THnSparse.h"

#include "AliAnalysisTask.h"
#include "AliAnalysisManager.h"

#include "AliESDEvent.h"
#include "AliESDInputHandler.h"
#include "AliESDtrackCuts.h"
#include "AliAODEvent.h"
#include "AliAODHandler.h"

#include "AliPID.h"
#include "AliESDpid.h"
#include "AliAODPid.h"
#include "AliPIDResponse.h"
#include "AliHFEcontainer.h"
#include "AliHFEcuts.h"
#include "AliHFEpid.h"
#include "AliHFEpidBase.h"
#include "AliHFEpidQAmanager.h"
#include "AliHFEtools.h"
#include "AliCFContainer.h"
#include "AliCFManager.h"

#include "AliAnalysisTaskHFEemcQA.h"

using std::cout;
using std::endl;

ClassImp(AliAnalysisTaskHFEemcQA)
  //________________________________________________________________________
  AliAnalysisTaskHFEemcQA::AliAnalysisTaskHFEemcQA(const char *name) 
: AliAnalysisTaskSE(name),
  fVevent(0),
  fESD(0),
  fAOD(0),
  fpidResponse(0),
  fFlagSparse(kFALSE),
  fUseTender(kTRUE),
  fTracks_tender(0),
  fCaloClusters_tender(0),
  fOutputList(0),
  fNevents(0),
  fVtxZ(0),
  fVtxX(0),
  fVtxY(0),
  fTrigMulti(0),
  fHistClustE(0),
  fEMCClsEtaPhi(0),
  fHistoNCls(0),
  fHistoNClsE1(0),
  fHistoNClsE2(0),
  fHistoNClsE3(0),
  fHistoNCells(0),
  fHistoCalCell(0),
  fHistoCalTime(0),
  fHistoCalCellTime(0),
  fNegTrkIDPt(0),
  fTrkPt(0),
  fTrketa(0),
  fTrkphi(0),
  fdEdx(0),
  fTPCNpts(0),
  fTPCnsig(0),
  fHistPtMatch(0),
  fEMCTrkMatch(0),
  fEMCTrkPt(0),
  fEMCTrketa(0),
  fEMCTrkphi(0),
  fEMCdEdx(0),
  fEMCTPCnsig(0),
  fEMCTPCNpts(0),
  fClsEAftMatch(0),
  fHistdEdxEop(0),
  fHistNsigEop(0),
  fHistEop(0),
  fM20(0),
  fM02(0),
  fM20EovP(0),
  fM02EovP(0),
  fEleCanTPCNpts(0),
  fEleCanTPCNCls(0),
  fEleCanITSNCls(0),
  fEleCanITShit(0),
  fEleCanSPD1(0),
  fEleCanSPD2(0),
  fEleCanSPDBoth(0),
  fEleCanSPDOr(0),
  fSparseElectron(0),
  fvalueElectron(0)
{
  // Constructor

  fvalueElectron = new Double_t[6];
  // Define input and output slots here
  // Input slot #0 works with a TChain
  DefineInput(0, TChain::Class());
  // Output slot #0 id reserved by the base class for AOD
  // Output slot #1 writes into a TH1 container
  DefineOutput(1, TList::Class());
}
//________________________________________________________________________
AliAnalysisTaskHFEemcQA::AliAnalysisTaskHFEemcQA() 
  : AliAnalysisTaskSE("DefaultTask_HfeEMCQA"),
  fVevent(0),
  fESD(0),
  fAOD(0),
  fpidResponse(0),
  fFlagSparse(kFALSE),
  fUseTender(kTRUE),
  fTracks_tender(0),
  fCaloClusters_tender(0),
  fOutputList(0),
  fNevents(0),
  fVtxZ(0),
  fVtxX(0),
  fVtxY(0),
  fTrigMulti(0),
  fHistClustE(0),
  fEMCClsEtaPhi(0),
  fHistoNCls(0),
  fHistoNClsE1(0),
  fHistoNClsE2(0),
  fHistoNClsE3(0),
  fHistoNCells(0),
  fHistoCalCell(0),
  fHistoCalTime(0),
  fHistoCalCellTime(0),
  fNegTrkIDPt(0),
  fTrkPt(0),
  fTrketa(0),
  fTrkphi(0),
  fdEdx(0),
  fTPCNpts(0),
  fTPCnsig(0),
  fHistPtMatch(0),
  fEMCTrkMatch(0),
  fEMCTrkPt(0),
  fEMCTrketa(0),
  fEMCTrkphi(0),
  fEMCdEdx(0),
  fEMCTPCnsig(0),
  fEMCTPCNpts(0),
  fClsEAftMatch(0),
  fHistdEdxEop(0),
  fHistNsigEop(0),
  fHistEop(0),
  fM20(0),
  fM02(0),
  fM20EovP(0),
  fM02EovP(0),
  fEleCanTPCNpts(0),
  fEleCanTPCNCls(0),
  fEleCanITSNCls(0),
  fEleCanITShit(0),
  fEleCanSPD1(0),
  fEleCanSPD2(0),
  fEleCanSPDBoth(0),
  fEleCanSPDOr(0),
  fSparseElectron(0),
  fvalueElectron(0)
{
  //Default constructor

  fvalueElectron = new Double_t[6];
  // Define input and output slots here
  // Input slot #0 works with a TChain
  DefineInput(0, TChain::Class());
  // Output slot #0 id reserved by the base class for AOD
  // Output slot #1 writes into a TH1 container
  // DefineOutput(1, TH1I::Class());
  DefineOutput(1, TList::Class());
  //DefineOutput(3, TTree::Class());
}
//________________________________________________________________________
AliAnalysisTaskHFEemcQA::~AliAnalysisTaskHFEemcQA()
{
  //Destructor 
  delete fOutputList;
  delete fTracks_tender;
  delete fCaloClusters_tender;
  delete fSparseElectron;
  delete []fvalueElectron;
}
//________________________________________________________________________
void AliAnalysisTaskHFEemcQA::UserCreateOutputObjects()
{
  // Create histograms
  // Called once
  AliDebug(3, "Creating Output Objects");

  /////////////////////////////////////////////////
  //Automatic determination of the analysis mode//
  ////////////////////////////////////////////////
  AliVEventHandler *inputHandler = dynamic_cast<AliVEventHandler *>(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler());
  if(!TString(inputHandler->IsA()->GetName()).CompareTo("AliAODInputHandler")){
    SetAODAnalysis();
  } else {
    SetESDAnalysis();
  }
  printf("Analysis Mode: %s Analysis\n", IsAODanalysis() ? "AOD" : "ESD");

  //////////////// 
  //Output list//
  ///////////////
  fOutputList = new TList();
  fOutputList->SetOwner();  

  fNevents = new TH1F("fNevents","No of events",3,-0.5,2.5);
  fOutputList->Add(fNevents);
  fNevents->GetYaxis()->SetTitle("counts");
  fNevents->GetXaxis()->SetBinLabel(1,"All");
  fNevents->GetXaxis()->SetBinLabel(2,"With >2 Trks");
  fNevents->GetXaxis()->SetBinLabel(3,"Vtx_{z}<10cm");

  fVtxZ = new TH1F("fVtxZ","Z vertex position;Vtx_{z};counts",1000,-50,50);
  fOutputList->Add(fVtxZ);

  fVtxY = new TH1F("fVtxY","Y vertex position;Vtx_{y};counts",1000,-50,50);
  fOutputList->Add(fVtxY);

  fVtxX = new TH1F("fVtxX","X vertex position;Vtx_{x};counts",1000,-50,50);
  fOutputList->Add(fVtxX);

  fTrigMulti = new TH2F("fTrigMulti","Multiplicity distribution for different triggers; Trigger type; multiplicity",11,-1,10,2000,0,2000);
  fOutputList->Add(fTrigMulti);

  fHistClustE = new TH1F("fHistClustE", "EMCAL cluster energy distribution; Cluster E;counts", 5000, 0.0, 50.0);
  fOutputList->Add(fHistClustE);

  fEMCClsEtaPhi = new TH2F("fEMCClsEtaPhi","EMCAL cluster #eta and #phi distribution;#eta;#phi",100,-0.9,0.9,200,0,6.3);
  fOutputList->Add(fEMCClsEtaPhi);

  fHistoNCls = new TH1F("fHistoNCls","No of EMCAL cluster in the event;N^{EMC}_{cls};counts",150,0,150);
  fOutputList->Add(fHistoNCls);

  fHistoNClsE1 = new TH1F("fHistoNClsE1","No of EMCAL cluster in the event (E>0.1 GeV);N^{EMC}_{cls};counts",150,0,150);
  fOutputList->Add(fHistoNClsE1);

  fHistoNClsE2 = new TH1F("fHistoNClsE2","No of EMCAL cluster in the event (E>0.2 GeV);N^{EMC}_{cls};counts",150,0,150);
  fOutputList->Add(fHistoNClsE2);

  fHistoNClsE3 = new TH1F("fHistoNClsE3","No of EMCAL cluster in the event (E>0.5 GeV);N^{EMC}_{cls};counts",150,0,150);
  fOutputList->Add(fHistoNClsE3);

  //fHistoNCells = new TH1F("fHistoNCells","No of EMCAL cells in a cluster;N^{EMC}_{cells};counts",30,0,30);
  fHistoNCells = new TH2F("fHistoNCells","No of EMCAL cells in a cluster;Cluster E;N^{EMC}_{cells}",300,0,30,30,0,30);
  fOutputList->Add(fHistoNCells);

  fHistoCalCell = new TH2F("fHistoCalCell","EMCAL cells in a cluster;cell ID;E (GeV)",15000,-0.5,14999.5,600,0,30);
  fOutputList->Add(fHistoCalCell);

  fHistoCalTime = new TH2F("fHistoCalTime","Cluster Time;  p_{T} (GeV/c); Time (s)",300,0,30,1000,1e-8,1e-5);
  fOutputList->Add(fHistoCalTime);

  fHistoCalCellTime = new TH2F("fHistoCalCellTime","Cell Time;  ID; Time (s)",15000,-0.5,14999.5,1000,1e-8,1e-5);
  fOutputList->Add(fHistoCalCellTime);

  fNegTrkIDPt = new TH1F("fNegTrkIDPt", "p_{T} distribution of tracks with negative track id;p_{T} (GeV/c);counts", 500, 0.0, 50.0); 
  fOutputList->Add(fNegTrkIDPt);

  fTrkPt = new TH1F("fTrkPt","p_{T} distribution of all tracks;p_{T} (GeV/c);counts",1000,0,100);
  fOutputList->Add(fTrkPt);

  fTrketa = new TH1F("fTrketa","All Track #eta distribution;#eta;counts",100,-1.5,1.5);
  fOutputList->Add(fTrketa);

  fTrkphi = new TH1F("fTrkphi","All Track #phi distribution;#phi;counts",100,0,6.3);
  fOutputList->Add(fTrkphi);

  fdEdx = new TH2F("fdEdx","All Track dE/dx distribution;p (GeV/c);dE/dx",200,0,20,500,0,160);
  fOutputList->Add(fdEdx);

  fTPCNpts = new TH2F("fTPCNpts","All track TPC Npoints used for dE/dx calculation;p (GeV/c);N points",200,0,20,200,0.,200.);
  fOutputList->Add(fTPCNpts);

  fTPCnsig = new TH2F("fTPCnsig","All Track TPC Nsigma distribution;p (GeV/c);#sigma_{TPC-dE/dx}",1000,0,50,200,-10,10);
  fOutputList->Add(fTPCnsig);

  fHistPtMatch = new TH1F("fHistPtMatch", "p_{T} distribution of tracks matched to EMCAL;p_{T} (GeV/c);counts",1000, 0.0, 100.0);
  fOutputList->Add(fHistPtMatch);                                      

  fEMCTrkMatch = new TH2F("fEMCTrkMatch","Distance of EMCAL cluster to its closest track;#phi;z",100,-0.3,0.3,100,-0.3,0.3);
  fOutputList->Add(fEMCTrkMatch);

  fEMCTrkPt = new TH1F("fEMCTrkPt","p_{T} distribution of tracks with EMCAL cluster;p_{T} (GeV/c);counts",1000,0,100);
  fOutputList->Add(fEMCTrkPt);

  fEMCTrketa = new TH1F("fEMCTrketa","#eta distribution of tracks matched to EMCAL;#eta;counts",100,-1.5,1.5);
  fOutputList->Add(fEMCTrketa);

  fEMCTrkphi = new TH1F("fEMCTrkphi","#phi distribution of tracks matched to EMCAL;#phi;counts",100,0,6.3);
  fOutputList->Add(fEMCTrkphi);

  fEMCdEdx = new TH2F("fEMCdEdx","dE/dx distribution of tracks matched to EMCAL;p (GeV/c);dE/dx",200,0,20,500,0,160);
  fOutputList->Add(fEMCdEdx);

  fEMCTPCnsig = new TH2F("fEMCTPCnsig","TPC Nsigma distribution of tracks matched to EMCAL;p (GeV/c);#sigma_{TPC-dE/dx}",1000,0,50,200,-10,10);
  fOutputList->Add(fEMCTPCnsig);

  fEMCTPCNpts = new TH2F("fEMCTPCNpts","TPC Npoints used for dE/dx for tracks matched to EMCAL;p (GeV/c);N points",200,0,20,200,0.,200.);
  fOutputList->Add(fEMCTPCNpts);

  fClsEAftMatch = new TH1F("fClsEAftMatch", "EMCAL cluster energy distribution after track matching; Cluster E;counts", 500, 0.0, 50.0);
  fOutputList->Add(fClsEAftMatch);

  fHistEop = new TH2F("fHistEop", "E/p distribution;p_{T} (GeV/c);E/p", 200,0,20,60, 0.0, 3.0);
  fOutputList->Add(fHistEop);

  fHistdEdxEop = new TH2F("fHistdEdxEop", "E/p vs dE/dx;E/p;dE/dx", 60, 0.0, 3.0, 500,0,160);
  fOutputList->Add(fHistdEdxEop);

  fHistNsigEop = new TH2F ("fHistNsigEop", "E/p vs TPC nsig",60, 0.0, 3.0, 200, -10,10);
  fOutputList->Add(fHistNsigEop);

  fM20 = new TH2F ("fM20","M20 vs pt distribution",200,0,20,400,0,2);
  fOutputList->Add(fM20);

  fM02 = new TH2F ("fM02","M02 vs pt distribution",200,0,20,400,0,2);
  fOutputList->Add(fM02);

  fM20EovP = new TH2F ("fM20EovP","M20 vs E/p distribution",400,0,3,400,0,2);
  fOutputList->Add(fM20EovP);

  fM02EovP = new TH2F ("fM02EovP","M02 vs E/p distribution",400,0,3,400,0,2);
  fOutputList->Add(fM02EovP);

  fEleCanTPCNpts = new TH2F("fEleCanTPCNpts","TPC Npoints used for dE/dx for electron candidates;p_{T} (GeV/c);N points",200,0,20,200,0,200);
  fOutputList->Add(fEleCanTPCNpts);

  fEleCanTPCNCls = new TH2F("fEleCanTPCNCls","TPC N clusters for electron candidates;p_{T} (GeV/c);N TPC clusters",200,0,20,171,-0.5,170.5);
  fOutputList->Add(fEleCanTPCNCls);

  fEleCanITSNCls = new TH2F("fEleCanITSNCls","ITS N clusters for electron candidates;p_{T} (GeV/c);N ITS clusters",200,0,20,8,-0.5,7.5);
  fOutputList->Add(fEleCanITSNCls);

  fEleCanITShit = new TH1F("fEleCanITShit","ITS hit map;ITS layer;counts",7,-0.5,6.5);
  fOutputList->Add(fEleCanITShit);

  fEleCanSPD1 = new TH2F("fEleCanSPD1","Hit on SPD layer 1;p_{T} (GeV/c);Hit",200,0,20,1,0,1);
  fOutputList->Add(fEleCanSPD1);

  fEleCanSPD2 = new TH2F("fEleCanSPD2","Hit on SPD layer 2;p_{T} (GeV/c);Hit",200,0,20,1,0,1);
  fOutputList->Add(fEleCanSPD2);

  fEleCanSPDBoth = new TH2F("fEleCanSPDBoth","Tracks with hits on both SPD layer;p_{T} (GeV/c);Hit",200,0,20,1,0,1);
  fOutputList->Add(fEleCanSPDBoth);

  fEleCanSPDOr = new TH2F("fEleCanSPDOr","Tracks with hits on both SPD layer;p_{T} (GeV/c);Hit",200,0,20,1,0,1);
  fOutputList->Add(fEleCanSPDOr);

  Int_t bins[6]={8,500,200,400,400,400}; //trigger, pt, TPCnsig, E/p, M20, M02
  Double_t xmin[6]={-0.5,0,-10,0,0,0};
  Double_t xmax[6]={7.5,25,10,2,2,2};
  fSparseElectron = new THnSparseD ("Electron","Electron",6,bins,xmin,xmax);
  fOutputList->Add(fSparseElectron);

  PostData(1,fOutputList);
}

//________________________________________________________________________
void AliAnalysisTaskHFEemcQA::UserExec(Option_t *) 
{
  // Main loop
  // Called for each event
  // Post output data.

  UInt_t evSelMask=((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected();

  fVevent = dynamic_cast<AliVEvent*>(InputEvent());
  if (!fVevent) {
    printf("ERROR: fVEvent not available\n");
    return;
  }

  fESD = dynamic_cast<AliESDEvent*>(InputEvent());
  if (fESD) {
    //   printf("fESD available\n");
    //return;
  }

  //////////////
  //if Tender //
  //////////////
  if(fUseTender){
    //new branches with calibrated tracks and clusters
    if(IsAODanalysis()) fTracks_tender = dynamic_cast<TClonesArray*>(InputEvent()->FindListObject("AODFilterTracks"));
    if(!IsAODanalysis()) fTracks_tender = dynamic_cast<TClonesArray*>(InputEvent()->FindListObject("ESDFilterTracks"));

    fCaloClusters_tender = dynamic_cast<TClonesArray*>(InputEvent()->FindListObject("EmcCaloClusters"));
  }

  ////////////////////
  //cuts initialised//
  ///////////////////
  AliESDtrackCuts* esdTrackCutsH = AliESDtrackCuts::GetStandardITSTPCTrackCuts2011(kFALSE);
  esdTrackCutsH->SetMaxDCAToVertexXY(2.4);
  esdTrackCutsH->SetMaxDCAToVertexZ(3.2);
  esdTrackCutsH->SetDCAToVertex2D(kTRUE);

  fAOD = dynamic_cast<AliAODEvent*>(InputEvent());
  if (fAOD) {
    // printf("fAOD available\n");
    //return;
  }

  ///////////////////
  //PID initialised//
  //////////////////
  fpidResponse = fInputHandler->GetPIDResponse();

  ////////////////
  //Event vertex//
  ///////////////
  Int_t ntracks = -999;
  if(!fUseTender)ntracks = fVevent->GetNumberOfTracks();
  if(fUseTender) ntracks = fTracks_tender->GetEntries();
  if(ntracks < 1) printf("There are %d tracks in this event\n",ntracks);

  fNevents->Fill(0); //all events
  Double_t Zvertex = -100, Xvertex = -100, Yvertex = -100;
  const AliVVertex *pVtx = fVevent->GetPrimaryVertex();
  Double_t NcontV = pVtx->GetNContributors();
  if(NcontV<2)return;
  fNevents->Fill(1); //events with 2 tracks

  Zvertex = pVtx->GetZ();  
  Yvertex = pVtx->GetY();  
  Xvertex = pVtx->GetX();  
  fVtxZ->Fill(Zvertex);
  fVtxX->Fill(Xvertex);
  fVtxY->Fill(Yvertex);

  /////////////////
  //trigger check//
  /////////////////
  TString firedTrigger;
  TString TriggerEG1("EG1");
  TString TriggerEG2("EG2");
  fVevent->GetFiredTriggerClasses();

  Bool_t EG1tr = kFALSE;
  Bool_t EG2tr = kFALSE;

  if(firedTrigger.Contains(TriggerEG1))EG1tr = kTRUE;
  if(firedTrigger.Contains(TriggerEG2))EG2tr = kTRUE;

  Int_t trigger = -1;
  if (fAOD){
    //Double_t multiplicity=fAOD->GetHeader()->GetRefMultiplicity();
    AliAODHeader *header = dynamic_cast<AliAODHeader*>(fAOD->GetHeader());
    if(!header) AliFatal("Not a standard AOD");
    Double_t multiplicity = header->GetRefMultiplicity();

    fTrigMulti->Fill(-0.5, multiplicity);
    if(evSelMask & AliVEvent::kAny) fTrigMulti->Fill(0.5, multiplicity);
    if(evSelMask & AliVEvent::kMB) fTrigMulti->Fill(1.5, multiplicity);
    if(evSelMask & AliVEvent::kINT7) fTrigMulti->Fill(2.5, multiplicity);
    if(evSelMask & AliVEvent::kINT8) fTrigMulti->Fill(3.5, multiplicity);
    if(evSelMask & AliVEvent::kEMC1) fTrigMulti->Fill(4.5, multiplicity);
    if(evSelMask & AliVEvent::kEMC7) fTrigMulti->Fill(5.5, multiplicity);
    if(evSelMask & AliVEvent::kEMC8) fTrigMulti->Fill(6.5, multiplicity);
    if(evSelMask & AliVEvent::kEMCEJE) fTrigMulti->Fill(7.5, multiplicity);
    if(evSelMask & AliVEvent::kEMCEGA) fTrigMulti->Fill(8.5, multiplicity);
    if(evSelMask & AliVEvent::kEMCEGA & EG2tr) fTrigMulti->Fill(9.5, multiplicity);

    if(evSelMask & AliVEvent::kMB) trigger =0;
    if(evSelMask & AliVEvent::kINT7) trigger =1;
    if(evSelMask & AliVEvent::kINT8) trigger =2;
    if(evSelMask & AliVEvent::kEMC1) trigger =3;
    if(evSelMask & AliVEvent::kEMC7) trigger =4;
    if(evSelMask & AliVEvent::kEMC8) trigger =5;
    if(evSelMask & AliVEvent::kEMCEJE) trigger =6;
    if(evSelMask & AliVEvent::kEMCEGA) trigger =7;
  }

  ////////////////////
  //event selection//
  ///////////////////
  if(fabs(Zvertex>10.0))return; 
  fNevents->Fill(2); //events after z vtx cut

  /////////////////////////////
  //EMCAL cluster information//
  ////////////////////////////
  Int_t Nclust = -999;
  if(!fUseTender) Nclust = fVevent->GetNumberOfCaloClusters();
  if(fUseTender) Nclust = fCaloClusters_tender->GetEntries();

  int NclustAll= 0;
  int NclustE1 = 0; //# of clust E>0.1
  int NclustE2 = 0; //# of clust E>0.2
  int NclustE3 = 0; //# of clust E>0.5

  for(Int_t icl=0; icl<Nclust; icl++)
  {
    AliVCluster *clust = 0x0;
    if(!fUseTender) clust = fVevent->GetCaloCluster(icl);
    if(fUseTender) clust = dynamic_cast<AliVCluster*>(fCaloClusters_tender->At(icl));
    if(!clust)  printf("ERROR: Could not receive cluster matched calibrated from track %d\n", icl);

    if(clust && clust->IsEMCAL())
    {
      Double_t clustE = clust->E();
      Float_t  emcx[3]; // cluster pos
      clust->GetPosition(emcx);
      TVector3 clustpos(emcx[0],emcx[1],emcx[2]);
      Double_t emcphi = clustpos.Phi(); 
      Double_t emceta = clustpos.Eta();
      fHistClustE->Fill(clustE);
      fEMCClsEtaPhi->Fill(emceta,emcphi);
      fHistoNCells->Fill(clustE,clust->GetNCells());
      //fHistoNCells->Fill(clust->GetNCells());
    
      double emctof = clust->GetTOF();
      fHistoCalTime->Fill(clustE,emctof);

      NclustAll++;  
      if(clustE>0.1)NclustE1++;
      if(clustE>0.2)NclustE2++;
      if(clustE>0.5)NclustE3++;
    }
  }

  fHistoNCls->Fill(NclustAll);
  fHistoNClsE1->Fill(NclustE1);
  fHistoNClsE2->Fill(NclustE2);
  fHistoNClsE3->Fill(NclustE3);

  // cell information
  AliVCaloCells *fCaloCells = fVevent->GetEMCALCells();

  //Int_t nSACell, iSACell, mclabel;
  Short_t cellAddr, nSACell;
  Int_t  mclabel;
  Short_t iSACell;
  Double_t cellAmp=-1., cellTimeT=-1., efrac=-1.;

  nSACell = fCaloCells->GetNumberOfCells();
  for(iSACell = 0; iSACell < nSACell; iSACell++ ){ 
    Bool_t haveCell = fCaloCells->GetCell(iSACell, cellAddr, cellAmp, cellTimeT , mclabel, efrac);
    //virtual Bool_t   GetCell(Short_t pos, Short_t &cellNumber, Double_t &amplitude, Double_t &time, Int_t &mclabel,    Double_t  &efrac)      
    if(haveCell)
       {
        fHistoCalCell->Fill(cellAddr,cellAmp);
        fHistoCalCellTime->Fill(cellAddr,cellTimeT);
        }
  }

  /////////////////////////////////
  //Look for kink mother for AOD//
  /////////////////////////////////
  Int_t numberofvertices = 100;
  if(fAOD) numberofvertices = fAOD->GetNumberOfVertices();
  Double_t listofmotherkink[numberofvertices];
  Int_t numberofmotherkink = 0;
  if(IsAODanalysis())
  {
    for(Int_t ivertex=0; ivertex < numberofvertices; ivertex++) {
      AliAODVertex *aodvertex = fAOD->GetVertex(ivertex);
      if(!aodvertex) continue;
      if(aodvertex->GetType()==AliAODVertex::kKink) {
        AliAODTrack *mother = (AliAODTrack *) aodvertex->GetParent();
        if(!mother) continue;
        Int_t idmother = mother->GetID();
        listofmotherkink[numberofmotherkink] = idmother;
        numberofmotherkink++;
      }
    }
  } //+++


  ///////////////
  //Track loop///
  ///////////////
  for (Int_t iTracks = 0; iTracks < ntracks; iTracks++) {

    AliVParticle* Vtrack = 0x0;
    if(!fUseTender) Vtrack  = fVevent->GetTrack(iTracks);
    if(fUseTender) Vtrack = dynamic_cast<AliVTrack*>(fTracks_tender->At(iTracks));

    if (!Vtrack) {
      printf("ERROR: Could not receive track %d\n", iTracks);
      continue;
    }
    AliVTrack *track = dynamic_cast<AliVTrack*>(Vtrack);
    AliESDtrack *etrack = dynamic_cast<AliESDtrack*>(Vtrack);
    AliAODTrack *atrack = dynamic_cast<AliAODTrack*>(Vtrack);

    ////////////////////
    //Apply track cuts//
    ////////////////////
    if(fAOD)
      if(!atrack->TestFilterMask(AliAODTrack::kTrkGlobalNoDCA)) continue; //mimimum cuts

    if(fESD)
      if(!esdTrackCutsH->AcceptTrack(etrack))continue;

    //reject kink
    if(IsAODanalysis()){
      Bool_t kinkmotherpass = kTRUE;
      for(Int_t kinkmother = 0; kinkmother < numberofmotherkink; kinkmother++) {
        if(track->GetID() == listofmotherkink[kinkmother]) {
          kinkmotherpass = kFALSE;
          continue;
        }
      }
      if(!kinkmotherpass) continue;
    }
    else{
      if(etrack->GetKinkIndex(0) != 0) continue;
    }

    ////////////////////
    //Track properties//
    ///////////////////
    Double_t dEdx =-999, fTPCnSigma=-999;
    dEdx = track->GetTPCsignal();
    fTPCnSigma = fpidResponse->NumberOfSigmasTPC(track, AliPID::kElectron);

    if(track->GetID()<0) fNegTrkIDPt->Fill(track->Pt());
    fTrkPt->Fill(track->Pt());
    fTrketa->Fill(track->Eta());
    fTrkphi->Fill(track->Phi());
    fdEdx->Fill(track->P(),dEdx);
    fTPCNpts->Fill(track->P(),track->GetTPCsignalN());
    fTPCnsig->Fill(track->P(),fTPCnSigma);

    ///////////////////////////
    //Track matching to EMCAL//
    //////////////////////////
    Int_t EMCalIndex = -1;
    EMCalIndex = track->GetEMCALcluster();
    if(EMCalIndex < 0) continue;
    fHistPtMatch->Fill(track->Pt());

    AliVCluster *clustMatch=0x0;
    if(!fUseTender) clustMatch = (AliVCluster*)fVevent->GetCaloCluster(EMCalIndex);
    if(fUseTender) clustMatch = dynamic_cast<AliVCluster*>(fCaloClusters_tender->At(EMCalIndex));

    if(clustMatch && clustMatch->IsEMCAL())
    {
      /////////////////////////////////////////////
      //Properties of tracks matched to the EMCAL//
      /////////////////////////////////////////////
      fEMCTrkMatch->Fill(clustMatch->GetTrackDx(),clustMatch->GetTrackDz());
      if(TMath::Abs(clustMatch->GetTrackDx())>0.05 || TMath::Abs(clustMatch->GetTrackDz())>0.05) continue;

      fEMCTrkPt->Fill(track->Pt());
      fEMCTrketa->Fill(track->Eta());
      fEMCTrkphi->Fill(track->Phi());
      fEMCdEdx->Fill(track->P(),dEdx);
      fEMCTPCnsig->Fill(track->P(),fTPCnSigma);
      fEMCTPCNpts->Fill(track->P(),track->GetTPCsignalN());

      Double_t clustMatchE = clustMatch->E();
      fClsEAftMatch->Fill(clustMatchE);

      //EMCAL EID info
      Double_t eop = -1.0;
      Double_t m02 = -99999;
      if(track->P()>0)eop = clustMatchE/track->P();
      m02 =clustMatch->GetM02();

      if(track->Pt()>1.0){
        fHistdEdxEop->Fill(eop,dEdx);
        fHistNsigEop->Fill(eop,fTPCnSigma);
        fM20EovP->Fill(eop,clustMatch->GetM20());
        fM02EovP->Fill(eop,clustMatch->GetM02());
      }

      fHistEop->Fill(track->Pt(),eop);
      fM20->Fill(track->Pt(),clustMatch->GetM20());
      fM02->Fill(track->Pt(),clustMatch->GetM02());

      //EID THnsparse
      fvalueElectron[0] = trigger;
      fvalueElectron[1] = track->Pt();
      fvalueElectron[2] = fTPCnSigma;
      fvalueElectron[3] = eop;
      fvalueElectron[4] = clustMatch->GetM20();
      fvalueElectron[5] = clustMatch->GetM02();

      if(fFlagSparse){
        //cout << "filling sparse"<<endl;
        fSparseElectron->Fill(fvalueElectron);
      }

      ////////////////////////////////////////////////
      //Track properties of EMCAL electron cadidates//
      ///////////////////////////////////////////////
      if(fTPCnSigma > -1 && fTPCnSigma < 3 && eop>0.9 && eop<1.2 && m02 > 0.006 && m02 < 0.35){
        fEleCanTPCNpts->Fill(track->Pt(),track->GetTPCsignalN());
        fEleCanTPCNCls->Fill(track->Pt(),track->GetTPCNcls());

        Int_t fITSncls=0;
        for(Int_t l=0;l<6;l++) {
          if(TESTBIT(track->GetITSClusterMap(),l)) {
            fEleCanITShit->Fill(l);
            if(l==0) fEleCanSPD1->Fill(track->Pt(),0.5);
            if(l==1) fEleCanSPD2->Fill(track->Pt(),0.5);
            if(l==0 && l==1) fEleCanSPDBoth->Fill(track->Pt(),0.5);
            if(l==0 || l==1) fEleCanSPDOr->Fill(track->Pt(),0.5);
            fITSncls++;
          }
        }
        fEleCanITSNCls->Fill(track->Pt(),fITSncls++);
      }
    }
  } //track loop 

  PostData(1, fOutputList);
}      
//________________________________________________________________________
void AliAnalysisTaskHFEemcQA::Terminate(Option_t *) 
{
  // Draw result to the screen
  // Called once at the end of the query

  fOutputList = dynamic_cast<TList*> (GetOutputData(1));
  if (!fOutputList) {
    printf("ERROR: Output list not available\n");
    return;
  }

}
 AliAnalysisTaskHFEemcQA.cxx:1
 AliAnalysisTaskHFEemcQA.cxx:2
 AliAnalysisTaskHFEemcQA.cxx:3
 AliAnalysisTaskHFEemcQA.cxx:4
 AliAnalysisTaskHFEemcQA.cxx:5
 AliAnalysisTaskHFEemcQA.cxx:6
 AliAnalysisTaskHFEemcQA.cxx:7
 AliAnalysisTaskHFEemcQA.cxx:8
 AliAnalysisTaskHFEemcQA.cxx:9
 AliAnalysisTaskHFEemcQA.cxx:10
 AliAnalysisTaskHFEemcQA.cxx:11
 AliAnalysisTaskHFEemcQA.cxx:12
 AliAnalysisTaskHFEemcQA.cxx:13
 AliAnalysisTaskHFEemcQA.cxx:14
 AliAnalysisTaskHFEemcQA.cxx:15
 AliAnalysisTaskHFEemcQA.cxx:16
 AliAnalysisTaskHFEemcQA.cxx:17
 AliAnalysisTaskHFEemcQA.cxx:18
 AliAnalysisTaskHFEemcQA.cxx:19
 AliAnalysisTaskHFEemcQA.cxx:20
 AliAnalysisTaskHFEemcQA.cxx:21
 AliAnalysisTaskHFEemcQA.cxx:22
 AliAnalysisTaskHFEemcQA.cxx:23
 AliAnalysisTaskHFEemcQA.cxx:24
 AliAnalysisTaskHFEemcQA.cxx:25
 AliAnalysisTaskHFEemcQA.cxx:26
 AliAnalysisTaskHFEemcQA.cxx:27
 AliAnalysisTaskHFEemcQA.cxx:28
 AliAnalysisTaskHFEemcQA.cxx:29
 AliAnalysisTaskHFEemcQA.cxx:30
 AliAnalysisTaskHFEemcQA.cxx:31
 AliAnalysisTaskHFEemcQA.cxx:32
 AliAnalysisTaskHFEemcQA.cxx:33
 AliAnalysisTaskHFEemcQA.cxx:34
 AliAnalysisTaskHFEemcQA.cxx:35
 AliAnalysisTaskHFEemcQA.cxx:36
 AliAnalysisTaskHFEemcQA.cxx:37
 AliAnalysisTaskHFEemcQA.cxx:38
 AliAnalysisTaskHFEemcQA.cxx:39
 AliAnalysisTaskHFEemcQA.cxx:40
 AliAnalysisTaskHFEemcQA.cxx:41
 AliAnalysisTaskHFEemcQA.cxx:42
 AliAnalysisTaskHFEemcQA.cxx:43
 AliAnalysisTaskHFEemcQA.cxx:44
 AliAnalysisTaskHFEemcQA.cxx:45
 AliAnalysisTaskHFEemcQA.cxx:46
 AliAnalysisTaskHFEemcQA.cxx:47
 AliAnalysisTaskHFEemcQA.cxx:48
 AliAnalysisTaskHFEemcQA.cxx:49
 AliAnalysisTaskHFEemcQA.cxx:50
 AliAnalysisTaskHFEemcQA.cxx:51
 AliAnalysisTaskHFEemcQA.cxx:52
 AliAnalysisTaskHFEemcQA.cxx:53
 AliAnalysisTaskHFEemcQA.cxx:54
 AliAnalysisTaskHFEemcQA.cxx:55
 AliAnalysisTaskHFEemcQA.cxx:56
 AliAnalysisTaskHFEemcQA.cxx:57
 AliAnalysisTaskHFEemcQA.cxx:58
 AliAnalysisTaskHFEemcQA.cxx:59
 AliAnalysisTaskHFEemcQA.cxx:60
 AliAnalysisTaskHFEemcQA.cxx:61
 AliAnalysisTaskHFEemcQA.cxx:62
 AliAnalysisTaskHFEemcQA.cxx:63
 AliAnalysisTaskHFEemcQA.cxx:64
 AliAnalysisTaskHFEemcQA.cxx:65
 AliAnalysisTaskHFEemcQA.cxx:66
 AliAnalysisTaskHFEemcQA.cxx:67
 AliAnalysisTaskHFEemcQA.cxx:68
 AliAnalysisTaskHFEemcQA.cxx:69
 AliAnalysisTaskHFEemcQA.cxx:70
 AliAnalysisTaskHFEemcQA.cxx:71
 AliAnalysisTaskHFEemcQA.cxx:72
 AliAnalysisTaskHFEemcQA.cxx:73
 AliAnalysisTaskHFEemcQA.cxx:74
 AliAnalysisTaskHFEemcQA.cxx:75
 AliAnalysisTaskHFEemcQA.cxx:76
 AliAnalysisTaskHFEemcQA.cxx:77
 AliAnalysisTaskHFEemcQA.cxx:78
 AliAnalysisTaskHFEemcQA.cxx:79
 AliAnalysisTaskHFEemcQA.cxx:80
 AliAnalysisTaskHFEemcQA.cxx:81
 AliAnalysisTaskHFEemcQA.cxx:82
 AliAnalysisTaskHFEemcQA.cxx:83
 AliAnalysisTaskHFEemcQA.cxx:84
 AliAnalysisTaskHFEemcQA.cxx:85
 AliAnalysisTaskHFEemcQA.cxx:86
 AliAnalysisTaskHFEemcQA.cxx:87
 AliAnalysisTaskHFEemcQA.cxx:88
 AliAnalysisTaskHFEemcQA.cxx:89
 AliAnalysisTaskHFEemcQA.cxx:90
 AliAnalysisTaskHFEemcQA.cxx:91
 AliAnalysisTaskHFEemcQA.cxx:92
 AliAnalysisTaskHFEemcQA.cxx:93
 AliAnalysisTaskHFEemcQA.cxx:94
 AliAnalysisTaskHFEemcQA.cxx:95
 AliAnalysisTaskHFEemcQA.cxx:96
 AliAnalysisTaskHFEemcQA.cxx:97
 AliAnalysisTaskHFEemcQA.cxx:98
 AliAnalysisTaskHFEemcQA.cxx:99
 AliAnalysisTaskHFEemcQA.cxx:100
 AliAnalysisTaskHFEemcQA.cxx:101
 AliAnalysisTaskHFEemcQA.cxx:102
 AliAnalysisTaskHFEemcQA.cxx:103
 AliAnalysisTaskHFEemcQA.cxx:104
 AliAnalysisTaskHFEemcQA.cxx:105
 AliAnalysisTaskHFEemcQA.cxx:106
 AliAnalysisTaskHFEemcQA.cxx:107
 AliAnalysisTaskHFEemcQA.cxx:108
 AliAnalysisTaskHFEemcQA.cxx:109
 AliAnalysisTaskHFEemcQA.cxx:110
 AliAnalysisTaskHFEemcQA.cxx:111
 AliAnalysisTaskHFEemcQA.cxx:112
 AliAnalysisTaskHFEemcQA.cxx:113
 AliAnalysisTaskHFEemcQA.cxx:114
 AliAnalysisTaskHFEemcQA.cxx:115
 AliAnalysisTaskHFEemcQA.cxx:116
 AliAnalysisTaskHFEemcQA.cxx:117
 AliAnalysisTaskHFEemcQA.cxx:118
 AliAnalysisTaskHFEemcQA.cxx:119
 AliAnalysisTaskHFEemcQA.cxx:120
 AliAnalysisTaskHFEemcQA.cxx:121
 AliAnalysisTaskHFEemcQA.cxx:122
 AliAnalysisTaskHFEemcQA.cxx:123
 AliAnalysisTaskHFEemcQA.cxx:124
 AliAnalysisTaskHFEemcQA.cxx:125
 AliAnalysisTaskHFEemcQA.cxx:126
 AliAnalysisTaskHFEemcQA.cxx:127
 AliAnalysisTaskHFEemcQA.cxx:128
 AliAnalysisTaskHFEemcQA.cxx:129
 AliAnalysisTaskHFEemcQA.cxx:130
 AliAnalysisTaskHFEemcQA.cxx:131
 AliAnalysisTaskHFEemcQA.cxx:132
 AliAnalysisTaskHFEemcQA.cxx:133
 AliAnalysisTaskHFEemcQA.cxx:134
 AliAnalysisTaskHFEemcQA.cxx:135
 AliAnalysisTaskHFEemcQA.cxx:136
 AliAnalysisTaskHFEemcQA.cxx:137
 AliAnalysisTaskHFEemcQA.cxx:138
 AliAnalysisTaskHFEemcQA.cxx:139
 AliAnalysisTaskHFEemcQA.cxx:140
 AliAnalysisTaskHFEemcQA.cxx:141
 AliAnalysisTaskHFEemcQA.cxx:142
 AliAnalysisTaskHFEemcQA.cxx:143
 AliAnalysisTaskHFEemcQA.cxx:144
 AliAnalysisTaskHFEemcQA.cxx:145
 AliAnalysisTaskHFEemcQA.cxx:146
 AliAnalysisTaskHFEemcQA.cxx:147
 AliAnalysisTaskHFEemcQA.cxx:148
 AliAnalysisTaskHFEemcQA.cxx:149
 AliAnalysisTaskHFEemcQA.cxx:150
 AliAnalysisTaskHFEemcQA.cxx:151
 AliAnalysisTaskHFEemcQA.cxx:152
 AliAnalysisTaskHFEemcQA.cxx:153
 AliAnalysisTaskHFEemcQA.cxx:154
 AliAnalysisTaskHFEemcQA.cxx:155
 AliAnalysisTaskHFEemcQA.cxx:156
 AliAnalysisTaskHFEemcQA.cxx:157
 AliAnalysisTaskHFEemcQA.cxx:158
 AliAnalysisTaskHFEemcQA.cxx:159
 AliAnalysisTaskHFEemcQA.cxx:160
 AliAnalysisTaskHFEemcQA.cxx:161
 AliAnalysisTaskHFEemcQA.cxx:162
 AliAnalysisTaskHFEemcQA.cxx:163
 AliAnalysisTaskHFEemcQA.cxx:164
 AliAnalysisTaskHFEemcQA.cxx:165
 AliAnalysisTaskHFEemcQA.cxx:166
 AliAnalysisTaskHFEemcQA.cxx:167
 AliAnalysisTaskHFEemcQA.cxx:168
 AliAnalysisTaskHFEemcQA.cxx:169
 AliAnalysisTaskHFEemcQA.cxx:170
 AliAnalysisTaskHFEemcQA.cxx:171
 AliAnalysisTaskHFEemcQA.cxx:172
 AliAnalysisTaskHFEemcQA.cxx:173
 AliAnalysisTaskHFEemcQA.cxx:174
 AliAnalysisTaskHFEemcQA.cxx:175
 AliAnalysisTaskHFEemcQA.cxx:176
 AliAnalysisTaskHFEemcQA.cxx:177
 AliAnalysisTaskHFEemcQA.cxx:178
 AliAnalysisTaskHFEemcQA.cxx:179
 AliAnalysisTaskHFEemcQA.cxx:180
 AliAnalysisTaskHFEemcQA.cxx:181
 AliAnalysisTaskHFEemcQA.cxx:182
 AliAnalysisTaskHFEemcQA.cxx:183
 AliAnalysisTaskHFEemcQA.cxx:184
 AliAnalysisTaskHFEemcQA.cxx:185
 AliAnalysisTaskHFEemcQA.cxx:186
 AliAnalysisTaskHFEemcQA.cxx:187
 AliAnalysisTaskHFEemcQA.cxx:188
 AliAnalysisTaskHFEemcQA.cxx:189
 AliAnalysisTaskHFEemcQA.cxx:190
 AliAnalysisTaskHFEemcQA.cxx:191
 AliAnalysisTaskHFEemcQA.cxx:192
 AliAnalysisTaskHFEemcQA.cxx:193
 AliAnalysisTaskHFEemcQA.cxx:194
 AliAnalysisTaskHFEemcQA.cxx:195
 AliAnalysisTaskHFEemcQA.cxx:196
 AliAnalysisTaskHFEemcQA.cxx:197
 AliAnalysisTaskHFEemcQA.cxx:198
 AliAnalysisTaskHFEemcQA.cxx:199
 AliAnalysisTaskHFEemcQA.cxx:200
 AliAnalysisTaskHFEemcQA.cxx:201
 AliAnalysisTaskHFEemcQA.cxx:202
 AliAnalysisTaskHFEemcQA.cxx:203
 AliAnalysisTaskHFEemcQA.cxx:204
 AliAnalysisTaskHFEemcQA.cxx:205
 AliAnalysisTaskHFEemcQA.cxx:206
 AliAnalysisTaskHFEemcQA.cxx:207
 AliAnalysisTaskHFEemcQA.cxx:208
 AliAnalysisTaskHFEemcQA.cxx:209
 AliAnalysisTaskHFEemcQA.cxx:210
 AliAnalysisTaskHFEemcQA.cxx:211
 AliAnalysisTaskHFEemcQA.cxx:212
 AliAnalysisTaskHFEemcQA.cxx:213
 AliAnalysisTaskHFEemcQA.cxx:214
 AliAnalysisTaskHFEemcQA.cxx:215
 AliAnalysisTaskHFEemcQA.cxx:216
 AliAnalysisTaskHFEemcQA.cxx:217
 AliAnalysisTaskHFEemcQA.cxx:218
 AliAnalysisTaskHFEemcQA.cxx:219
 AliAnalysisTaskHFEemcQA.cxx:220
 AliAnalysisTaskHFEemcQA.cxx:221
 AliAnalysisTaskHFEemcQA.cxx:222
 AliAnalysisTaskHFEemcQA.cxx:223
 AliAnalysisTaskHFEemcQA.cxx:224
 AliAnalysisTaskHFEemcQA.cxx:225
 AliAnalysisTaskHFEemcQA.cxx:226
 AliAnalysisTaskHFEemcQA.cxx:227
 AliAnalysisTaskHFEemcQA.cxx:228
 AliAnalysisTaskHFEemcQA.cxx:229
 AliAnalysisTaskHFEemcQA.cxx:230
 AliAnalysisTaskHFEemcQA.cxx:231
 AliAnalysisTaskHFEemcQA.cxx:232
 AliAnalysisTaskHFEemcQA.cxx:233
 AliAnalysisTaskHFEemcQA.cxx:234
 AliAnalysisTaskHFEemcQA.cxx:235
 AliAnalysisTaskHFEemcQA.cxx:236
 AliAnalysisTaskHFEemcQA.cxx:237
 AliAnalysisTaskHFEemcQA.cxx:238
 AliAnalysisTaskHFEemcQA.cxx:239
 AliAnalysisTaskHFEemcQA.cxx:240
 AliAnalysisTaskHFEemcQA.cxx:241
 AliAnalysisTaskHFEemcQA.cxx:242
 AliAnalysisTaskHFEemcQA.cxx:243
 AliAnalysisTaskHFEemcQA.cxx:244
 AliAnalysisTaskHFEemcQA.cxx:245
 AliAnalysisTaskHFEemcQA.cxx:246
 AliAnalysisTaskHFEemcQA.cxx:247
 AliAnalysisTaskHFEemcQA.cxx:248
 AliAnalysisTaskHFEemcQA.cxx:249
 AliAnalysisTaskHFEemcQA.cxx:250
 AliAnalysisTaskHFEemcQA.cxx:251
 AliAnalysisTaskHFEemcQA.cxx:252
 AliAnalysisTaskHFEemcQA.cxx:253
 AliAnalysisTaskHFEemcQA.cxx:254
 AliAnalysisTaskHFEemcQA.cxx:255
 AliAnalysisTaskHFEemcQA.cxx:256
 AliAnalysisTaskHFEemcQA.cxx:257
 AliAnalysisTaskHFEemcQA.cxx:258
 AliAnalysisTaskHFEemcQA.cxx:259
 AliAnalysisTaskHFEemcQA.cxx:260
 AliAnalysisTaskHFEemcQA.cxx:261
 AliAnalysisTaskHFEemcQA.cxx:262
 AliAnalysisTaskHFEemcQA.cxx:263
 AliAnalysisTaskHFEemcQA.cxx:264
 AliAnalysisTaskHFEemcQA.cxx:265
 AliAnalysisTaskHFEemcQA.cxx:266
 AliAnalysisTaskHFEemcQA.cxx:267
 AliAnalysisTaskHFEemcQA.cxx:268
 AliAnalysisTaskHFEemcQA.cxx:269
 AliAnalysisTaskHFEemcQA.cxx:270
 AliAnalysisTaskHFEemcQA.cxx:271
 AliAnalysisTaskHFEemcQA.cxx:272
 AliAnalysisTaskHFEemcQA.cxx:273
 AliAnalysisTaskHFEemcQA.cxx:274
 AliAnalysisTaskHFEemcQA.cxx:275
 AliAnalysisTaskHFEemcQA.cxx:276
 AliAnalysisTaskHFEemcQA.cxx:277
 AliAnalysisTaskHFEemcQA.cxx:278
 AliAnalysisTaskHFEemcQA.cxx:279
 AliAnalysisTaskHFEemcQA.cxx:280
 AliAnalysisTaskHFEemcQA.cxx:281
 AliAnalysisTaskHFEemcQA.cxx:282
 AliAnalysisTaskHFEemcQA.cxx:283
 AliAnalysisTaskHFEemcQA.cxx:284
 AliAnalysisTaskHFEemcQA.cxx:285
 AliAnalysisTaskHFEemcQA.cxx:286
 AliAnalysisTaskHFEemcQA.cxx:287
 AliAnalysisTaskHFEemcQA.cxx:288
 AliAnalysisTaskHFEemcQA.cxx:289
 AliAnalysisTaskHFEemcQA.cxx:290
 AliAnalysisTaskHFEemcQA.cxx:291
 AliAnalysisTaskHFEemcQA.cxx:292
 AliAnalysisTaskHFEemcQA.cxx:293
 AliAnalysisTaskHFEemcQA.cxx:294
 AliAnalysisTaskHFEemcQA.cxx:295
 AliAnalysisTaskHFEemcQA.cxx:296
 AliAnalysisTaskHFEemcQA.cxx:297
 AliAnalysisTaskHFEemcQA.cxx:298
 AliAnalysisTaskHFEemcQA.cxx:299
 AliAnalysisTaskHFEemcQA.cxx:300
 AliAnalysisTaskHFEemcQA.cxx:301
 AliAnalysisTaskHFEemcQA.cxx:302
 AliAnalysisTaskHFEemcQA.cxx:303
 AliAnalysisTaskHFEemcQA.cxx:304
 AliAnalysisTaskHFEemcQA.cxx:305
 AliAnalysisTaskHFEemcQA.cxx:306
 AliAnalysisTaskHFEemcQA.cxx:307
 AliAnalysisTaskHFEemcQA.cxx:308
 AliAnalysisTaskHFEemcQA.cxx:309
 AliAnalysisTaskHFEemcQA.cxx:310
 AliAnalysisTaskHFEemcQA.cxx:311
 AliAnalysisTaskHFEemcQA.cxx:312
 AliAnalysisTaskHFEemcQA.cxx:313
 AliAnalysisTaskHFEemcQA.cxx:314
 AliAnalysisTaskHFEemcQA.cxx:315
 AliAnalysisTaskHFEemcQA.cxx:316
 AliAnalysisTaskHFEemcQA.cxx:317
 AliAnalysisTaskHFEemcQA.cxx:318
 AliAnalysisTaskHFEemcQA.cxx:319
 AliAnalysisTaskHFEemcQA.cxx:320
 AliAnalysisTaskHFEemcQA.cxx:321
 AliAnalysisTaskHFEemcQA.cxx:322
 AliAnalysisTaskHFEemcQA.cxx:323
 AliAnalysisTaskHFEemcQA.cxx:324
 AliAnalysisTaskHFEemcQA.cxx:325
 AliAnalysisTaskHFEemcQA.cxx:326
 AliAnalysisTaskHFEemcQA.cxx:327
 AliAnalysisTaskHFEemcQA.cxx:328
 AliAnalysisTaskHFEemcQA.cxx:329
 AliAnalysisTaskHFEemcQA.cxx:330
 AliAnalysisTaskHFEemcQA.cxx:331
 AliAnalysisTaskHFEemcQA.cxx:332
 AliAnalysisTaskHFEemcQA.cxx:333
 AliAnalysisTaskHFEemcQA.cxx:334
 AliAnalysisTaskHFEemcQA.cxx:335
 AliAnalysisTaskHFEemcQA.cxx:336
 AliAnalysisTaskHFEemcQA.cxx:337
 AliAnalysisTaskHFEemcQA.cxx:338
 AliAnalysisTaskHFEemcQA.cxx:339
 AliAnalysisTaskHFEemcQA.cxx:340
 AliAnalysisTaskHFEemcQA.cxx:341
 AliAnalysisTaskHFEemcQA.cxx:342
 AliAnalysisTaskHFEemcQA.cxx:343
 AliAnalysisTaskHFEemcQA.cxx:344
 AliAnalysisTaskHFEemcQA.cxx:345
 AliAnalysisTaskHFEemcQA.cxx:346
 AliAnalysisTaskHFEemcQA.cxx:347
 AliAnalysisTaskHFEemcQA.cxx:348
 AliAnalysisTaskHFEemcQA.cxx:349
 AliAnalysisTaskHFEemcQA.cxx:350
 AliAnalysisTaskHFEemcQA.cxx:351
 AliAnalysisTaskHFEemcQA.cxx:352
 AliAnalysisTaskHFEemcQA.cxx:353
 AliAnalysisTaskHFEemcQA.cxx:354
 AliAnalysisTaskHFEemcQA.cxx:355
 AliAnalysisTaskHFEemcQA.cxx:356
 AliAnalysisTaskHFEemcQA.cxx:357
 AliAnalysisTaskHFEemcQA.cxx:358
 AliAnalysisTaskHFEemcQA.cxx:359
 AliAnalysisTaskHFEemcQA.cxx:360
 AliAnalysisTaskHFEemcQA.cxx:361
 AliAnalysisTaskHFEemcQA.cxx:362
 AliAnalysisTaskHFEemcQA.cxx:363
 AliAnalysisTaskHFEemcQA.cxx:364
 AliAnalysisTaskHFEemcQA.cxx:365
 AliAnalysisTaskHFEemcQA.cxx:366
 AliAnalysisTaskHFEemcQA.cxx:367
 AliAnalysisTaskHFEemcQA.cxx:368
 AliAnalysisTaskHFEemcQA.cxx:369
 AliAnalysisTaskHFEemcQA.cxx:370
 AliAnalysisTaskHFEemcQA.cxx:371
 AliAnalysisTaskHFEemcQA.cxx:372
 AliAnalysisTaskHFEemcQA.cxx:373
 AliAnalysisTaskHFEemcQA.cxx:374
 AliAnalysisTaskHFEemcQA.cxx:375
 AliAnalysisTaskHFEemcQA.cxx:376
 AliAnalysisTaskHFEemcQA.cxx:377
 AliAnalysisTaskHFEemcQA.cxx:378
 AliAnalysisTaskHFEemcQA.cxx:379
 AliAnalysisTaskHFEemcQA.cxx:380
 AliAnalysisTaskHFEemcQA.cxx:381
 AliAnalysisTaskHFEemcQA.cxx:382
 AliAnalysisTaskHFEemcQA.cxx:383
 AliAnalysisTaskHFEemcQA.cxx:384
 AliAnalysisTaskHFEemcQA.cxx:385
 AliAnalysisTaskHFEemcQA.cxx:386
 AliAnalysisTaskHFEemcQA.cxx:387
 AliAnalysisTaskHFEemcQA.cxx:388
 AliAnalysisTaskHFEemcQA.cxx:389
 AliAnalysisTaskHFEemcQA.cxx:390
 AliAnalysisTaskHFEemcQA.cxx:391
 AliAnalysisTaskHFEemcQA.cxx:392
 AliAnalysisTaskHFEemcQA.cxx:393
 AliAnalysisTaskHFEemcQA.cxx:394
 AliAnalysisTaskHFEemcQA.cxx:395
 AliAnalysisTaskHFEemcQA.cxx:396
 AliAnalysisTaskHFEemcQA.cxx:397
 AliAnalysisTaskHFEemcQA.cxx:398
 AliAnalysisTaskHFEemcQA.cxx:399
 AliAnalysisTaskHFEemcQA.cxx:400
 AliAnalysisTaskHFEemcQA.cxx:401
 AliAnalysisTaskHFEemcQA.cxx:402
 AliAnalysisTaskHFEemcQA.cxx:403
 AliAnalysisTaskHFEemcQA.cxx:404
 AliAnalysisTaskHFEemcQA.cxx:405
 AliAnalysisTaskHFEemcQA.cxx:406
 AliAnalysisTaskHFEemcQA.cxx:407
 AliAnalysisTaskHFEemcQA.cxx:408
 AliAnalysisTaskHFEemcQA.cxx:409
 AliAnalysisTaskHFEemcQA.cxx:410
 AliAnalysisTaskHFEemcQA.cxx:411
 AliAnalysisTaskHFEemcQA.cxx:412
 AliAnalysisTaskHFEemcQA.cxx:413
 AliAnalysisTaskHFEemcQA.cxx:414
 AliAnalysisTaskHFEemcQA.cxx:415
 AliAnalysisTaskHFEemcQA.cxx:416
 AliAnalysisTaskHFEemcQA.cxx:417
 AliAnalysisTaskHFEemcQA.cxx:418
 AliAnalysisTaskHFEemcQA.cxx:419
 AliAnalysisTaskHFEemcQA.cxx:420
 AliAnalysisTaskHFEemcQA.cxx:421
 AliAnalysisTaskHFEemcQA.cxx:422
 AliAnalysisTaskHFEemcQA.cxx:423
 AliAnalysisTaskHFEemcQA.cxx:424
 AliAnalysisTaskHFEemcQA.cxx:425
 AliAnalysisTaskHFEemcQA.cxx:426
 AliAnalysisTaskHFEemcQA.cxx:427
 AliAnalysisTaskHFEemcQA.cxx:428
 AliAnalysisTaskHFEemcQA.cxx:429
 AliAnalysisTaskHFEemcQA.cxx:430
 AliAnalysisTaskHFEemcQA.cxx:431
 AliAnalysisTaskHFEemcQA.cxx:432
 AliAnalysisTaskHFEemcQA.cxx:433
 AliAnalysisTaskHFEemcQA.cxx:434
 AliAnalysisTaskHFEemcQA.cxx:435
 AliAnalysisTaskHFEemcQA.cxx:436
 AliAnalysisTaskHFEemcQA.cxx:437
 AliAnalysisTaskHFEemcQA.cxx:438
 AliAnalysisTaskHFEemcQA.cxx:439
 AliAnalysisTaskHFEemcQA.cxx:440
 AliAnalysisTaskHFEemcQA.cxx:441
 AliAnalysisTaskHFEemcQA.cxx:442
 AliAnalysisTaskHFEemcQA.cxx:443
 AliAnalysisTaskHFEemcQA.cxx:444
 AliAnalysisTaskHFEemcQA.cxx:445
 AliAnalysisTaskHFEemcQA.cxx:446
 AliAnalysisTaskHFEemcQA.cxx:447
 AliAnalysisTaskHFEemcQA.cxx:448
 AliAnalysisTaskHFEemcQA.cxx:449
 AliAnalysisTaskHFEemcQA.cxx:450
 AliAnalysisTaskHFEemcQA.cxx:451
 AliAnalysisTaskHFEemcQA.cxx:452
 AliAnalysisTaskHFEemcQA.cxx:453
 AliAnalysisTaskHFEemcQA.cxx:454
 AliAnalysisTaskHFEemcQA.cxx:455
 AliAnalysisTaskHFEemcQA.cxx:456
 AliAnalysisTaskHFEemcQA.cxx:457
 AliAnalysisTaskHFEemcQA.cxx:458
 AliAnalysisTaskHFEemcQA.cxx:459
 AliAnalysisTaskHFEemcQA.cxx:460
 AliAnalysisTaskHFEemcQA.cxx:461
 AliAnalysisTaskHFEemcQA.cxx:462
 AliAnalysisTaskHFEemcQA.cxx:463
 AliAnalysisTaskHFEemcQA.cxx:464
 AliAnalysisTaskHFEemcQA.cxx:465
 AliAnalysisTaskHFEemcQA.cxx:466
 AliAnalysisTaskHFEemcQA.cxx:467
 AliAnalysisTaskHFEemcQA.cxx:468
 AliAnalysisTaskHFEemcQA.cxx:469
 AliAnalysisTaskHFEemcQA.cxx:470
 AliAnalysisTaskHFEemcQA.cxx:471
 AliAnalysisTaskHFEemcQA.cxx:472
 AliAnalysisTaskHFEemcQA.cxx:473
 AliAnalysisTaskHFEemcQA.cxx:474
 AliAnalysisTaskHFEemcQA.cxx:475
 AliAnalysisTaskHFEemcQA.cxx:476
 AliAnalysisTaskHFEemcQA.cxx:477
 AliAnalysisTaskHFEemcQA.cxx:478
 AliAnalysisTaskHFEemcQA.cxx:479
 AliAnalysisTaskHFEemcQA.cxx:480
 AliAnalysisTaskHFEemcQA.cxx:481
 AliAnalysisTaskHFEemcQA.cxx:482
 AliAnalysisTaskHFEemcQA.cxx:483
 AliAnalysisTaskHFEemcQA.cxx:484
 AliAnalysisTaskHFEemcQA.cxx:485
 AliAnalysisTaskHFEemcQA.cxx:486
 AliAnalysisTaskHFEemcQA.cxx:487
 AliAnalysisTaskHFEemcQA.cxx:488
 AliAnalysisTaskHFEemcQA.cxx:489
 AliAnalysisTaskHFEemcQA.cxx:490
 AliAnalysisTaskHFEemcQA.cxx:491
 AliAnalysisTaskHFEemcQA.cxx:492
 AliAnalysisTaskHFEemcQA.cxx:493
 AliAnalysisTaskHFEemcQA.cxx:494
 AliAnalysisTaskHFEemcQA.cxx:495
 AliAnalysisTaskHFEemcQA.cxx:496
 AliAnalysisTaskHFEemcQA.cxx:497
 AliAnalysisTaskHFEemcQA.cxx:498
 AliAnalysisTaskHFEemcQA.cxx:499
 AliAnalysisTaskHFEemcQA.cxx:500
 AliAnalysisTaskHFEemcQA.cxx:501
 AliAnalysisTaskHFEemcQA.cxx:502
 AliAnalysisTaskHFEemcQA.cxx:503
 AliAnalysisTaskHFEemcQA.cxx:504
 AliAnalysisTaskHFEemcQA.cxx:505
 AliAnalysisTaskHFEemcQA.cxx:506
 AliAnalysisTaskHFEemcQA.cxx:507
 AliAnalysisTaskHFEemcQA.cxx:508
 AliAnalysisTaskHFEemcQA.cxx:509
 AliAnalysisTaskHFEemcQA.cxx:510
 AliAnalysisTaskHFEemcQA.cxx:511
 AliAnalysisTaskHFEemcQA.cxx:512
 AliAnalysisTaskHFEemcQA.cxx:513
 AliAnalysisTaskHFEemcQA.cxx:514
 AliAnalysisTaskHFEemcQA.cxx:515
 AliAnalysisTaskHFEemcQA.cxx:516
 AliAnalysisTaskHFEemcQA.cxx:517
 AliAnalysisTaskHFEemcQA.cxx:518
 AliAnalysisTaskHFEemcQA.cxx:519
 AliAnalysisTaskHFEemcQA.cxx:520
 AliAnalysisTaskHFEemcQA.cxx:521
 AliAnalysisTaskHFEemcQA.cxx:522
 AliAnalysisTaskHFEemcQA.cxx:523
 AliAnalysisTaskHFEemcQA.cxx:524
 AliAnalysisTaskHFEemcQA.cxx:525
 AliAnalysisTaskHFEemcQA.cxx:526
 AliAnalysisTaskHFEemcQA.cxx:527
 AliAnalysisTaskHFEemcQA.cxx:528
 AliAnalysisTaskHFEemcQA.cxx:529
 AliAnalysisTaskHFEemcQA.cxx:530
 AliAnalysisTaskHFEemcQA.cxx:531
 AliAnalysisTaskHFEemcQA.cxx:532
 AliAnalysisTaskHFEemcQA.cxx:533
 AliAnalysisTaskHFEemcQA.cxx:534
 AliAnalysisTaskHFEemcQA.cxx:535
 AliAnalysisTaskHFEemcQA.cxx:536
 AliAnalysisTaskHFEemcQA.cxx:537
 AliAnalysisTaskHFEemcQA.cxx:538
 AliAnalysisTaskHFEemcQA.cxx:539
 AliAnalysisTaskHFEemcQA.cxx:540
 AliAnalysisTaskHFEemcQA.cxx:541
 AliAnalysisTaskHFEemcQA.cxx:542
 AliAnalysisTaskHFEemcQA.cxx:543
 AliAnalysisTaskHFEemcQA.cxx:544
 AliAnalysisTaskHFEemcQA.cxx:545
 AliAnalysisTaskHFEemcQA.cxx:546
 AliAnalysisTaskHFEemcQA.cxx:547
 AliAnalysisTaskHFEemcQA.cxx:548
 AliAnalysisTaskHFEemcQA.cxx:549
 AliAnalysisTaskHFEemcQA.cxx:550
 AliAnalysisTaskHFEemcQA.cxx:551
 AliAnalysisTaskHFEemcQA.cxx:552
 AliAnalysisTaskHFEemcQA.cxx:553
 AliAnalysisTaskHFEemcQA.cxx:554
 AliAnalysisTaskHFEemcQA.cxx:555
 AliAnalysisTaskHFEemcQA.cxx:556
 AliAnalysisTaskHFEemcQA.cxx:557
 AliAnalysisTaskHFEemcQA.cxx:558
 AliAnalysisTaskHFEemcQA.cxx:559
 AliAnalysisTaskHFEemcQA.cxx:560
 AliAnalysisTaskHFEemcQA.cxx:561
 AliAnalysisTaskHFEemcQA.cxx:562
 AliAnalysisTaskHFEemcQA.cxx:563
 AliAnalysisTaskHFEemcQA.cxx:564
 AliAnalysisTaskHFEemcQA.cxx:565
 AliAnalysisTaskHFEemcQA.cxx:566
 AliAnalysisTaskHFEemcQA.cxx:567
 AliAnalysisTaskHFEemcQA.cxx:568
 AliAnalysisTaskHFEemcQA.cxx:569
 AliAnalysisTaskHFEemcQA.cxx:570
 AliAnalysisTaskHFEemcQA.cxx:571
 AliAnalysisTaskHFEemcQA.cxx:572
 AliAnalysisTaskHFEemcQA.cxx:573
 AliAnalysisTaskHFEemcQA.cxx:574
 AliAnalysisTaskHFEemcQA.cxx:575
 AliAnalysisTaskHFEemcQA.cxx:576
 AliAnalysisTaskHFEemcQA.cxx:577
 AliAnalysisTaskHFEemcQA.cxx:578
 AliAnalysisTaskHFEemcQA.cxx:579
 AliAnalysisTaskHFEemcQA.cxx:580
 AliAnalysisTaskHFEemcQA.cxx:581
 AliAnalysisTaskHFEemcQA.cxx:582
 AliAnalysisTaskHFEemcQA.cxx:583
 AliAnalysisTaskHFEemcQA.cxx:584
 AliAnalysisTaskHFEemcQA.cxx:585
 AliAnalysisTaskHFEemcQA.cxx:586
 AliAnalysisTaskHFEemcQA.cxx:587
 AliAnalysisTaskHFEemcQA.cxx:588
 AliAnalysisTaskHFEemcQA.cxx:589
 AliAnalysisTaskHFEemcQA.cxx:590
 AliAnalysisTaskHFEemcQA.cxx:591
 AliAnalysisTaskHFEemcQA.cxx:592
 AliAnalysisTaskHFEemcQA.cxx:593
 AliAnalysisTaskHFEemcQA.cxx:594
 AliAnalysisTaskHFEemcQA.cxx:595
 AliAnalysisTaskHFEemcQA.cxx:596
 AliAnalysisTaskHFEemcQA.cxx:597
 AliAnalysisTaskHFEemcQA.cxx:598
 AliAnalysisTaskHFEemcQA.cxx:599
 AliAnalysisTaskHFEemcQA.cxx:600
 AliAnalysisTaskHFEemcQA.cxx:601
 AliAnalysisTaskHFEemcQA.cxx:602
 AliAnalysisTaskHFEemcQA.cxx:603
 AliAnalysisTaskHFEemcQA.cxx:604
 AliAnalysisTaskHFEemcQA.cxx:605
 AliAnalysisTaskHFEemcQA.cxx:606
 AliAnalysisTaskHFEemcQA.cxx:607
 AliAnalysisTaskHFEemcQA.cxx:608
 AliAnalysisTaskHFEemcQA.cxx:609
 AliAnalysisTaskHFEemcQA.cxx:610
 AliAnalysisTaskHFEemcQA.cxx:611
 AliAnalysisTaskHFEemcQA.cxx:612
 AliAnalysisTaskHFEemcQA.cxx:613
 AliAnalysisTaskHFEemcQA.cxx:614
 AliAnalysisTaskHFEemcQA.cxx:615
 AliAnalysisTaskHFEemcQA.cxx:616
 AliAnalysisTaskHFEemcQA.cxx:617
 AliAnalysisTaskHFEemcQA.cxx:618
 AliAnalysisTaskHFEemcQA.cxx:619
 AliAnalysisTaskHFEemcQA.cxx:620
 AliAnalysisTaskHFEemcQA.cxx:621
 AliAnalysisTaskHFEemcQA.cxx:622
 AliAnalysisTaskHFEemcQA.cxx:623
 AliAnalysisTaskHFEemcQA.cxx:624
 AliAnalysisTaskHFEemcQA.cxx:625
 AliAnalysisTaskHFEemcQA.cxx:626
 AliAnalysisTaskHFEemcQA.cxx:627
 AliAnalysisTaskHFEemcQA.cxx:628
 AliAnalysisTaskHFEemcQA.cxx:629
 AliAnalysisTaskHFEemcQA.cxx:630
 AliAnalysisTaskHFEemcQA.cxx:631
 AliAnalysisTaskHFEemcQA.cxx:632
 AliAnalysisTaskHFEemcQA.cxx:633
 AliAnalysisTaskHFEemcQA.cxx:634
 AliAnalysisTaskHFEemcQA.cxx:635
 AliAnalysisTaskHFEemcQA.cxx:636
 AliAnalysisTaskHFEemcQA.cxx:637
 AliAnalysisTaskHFEemcQA.cxx:638
 AliAnalysisTaskHFEemcQA.cxx:639
 AliAnalysisTaskHFEemcQA.cxx:640
 AliAnalysisTaskHFEemcQA.cxx:641
 AliAnalysisTaskHFEemcQA.cxx:642
 AliAnalysisTaskHFEemcQA.cxx:643
 AliAnalysisTaskHFEemcQA.cxx:644
 AliAnalysisTaskHFEemcQA.cxx:645
 AliAnalysisTaskHFEemcQA.cxx:646
 AliAnalysisTaskHFEemcQA.cxx:647
 AliAnalysisTaskHFEemcQA.cxx:648
 AliAnalysisTaskHFEemcQA.cxx:649
 AliAnalysisTaskHFEemcQA.cxx:650
 AliAnalysisTaskHFEemcQA.cxx:651
 AliAnalysisTaskHFEemcQA.cxx:652
 AliAnalysisTaskHFEemcQA.cxx:653
 AliAnalysisTaskHFEemcQA.cxx:654
 AliAnalysisTaskHFEemcQA.cxx:655
 AliAnalysisTaskHFEemcQA.cxx:656
 AliAnalysisTaskHFEemcQA.cxx:657
 AliAnalysisTaskHFEemcQA.cxx:658
 AliAnalysisTaskHFEemcQA.cxx:659
 AliAnalysisTaskHFEemcQA.cxx:660
 AliAnalysisTaskHFEemcQA.cxx:661
 AliAnalysisTaskHFEemcQA.cxx:662
 AliAnalysisTaskHFEemcQA.cxx:663
 AliAnalysisTaskHFEemcQA.cxx:664
 AliAnalysisTaskHFEemcQA.cxx:665
 AliAnalysisTaskHFEemcQA.cxx:666
 AliAnalysisTaskHFEemcQA.cxx:667
 AliAnalysisTaskHFEemcQA.cxx:668
 AliAnalysisTaskHFEemcQA.cxx:669
 AliAnalysisTaskHFEemcQA.cxx:670
 AliAnalysisTaskHFEemcQA.cxx:671
 AliAnalysisTaskHFEemcQA.cxx:672
 AliAnalysisTaskHFEemcQA.cxx:673
 AliAnalysisTaskHFEemcQA.cxx:674
 AliAnalysisTaskHFEemcQA.cxx:675
 AliAnalysisTaskHFEemcQA.cxx:676
 AliAnalysisTaskHFEemcQA.cxx:677
 AliAnalysisTaskHFEemcQA.cxx:678
 AliAnalysisTaskHFEemcQA.cxx:679
 AliAnalysisTaskHFEemcQA.cxx:680
 AliAnalysisTaskHFEemcQA.cxx:681
 AliAnalysisTaskHFEemcQA.cxx:682
 AliAnalysisTaskHFEemcQA.cxx:683
 AliAnalysisTaskHFEemcQA.cxx:684
 AliAnalysisTaskHFEemcQA.cxx:685
 AliAnalysisTaskHFEemcQA.cxx:686
 AliAnalysisTaskHFEemcQA.cxx:687
 AliAnalysisTaskHFEemcQA.cxx:688
 AliAnalysisTaskHFEemcQA.cxx:689
 AliAnalysisTaskHFEemcQA.cxx:690
 AliAnalysisTaskHFEemcQA.cxx:691
 AliAnalysisTaskHFEemcQA.cxx:692
 AliAnalysisTaskHFEemcQA.cxx:693
 AliAnalysisTaskHFEemcQA.cxx:694
 AliAnalysisTaskHFEemcQA.cxx:695
 AliAnalysisTaskHFEemcQA.cxx:696
 AliAnalysisTaskHFEemcQA.cxx:697
 AliAnalysisTaskHFEemcQA.cxx:698
 AliAnalysisTaskHFEemcQA.cxx:699
 AliAnalysisTaskHFEemcQA.cxx:700
 AliAnalysisTaskHFEemcQA.cxx:701
 AliAnalysisTaskHFEemcQA.cxx:702
 AliAnalysisTaskHFEemcQA.cxx:703
 AliAnalysisTaskHFEemcQA.cxx:704
 AliAnalysisTaskHFEemcQA.cxx:705
 AliAnalysisTaskHFEemcQA.cxx:706
 AliAnalysisTaskHFEemcQA.cxx:707
 AliAnalysisTaskHFEemcQA.cxx:708
 AliAnalysisTaskHFEemcQA.cxx:709
 AliAnalysisTaskHFEemcQA.cxx:710
 AliAnalysisTaskHFEemcQA.cxx:711
 AliAnalysisTaskHFEemcQA.cxx:712
 AliAnalysisTaskHFEemcQA.cxx:713
 AliAnalysisTaskHFEemcQA.cxx:714
 AliAnalysisTaskHFEemcQA.cxx:715
 AliAnalysisTaskHFEemcQA.cxx:716
 AliAnalysisTaskHFEemcQA.cxx:717
 AliAnalysisTaskHFEemcQA.cxx:718
 AliAnalysisTaskHFEemcQA.cxx:719
 AliAnalysisTaskHFEemcQA.cxx:720
 AliAnalysisTaskHFEemcQA.cxx:721
 AliAnalysisTaskHFEemcQA.cxx:722
 AliAnalysisTaskHFEemcQA.cxx:723
 AliAnalysisTaskHFEemcQA.cxx:724
 AliAnalysisTaskHFEemcQA.cxx:725
 AliAnalysisTaskHFEemcQA.cxx:726
 AliAnalysisTaskHFEemcQA.cxx:727
 AliAnalysisTaskHFEemcQA.cxx:728
 AliAnalysisTaskHFEemcQA.cxx:729
 AliAnalysisTaskHFEemcQA.cxx:730
 AliAnalysisTaskHFEemcQA.cxx:731
 AliAnalysisTaskHFEemcQA.cxx:732
 AliAnalysisTaskHFEemcQA.cxx:733
 AliAnalysisTaskHFEemcQA.cxx:734
 AliAnalysisTaskHFEemcQA.cxx:735
 AliAnalysisTaskHFEemcQA.cxx:736
 AliAnalysisTaskHFEemcQA.cxx:737
 AliAnalysisTaskHFEemcQA.cxx:738
 AliAnalysisTaskHFEemcQA.cxx:739
 AliAnalysisTaskHFEemcQA.cxx:740
 AliAnalysisTaskHFEemcQA.cxx:741
 AliAnalysisTaskHFEemcQA.cxx:742
 AliAnalysisTaskHFEemcQA.cxx:743
 AliAnalysisTaskHFEemcQA.cxx:744
 AliAnalysisTaskHFEemcQA.cxx:745
 AliAnalysisTaskHFEemcQA.cxx:746
 AliAnalysisTaskHFEemcQA.cxx:747
 AliAnalysisTaskHFEemcQA.cxx:748
 AliAnalysisTaskHFEemcQA.cxx:749
 AliAnalysisTaskHFEemcQA.cxx:750
 AliAnalysisTaskHFEemcQA.cxx:751