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

/* $Id$ */

//-----------------------------------------------------------------------
//   Class for DStar corrections: 
//   
//   The D0 cutting varibles position in the container and container 
//   binning method from a C.Zampolli example
//   In this way a simple comparison between D0 and D0 from D* is possible. 
//
//-----------------------------------------------------------------------
// Author : A.Grelli, Utrecht University
//
//         a.grelli@uu.nl
//-----------------------------------------------------------------------
 
#include <TCanvas.h>
#include <TParticle.h>
#include <TDatabasePDG.h>
#include <TH1I.h>
#include <TStyle.h>
#include <TFile.h>

#include "AliCFTaskForDStarAnalysis.h"
#include "AliStack.h"
#include "AliMCEvent.h"
#include "AliCFManager.h"
#include "AliCFContainer.h"
#include "AliLog.h"
#include "AliAnalysisManager.h"
#include "AliAODHandler.h"
#include "AliAODEvent.h"
#include "AliAODRecoDecay.h"
#include "AliAODRecoDecayHF.h"
#include "AliAODRecoCascadeHF.h"
#include "AliAODRecoDecayHF2Prong.h"
#include "AliAODMCParticle.h"
#include "AliAODMCHeader.h"
#include "AliESDtrack.h"
#include "TChain.h"
#include "THnSparse.h"
#include "TH2D.h"

//__________________________________________________________________________
AliCFTaskForDStarAnalysis::AliCFTaskForDStarAnalysis() :
  AliAnalysisTaskSE(),
  fCFManager(0x0),
  fHistEventsProcessed(0x0),
  fCorrelation(0x0),
  fCountRecoDStarSel(0),
  fEvents(0),
  fMinITSClusters(5),
  fMinITSClustersSoft(4),
  fAcceptanceUnf(kTRUE)
{
  //
  //Default ctor
  //
}
//___________________________________________________________________________
AliCFTaskForDStarAnalysis::AliCFTaskForDStarAnalysis(const Char_t* name) :
  AliAnalysisTaskSE(name),
  fCFManager(0x0),
  fHistEventsProcessed(0x0),
  fCorrelation(0x0),
  fCountRecoDStarSel(0),
  fEvents(0),
  fMinITSClusters(5),
  fMinITSClustersSoft(4),
  fAcceptanceUnf(kTRUE)
{
  //
  // Constructor. Initialization of Inputs and Outputs
  //
  Info("AliCFTaskForDStarAnalysis","Calling Constructor");
  
  DefineOutput(1,TH1I::Class());
  DefineOutput(2,AliCFContainer::Class());
  DefineOutput(3,THnSparseD::Class());
}

//___________________________________________________________________________
AliCFTaskForDStarAnalysis& AliCFTaskForDStarAnalysis::operator=(const AliCFTaskForDStarAnalysis& c) 
{
  //
  // Assignment operator
  //
  if (this!=&c) {
    AliAnalysisTaskSE::operator=(c) ;
    fCFManager  = c.fCFManager;
    fHistEventsProcessed = c.fHistEventsProcessed;
  }
  return *this;
}

//___________________________________________________________________________
AliCFTaskForDStarAnalysis::AliCFTaskForDStarAnalysis(const AliCFTaskForDStarAnalysis& c) :
  AliAnalysisTaskSE(c),
  fCFManager(c.fCFManager),
  fHistEventsProcessed(c.fHistEventsProcessed),
  fCorrelation(c.fCorrelation),
  fCountRecoDStarSel(c.fCountRecoDStarSel),
  fEvents(c.fEvents),
  fMinITSClusters(c.fMinITSClusters),
  fMinITSClustersSoft(c.fMinITSClustersSoft),
  fAcceptanceUnf(c.fAcceptanceUnf)
{
  //
  // Copy Constructor
  //
}

//___________________________________________________________________________
AliCFTaskForDStarAnalysis::~AliCFTaskForDStarAnalysis() {
  //
  //destructor
  //
  if (fCFManager)           delete fCFManager ;
  if (fHistEventsProcessed) delete fHistEventsProcessed ;
  if (fCorrelation)         delete fCorrelation ;
}

//_________________________________________________
void AliCFTaskForDStarAnalysis::UserExec(Option_t *)
{
  //
  // Main loop function
  //
  
  if (!fInputEvent) {
    Error("UserExec","NO EVENT FOUND!");
    return;
  }
  
  AliAODEvent* aodEvent = dynamic_cast<AliAODEvent*>(fInputEvent);
  
  TClonesArray *arrayDStartoD0pi=0;
  
  if(!aodEvent && AODEvent() && IsStandardAOD()) {
    // In case there is an AOD handler writing a standard AOD, use the AOD 
    // event in memory rather than the input (ESD) event.    
    aodEvent = dynamic_cast<AliAODEvent*> (AODEvent());
    // in this case the braches in the deltaAOD (AliAOD.VertexingHF.root)
    // have to taken from the AOD event hold by the AliAODExtension
    AliAODHandler* aodHandler = (AliAODHandler*) 
      ((AliAnalysisManager::GetAnalysisManager())->GetOutputEventHandler());
    if(aodHandler->GetExtensions()) {
      AliAODExtension *ext = (AliAODExtension*)aodHandler->GetExtensions()->FindObject("AliAOD.VertexingHF.root");
      AliAODEvent *aodFromExt = ext->GetAOD();
      arrayDStartoD0pi=(TClonesArray*)aodFromExt->GetList()->FindObject("Dstar");
    }
  } else {
    arrayDStartoD0pi=(TClonesArray*)aodEvent->GetList()->FindObject("Dstar");
  }
  
  if (!arrayDStartoD0pi) {
    AliError("Could not find array of HF vertices");
    return;
  }
  
  // fix for temporary bug in ESDfilter 
  // the AODs with null vertex pointer didn't pass the PhysSel
  if(!aodEvent->GetPrimaryVertex() || TMath::Abs(aodEvent->GetMagneticField())<0.001) return;

  fEvents++;
  if (fEvents%10000 ==0) AliDebug(2,Form("Event %d",fEvents));

  fCFManager->SetRecEventInfo(aodEvent);
  fCFManager->SetMCEventInfo(aodEvent);
  
  // event selection
  Double_t containerInput[15] ;
  Double_t containerInputMC[15] ;
  
  //loop on the MC event
  
  TClonesArray* mcArray = dynamic_cast<TClonesArray*>(aodEvent->FindListObject(AliAODMCParticle::StdBranchName()));
  if (!mcArray) {
    AliError("Could not find Monte-Carlo in AOD");
    return;
  }
  
  AliAODMCHeader *mcHeader = dynamic_cast<AliAODMCHeader*>(aodEvent->GetList()->FindObject(AliAODMCHeader::StdBranchName()));
  if (!mcHeader) {
    AliError("Could not find MC Header in AOD");
    return;
  }
  
  // AOD primary vertex
  AliAODVertex *vtx1 = (AliAODVertex*)aodEvent->GetPrimaryVertex();
  Double_t zPrimVertex = vtx1->GetZ();
  Double_t zMCVertex = mcHeader->GetVtxZ();
  Bool_t vtxFlag = kTRUE;
  TString title=vtx1->GetTitle();
  if(!title.Contains("VertexerTracks")) vtxFlag=kFALSE;
  
  for (Int_t iPart=0; iPart<mcArray->GetEntriesFast(); iPart++) { 
    AliAODMCParticle* mcPart = dynamic_cast<AliAODMCParticle*>(mcArray->At(iPart));
    if (!mcPart) {
      AliWarning("MC Particle not found in tree, skipping"); 
      continue;
    } 

    // check the MC-level cuts
    if (!fCFManager->CheckParticleCuts(0, mcPart)) continue;  // 0 stands for MC level
    
    // fill the container for Gen-level selection
    Double_t vectorMC[9] = {9999.,9999.,9999.,9999.,9999.,9999.,9999.,9999.,9999.};
    
    if (GetDStarMCParticle(mcPart, mcArray, vectorMC)){
      
      containerInputMC[0] = vectorMC[0];
      containerInputMC[1] = vectorMC[1] ;
      containerInputMC[2] = vectorMC[2] ;
      containerInputMC[3] = vectorMC[3] ;
      containerInputMC[4] = vectorMC[4] ;
      containerInputMC[5] = vectorMC[5] ; 
      containerInputMC[6] = 0.;      
      containerInputMC[7] = 0.;          
      containerInputMC[8] = 0.;
      containerInputMC[9] = -100000.; 
      containerInputMC[10] = 1.01; 
      containerInputMC[11] = vectorMC[6];  
      containerInputMC[12] = zMCVertex;     // z vertex
      containerInputMC[13] = vectorMC[7];   // pt D0 pion
      containerInputMC[14] = vectorMC[8];   // pt D0 kaon  
      
      fCFManager->GetParticleContainer()->Fill(containerInputMC,kStepGenerated);
      
      // check the MC-Acceptance level cuts
      // since standard CF functions are not applicable, using Kine Cuts on daughters
      
      Int_t daughter0 = mcPart->GetDaughter(0);
      Int_t daughter1 = mcPart->GetDaughter(1);
      
      AliDebug(2, Form("daughter0 = %d and daughter1 = %d",daughter0,daughter1));
      
      //D0
      AliAODMCParticle* mcPartDaughter0 = dynamic_cast<AliAODMCParticle*>(mcArray->At(daughter0));
      if (!mcPartDaughter0) {
	AliError("Could not find Monte-Carlo in AOD");
	return;
      }
  
      // Soft Pion
      AliAODMCParticle* mcPartDaughter1 = dynamic_cast<AliAODMCParticle*>(mcArray->At(daughter1));
      if (!mcPartDaughter1) {
	AliError("Could not find Monte-Carlo in AOD");
	return;
      }
      
      // Acceptance variables for the soft pion
      Double_t eta1 = mcPartDaughter1->Eta();
      Double_t pt1  = mcPartDaughter1->Pt(); 
      
      Int_t daughD00 = 0;
      Int_t daughD01 = 0;
      
      // Just to be sure to take the right particles    
      if(TMath::Abs(mcPartDaughter0->GetPdgCode())==421){
	daughD00 = mcPartDaughter0->GetDaughter(0);
	daughD01 = mcPartDaughter0->GetDaughter(1);
      }else{
	daughD00 = mcPartDaughter1->GetDaughter(0);
	daughD01 = mcPartDaughter1->GetDaughter(1);
      }
      
      // the D0 daughters
      AliAODMCParticle* mcD0PartDaughter0 = dynamic_cast<AliAODMCParticle*>(mcArray->At(daughD00));
      AliAODMCParticle* mcD0PartDaughter1 = dynamic_cast<AliAODMCParticle*>(mcArray->At(daughD01));
      
      if (!mcD0PartDaughter0 || !mcD0PartDaughter1) {
	AliWarning("At least one D0 Daughter Particle not found in tree, but it should be, this check was already done...");
	return; 
      }
      
      // D0 daughters - needed for acceptance
      Double_t theD0pt0 =  mcD0PartDaughter0->Pt();
      Double_t theD0pt1 =  mcD0PartDaughter1->Pt();
      Double_t theD0eta0 = mcD0PartDaughter0->Eta();
      Double_t theD0eta1 = mcD0PartDaughter1->Eta();
      
      // ACCEPTANCE REQUESTS ---------
      
      // soft pion 
      Bool_t daught1inAcceptance = (TMath::Abs(eta1) <= 0.9 && pt1 >= 0.05);
      // Do daughters
      Bool_t D0daught0inAcceptance = (TMath::Abs(theD0eta0) <= 0.9 && theD0pt0 >= 0.1); 
      Bool_t D0daught1inAcceptance = (TMath::Abs(theD0eta1) <= 0.9 && theD0pt1 >= 0.1);
      
      if (daught1inAcceptance && D0daught0inAcceptance && D0daught1inAcceptance) {
	
	AliDebug(2, "D* Daughter particles in acceptance");
	
	fCFManager->GetParticleContainer()->Fill(containerInputMC,kStepAcceptance);
	
	// check on the vertex
	if (vtxFlag){
	  // filling the container if the vertex is ok
	  fCFManager->GetParticleContainer()->Fill(containerInputMC,kStepVertex) ;
	  
	  Bool_t refitFlag = kTRUE;
	  for (Int_t iaod =0; iaod<aodEvent->GetNumberOfTracks(); iaod++){
	    AliAODTrack *track = (AliAODTrack*)aodEvent->GetTrack(iaod);
	    
            // refit only for D0 daughters
	    if ((track->GetLabel() == daughD00) || (track->GetLabel() == daughD01)) {
	      if(!(track->GetStatus()&AliESDtrack::kTPCrefit) || !(track->GetStatus()&AliESDtrack::kITSrefit)) {
		refitFlag = kFALSE;
	      }
	    }
	  } 
	  if (refitFlag){ // refit
      
	    fCFManager->GetParticleContainer()->Fill(containerInputMC,kStepRefit);

	  } // end of refit	  
	} // end of vertex
      }	//end of acceptance		
    } // end of MC D*
    else {
      AliDebug(3,"Problems in filling the container");
      continue;
    }
  } // end of MC loop
  
  //rec
  AliDebug(2, Form("Found %d D* candidates",arrayDStartoD0pi->GetEntriesFast()));
  
  //D* and D0 prongs needed to MatchToMC method
  Int_t pdgDgDStartoD0pi[2]={421,211};
  Int_t pdgDgD0toKpi[2]={321,211};
  
  for (Int_t iDStartoD0pi = 0; iDStartoD0pi<arrayDStartoD0pi->GetEntriesFast(); iDStartoD0pi++) {
    
    // D* candidates
    AliAODRecoCascadeHF* dstarD0pi = (AliAODRecoCascadeHF*)arrayDStartoD0pi->At(iDStartoD0pi);
    
    // D0 from the reco cascade
    AliAODRecoDecayHF2Prong* D0particle = (AliAODRecoDecayHF2Prong*)dstarD0pi->Get2Prong();
    Bool_t unsetvtx=kFALSE;
    
    // needed for pointing angle
    if(!D0particle->GetOwnPrimaryVtx()) {
      D0particle->SetOwnPrimaryVtx(vtx1);
      unsetvtx=kTRUE;
    }
    
    // find associated MC particle for D* ->D0toKpi
    Int_t mcLabel = dstarD0pi->MatchToMC(413,421,pdgDgDStartoD0pi,pdgDgD0toKpi,mcArray); 
    
    // find D0->Kpi ... needed in the following
    Int_t mcD0Label = D0particle->MatchToMC(421,mcArray,2,pdgDgD0toKpi); 
    
    if (mcLabel == -1 || mcD0Label ==-1) 
      {
	AliDebug(2,"No MC particle found");
      }
    else {
      
      // the D* and the D0 in MC
      AliAODMCParticle* mcVtxHFDStar = (AliAODMCParticle*)mcArray->At(mcLabel);
      AliAODMCParticle* mcVtxHFD0Kpi = (AliAODMCParticle*)mcArray->At(mcD0Label);
      
      if (!mcVtxHFD0Kpi || !mcVtxHFDStar) {
	AliWarning("Could not find associated MC D0 and/or D* in AOD MC tree");
	continue;
      }
      
      // soft pion
      AliAODTrack *track2 = (AliAODTrack*)dstarD0pi->GetBachelor(); 

      //D0tokpi
      AliAODTrack *track0 = (AliAODTrack*)D0particle->GetDaughter(0);
      AliAODTrack *track1 = (AliAODTrack*)D0particle->GetDaughter(1);
      
      // check if associated MC v0 passes the cuts
      if (!fCFManager->CheckParticleCuts(0 ,mcVtxHFDStar)) { 
	AliDebug(2, "Skipping the particles due to cuts");
	continue; 
      }
      
      // fill the container...
      Double_t pt = TMath::Sqrt(TMath::Power(D0particle->Pt(),2)+TMath::Power(track2->Pt(),2));
      Double_t rapidity = dstarD0pi->YDstar();
      Double_t cosThetaStar = 9999.;
      Double_t pTpi  = 0.;
      Double_t pTK   = 0.;
      Double_t dca   = (D0particle->GetDCA())*1E4;
      Double_t d0pi  = 0.;
      Double_t d0K   = 0.;
      Double_t d0xd0 = (D0particle->Prodd0d0())*1E8;
      Double_t cosPointingAngle = D0particle->CosPointingAngle();
      Double_t phi = D0particle->Phi();
           
      // Select D0 cutting variables
      Int_t pdgCode = mcVtxHFD0Kpi->GetPdgCode();

      // D0 related variables
      if (pdgCode > 0){

	cosThetaStar = D0particle->CosThetaStarD0();
	pTpi    = D0particle->PtProng(0);
	pTK     = D0particle->PtProng(1);
	d0pi    = (D0particle->Getd0Prong(0))*1E4;
	d0K     = (D0particle->Getd0Prong(1))*1E4;
   
      }
      else {

	cosThetaStar = D0particle->CosThetaStarD0bar();
	pTpi    = D0particle->PtProng(1);
	pTK     = D0particle->PtProng(0);
	d0pi    = (D0particle->Getd0Prong(1))*1E4;
	d0K     = (D0particle->Getd0Prong(0))*1E4;
   
      }
      
      // ct of the D0 from D*
      Double_t cT = D0particle->CtD0();
      
      containerInput[0]  = pt;
      containerInput[1]  = rapidity;
      containerInput[2]  = cosThetaStar;
      containerInput[3]  = track2->Pt();
      containerInput[4]  = D0particle->Pt();
      containerInput[5]  = cT*1.E4;  // in micron
      containerInput[6]  = dca;  // in micron
      containerInput[7]  = d0pi;  // in micron
      containerInput[8]  = d0K;  // in micron
      containerInput[9]  = d0xd0;  // in micron^2
      containerInput[10] = cosPointingAngle;  // in micron
      containerInput[11] = phi;  
      containerInput[12] = zPrimVertex;    // z of reconstructed of primary vertex
      containerInput[13] = pTpi;  // D0 pion
      containerInput[14] = pTK;   // D0 kaon  

      fCFManager->GetParticleContainer()->Fill(containerInput,kStepReconstructed) ;   
      
      // refit in ITS and TPC for D0 daughters
      if((!(track0->GetStatus()&AliESDtrack::kTPCrefit)) || (!(track1->GetStatus()&AliESDtrack::kTPCrefit)) || (!(track0->GetStatus()&AliESDtrack::kITSrefit)) || (!(track1->GetStatus()&AliESDtrack::kITSrefit))) {
	continue;
      }

      // reft in ITS for soft pion
      if((!(track2->GetStatus()&AliESDtrack::kITSrefit))) {
	continue;
      }

      // cut in acceptance for the soft pion and for the D0 daughters      
      Bool_t acceptanceProng0 = (TMath::Abs(D0particle->EtaProng(0))<= 0.9 && D0particle->PtProng(0) >= 0.1);
      Bool_t acceptanceProng1 = (TMath::Abs(D0particle->EtaProng(1))<= 0.9 && D0particle->PtProng(1) >= 0.1);
      
      // soft pion acceptance ... is it fine 0.9?????
      Bool_t acceptanceProng2 = (TMath::Abs(track2->Eta())<= 0.9 && track2->Pt() >= 0.05);
      
      if (acceptanceProng0 && acceptanceProng1 && acceptanceProng2) {
	AliDebug(2,"D* reco daughters in acceptance");
	fCFManager->GetParticleContainer()->Fill(containerInput,kStepRecoAcceptance) ;
	
	if(fAcceptanceUnf){	  
	  Double_t fill[4]; //fill response matrix
	  
	  // dimensions 0&1 : pt,eta (Rec)		
	  fill[0] = pt ;
	  fill[1] = rapidity;		
	  // dimensions 2&3 : pt,eta (MC)					
	  fill[2] =  mcVtxHFDStar->Pt();
	  fill[3] =  mcVtxHFDStar->Y();	  
	  fCorrelation->Fill(fill);		
	}  
	
	// cut on the min n. of clusters in ITS for the D0 and soft pion
	Int_t ncls0=0,ncls1=0,ncls2=0;
	for(Int_t l=0;l<6;l++) {
	  if(TESTBIT(track0->GetITSClusterMap(),l)) ncls0++;
	  if(TESTBIT(track1->GetITSClusterMap(),l)) ncls1++;
	  if(TESTBIT(track2->GetITSClusterMap(),l)) ncls2++;
	}	
	// see AddTask for soft pion ITS clusters request
	AliDebug(2, Form("n clusters = %d", ncls0));

	if (ncls0 >= fMinITSClusters && ncls1 >= fMinITSClusters && ncls2>= fMinITSClustersSoft) {
	  fCFManager->GetParticleContainer()->Fill(containerInput,kStepRecoITSClusters) ;
	  
	  // D0 cuts optimized for D* analysis
	  Double_t cuts[7] = {9999999., 1.1, 0., 9999999., 9999999., 0.,0.027}; 

          // needed for cuts	  
          Double_t theD0pt = D0particle->Pt();

	  if (theD0pt <= 1){ // first bin not optimized
	    cuts[0] = 400;
	    cuts[1] = 0.8;
	    cuts[2] = 0.21;
	    cuts[3] = 500;
	    cuts[4] = 500;
	    cuts[5] = -20000;
	    cuts[6] = 0.6;  
	  }
	  else if (theD0pt > 1 && theD0pt <= 2){
	    cuts[0] = 200; 
	    cuts[1] = 0.7; 
	    cuts[2] = 0.8; 
	    cuts[3] = 210;
	    cuts[4] = 210;
	    cuts[5] = -20000;
	    cuts[6] = 0.9;  
	  }
	  else if (theD0pt > 2 && theD0pt <= 3){
	    cuts[0] = 400;
	    cuts[1] = 0.8; 
	    cuts[2] = 0.8;
	    cuts[3] = 420;
	    cuts[4] = 350; 
	    cuts[5] = -8500;
	    cuts[6] = 0.9;   
	  }
	  else if (theD0pt > 3 && theD0pt <= 5){
	    cuts[0] = 160;  
	    cuts[1] = 1.0; 
	    cuts[2] = 1.2;  
	    cuts[3] = 560; 
	    cuts[4] = 420; 
	    cuts[5] = -8500;
	    cuts[6] = 0.9;  
	  }
	  else if (theD0pt > 5){
	    cuts[0] = 800;
	    cuts[1] = 1.0;
	    cuts[2] = 1.2; 
	    cuts[3] = 700;
	    cuts[4] = 700; 
	    cuts[5] = 10000;
	    cuts[6] = 0.9;  
	  }
	  if (dca < cuts[0] 
	      && TMath::Abs(cosThetaStar) < cuts[1]  
	      && pTpi > cuts[2] 
	      && pTK > cuts[2]  
	      && TMath::Abs(d0pi) < cuts[3] 
	      && TMath::Abs(d0K) < cuts[4]  
	      && d0xd0 < cuts[5] 
	      && cosPointingAngle > cuts[6]
	    ){
	    
	    AliDebug(2,"Particle passed D* selection cuts");
	    fCFManager->GetParticleContainer()->Fill(containerInput,kStepRecoCuts) ;   
	    
	    if(!fAcceptanceUnf){ // unfolding
	      
	      Double_t fill[4]; //fill response matrix
	      
	      // dimensions 0&1 : pt,eta (Rec)		    
	      fill[0] = pt ;
	      fill[1] = rapidity;		    
	      // dimensions 2&3 : pt,eta (MC)		    
	      fill[2] =  mcVtxHFDStar->Pt();
	      fill[3] =  mcVtxHFDStar->Y();
	      
	      fCorrelation->Fill(fill);		    
	    }
	  }		
	}
      }
    }
    if(unsetvtx) D0particle->UnsetOwnPrimaryVtx();
  } // end loop on D*->Kpipi
  
  fHistEventsProcessed->Fill(0);
  
  PostData(1,fHistEventsProcessed) ;
  PostData(2,fCFManager->GetParticleContainer()) ;
  PostData(3,fCorrelation) ;
}


//___________________________________________________________________________
void AliCFTaskForDStarAnalysis::Terminate(Option_t*)
{
  // The Terminate()	
  AliAnalysisTaskSE::Terminate();
  
  // draw correlation matrix
  AliCFContainer *cont= dynamic_cast<AliCFContainer*> (GetOutputData(2));
  if(!cont) {
    printf("CONTAINER NOT FOUND\n");
    return;
  } 
}

//___________________________________________________________________________
void AliCFTaskForDStarAnalysis::UserCreateOutputObjects() {

  //
  // useroutput
  //
  
  Info("UserCreateOutputObjects","CreateOutputObjects of task %s\n", GetName());
  
  //slot #1
  OpenFile(1);
  fHistEventsProcessed = new TH1I("CFDSchist0","",1,0,1) ;
}

//________________________________________________________________________________
Bool_t AliCFTaskForDStarAnalysis::GetDStarMCParticle(AliAODMCParticle* mcPart, TClonesArray* mcArray, Double_t* vectorMC)const {
  
  // 
  // fill the D* and D0 MC container
  //
  
  Bool_t isDStar = kFALSE;
  
  if(TMath::Abs(mcPart->GetPdgCode())!=413) return isDStar;
  
  // getting the daughters
  Int_t daughter0 = mcPart->GetDaughter(0);
  Int_t daughter1 = mcPart->GetDaughter(1);
  
  AliDebug(2, Form("daughter0 = %d and daughter1 = %d",daughter0,daughter1));
  if (daughter0 == 0 || daughter1 == 0) {
    AliDebug(2, "Error! the D* MC doesn't have correct daughters!!");
    return isDStar;  
  }
  
  if (TMath::Abs(daughter1 - daughter0) != 1) { // should be everytime true - see PDGdatabooklet
    AliDebug(2, "The D* MC doesn't come from a 2-prong decay, skipping!!");
    return isDStar;  
  }
  
  AliAODMCParticle* mcPartDaughter0 = dynamic_cast<AliAODMCParticle*>(mcArray->At(daughter0));
  AliAODMCParticle* mcPartDaughter1 = dynamic_cast<AliAODMCParticle*>(mcArray->At(daughter1));
  if (!mcPartDaughter0 || !mcPartDaughter1) {
    AliWarning("D*: At least one Daughter Particle not found in tree, skipping"); 
    return isDStar;  
  }
  
  if (!(TMath::Abs(mcPartDaughter0->GetPdgCode())==421 &&
	TMath::Abs(mcPartDaughter1->GetPdgCode())==211) && 
      !(TMath::Abs(mcPartDaughter0->GetPdgCode())==211 &&
	TMath::Abs(mcPartDaughter1->GetPdgCode())==421)) {
    AliDebug(2, "The D* MC doesn't come from a Kpi decay, skipping!!");
    return isDStar;  
  }
  
  Double_t vtx2daughter0[3] = {0,0,0};   // secondary vertex from daughter 0
  Double_t vtx2daughter1[3] = {0,0,0};   // secondary vertex from daughter 1

  // getting vertex from daughters
  mcPartDaughter0->XvYvZv(vtx2daughter0);  
  mcPartDaughter1->XvYvZv(vtx2daughter1);  
  
  // check if the secondary vertex is the same for both
  if (vtx2daughter0[0] != vtx2daughter1[0] && vtx2daughter0[1] != vtx2daughter1[1] && vtx2daughter0[2] != vtx2daughter1[2]) {
    AliError("The D* daughters have different secondary vertex, skipping the track");
    return isDStar;
  }
  
  AliAODMCParticle* neutralDaugh = mcPartDaughter0;
  
  Double_t VectorD0[2] ={0.,0.};
  
  if (!EvaluateIfD0toKpi(neutralDaugh,mcArray,VectorD0)) {
    AliDebug(2, "Error! the D0 MC doesn't have correct daughters!!");
    return isDStar;  
  }
  // get the pT of the daughters
  
  Double_t pTpi = 0.;
  Double_t pTD0 = 0.;
  
  if (TMath::Abs(mcPartDaughter0->GetPdgCode()) == 211) {
    pTpi = mcPartDaughter0->Pt();
    pTD0 = mcPartDaughter1->Pt();
  }
  else {
    pTpi = mcPartDaughter1->Pt();
    pTD0 = mcPartDaughter0->Pt();
  }
  
  vectorMC[0] = mcPart->Pt();
  vectorMC[1] = mcPart->Y() ;
  vectorMC[2] = 0;
  vectorMC[3] = pTpi ;
  vectorMC[4] = pTD0 ;
  vectorMC[5] = 0;
  vectorMC[6] = mcPart->Phi() ;
  vectorMC[7] = VectorD0[0] ;
  vectorMC[8] = VectorD0[1] ;
  
  isDStar = kTRUE;
  
  return isDStar;
}
//________________________________________________________________________________________________

Bool_t AliCFTaskForDStarAnalysis::EvaluateIfD0toKpi(AliAODMCParticle* neutralDaugh, TClonesArray* mcArray, Double_t* VectorD0)const{
  
  //
  // chack wether D0 is decaing into kpi
  //
  
  Bool_t isHadronic = kFALSE;
  
  Int_t daughterD00 = neutralDaugh->GetDaughter(0);
  Int_t daughterD01 = neutralDaugh->GetDaughter(1);
  
  AliDebug(2, Form("daughter0 = %d and daughter1 = %d",daughterD00,daughterD01));
  if (daughterD00 == 0 || daughterD01 == 0) {
    AliDebug(2, "Error! the D0 MC doesn't have correct daughters!!");
    return isHadronic;  
  }
  
  if (TMath::Abs(daughterD01 - daughterD00) != 1) { // should be everytime true - see PDGdatabooklet
    AliDebug(2, "The D0 MC doesn't come from a 2-prong decay, skipping!!");
    return isHadronic;  
  }
  
  AliAODMCParticle* mcPartDaughterD00 = dynamic_cast<AliAODMCParticle*>(mcArray->At(daughterD00));
  AliAODMCParticle* mcPartDaughterD01 = dynamic_cast<AliAODMCParticle*>(mcArray->At(daughterD01));
  if (!mcPartDaughterD00 || !mcPartDaughterD01) {
    AliWarning("D0 MC analysis: At least one Daughter Particle not found in tree, skipping"); 
    return isHadronic;  
  }
  
  if (!(TMath::Abs(mcPartDaughterD00->GetPdgCode())==321 &&
	TMath::Abs(mcPartDaughterD01->GetPdgCode())==211) && 
      !(TMath::Abs(mcPartDaughterD00->GetPdgCode())==211 &&
	TMath::Abs(mcPartDaughterD01->GetPdgCode())==321)) {
    AliDebug(2, "The D0 MC doesn't come from a Kpi decay, skipping!!");
    return isHadronic;  
  }

  Double_t pTD0pi = 0;
  Double_t pTD0K = 0;

 
  if (TMath::Abs(mcPartDaughterD00->GetPdgCode()) == 211) {
    pTD0pi = mcPartDaughterD00->Pt();
    pTD0K = mcPartDaughterD01->Pt();
  }
  else {
    pTD0pi = mcPartDaughterD01->Pt();
    pTD0K  = mcPartDaughterD00->Pt();
  }
 
  isHadronic = kTRUE;

  VectorD0[0] = pTD0pi;
  VectorD0[1] = pTD0K;

  return isHadronic;

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