#include <TBits.h>
#include <TString.h>
#include "AliAnalysisManager.h"
#include "AliCentrality.h"
#include "AliESDEvent.h"
#include "AliESDtrack.h"
#include "AliESDtrackCuts.h"
#include "AliESDVertex.h"
#include "AliHFEcuts.h"
#include "AliHFEsignalCuts.h"
#include "AliInputEventHandler.h"
#include "AliLog.h"
#include "AliMCEvent.h"
#include "AliMCEventHandler.h"
#include "AliMCParticle.h"
#include "AliStack.h"
#include "AliPIDResponse.h"
#include "AliTrackReference.h"
#include "AliVEvent.h"
#include "AliHFEpidTPC.h"
#include "AliHFEpidTRD.h"
#include "AliHFEmcQA.h"
#include "TTreeStream.h"
#include "AliHFEdebugTreeTask.h"
ClassImp(AliHFEdebugTreeTask)
AliHFEdebugTreeTask::AliHFEdebugTreeTask():
AliAnalysisTaskSE(),
fTrackCuts(NULL),
fSignalCuts(NULL),
fTRDpid(NULL),
fTPCpid(NULL),
fExtraCuts(NULL),
fNclustersTPC(70),
fNclustersTPCPID(0),
fNclustersITS(2),
fFilename("HFEtree.root"),
fDebugTree(NULL),
fNparents(-1)
{
}
AliHFEdebugTreeTask::AliHFEdebugTreeTask(const char *name):
AliAnalysisTaskSE(name),
fTrackCuts(NULL),
fSignalCuts(NULL),
fTRDpid(NULL),
fTPCpid(NULL),
fExtraCuts(NULL),
fNclustersTPC(70),
fNclustersTPCPID(0),
fNclustersITS(2),
fFilename("HFEtree.root"),
fDebugTree(NULL),
fNparents(-1)
{
fTRDpid = new AliHFEpidTRD("QAtrdPID");
fTPCpid = new AliHFEpidTPC("QAtpcPID");
}
AliHFEdebugTreeTask::~AliHFEdebugTreeTask(){
if(fDebugTree) delete fDebugTree;
if(fTRDpid) delete fTRDpid;
if(fTPCpid) delete fTPCpid;
}
void AliHFEdebugTreeTask::UserCreateOutputObjects(){
fDebugTree = new TTreeSRedirector(fFilename.Data());
fSignalCuts = new AliHFEsignalCuts("HFEsignalCuts", "HFE MC Signal definition");
fTrackCuts = new AliHFEcuts("fTrackCuts", "Basic HFE track cuts");
fTrackCuts->CreateStandardCuts();
fTrackCuts->SetMinNClustersTPC(fNclustersTPC);
fTrackCuts->SetMinRatioTPCclusters(0);
fTrackCuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable);
fTrackCuts->SetMinNClustersTPCPID(fNclustersTPCPID);
fTrackCuts->SetMinNClustersITS(fNclustersITS);
fTrackCuts->SetUseMixedVertex(kTRUE);
fTrackCuts->SetVertexRange(10.);
fTrackCuts->Initialize();
fExtraCuts = new AliHFEextraCuts("hfeExtraCuts","HFE Extra Cuts");
}
void AliHFEdebugTreeTask::UserExec(Option_t *){
AliPIDResponse *pid = NULL;
AliInputEventHandler *handler = dynamic_cast<AliInputEventHandler *>(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler());
if(handler){
pid = handler->GetPIDResponse();
} else {
AliError("No Handler");
}
if(!pid){
AliError("No PID response");
return;
}
if(!fInputEvent) {
AliError("No Input event");
return;
}
AliESDtrack copyTrack;
fTrackCuts->SetRecEvent(fInputEvent);
if(fInputEvent->IsPileupFromSPD(3, 0.8, 3., 2., 5)){
AliDebug(1, "Event flagged as pileup\n");
return;
}
if(!fTrackCuts->CheckEventCuts("fCutsEvRec", fInputEvent)){
AliDebug(1, "Event rejected by the event cuts\n");
return;
}
Int_t run = fInputEvent->GetRunNumber();
UInt_t trigger = fInputHandler->IsEventSelected();
Bool_t isMBTrigger = trigger & AliVEvent::kMB;
Bool_t isCentralTrigger = trigger & AliVEvent::kCentral;
Bool_t isSemicentralTrigger = trigger & AliVEvent::kSemiCentral;
Bool_t isEMCALTrigger = trigger & AliVEvent::kEMCEJE;
Bool_t mcthere = dynamic_cast<AliMCEventHandler *>(AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler()) != NULL;
if(mcthere){
fTrackCuts->SetMCEvent(fMCEvent);
fSignalCuts->SetMCEvent(fMCEvent);
}
AliStack* stack = 0x0;
if(mcthere){
stack = fMCEvent->Stack();
if(!stack) AliError("No Stack");
}
const AliVVertex *vertex = fInputEvent->GetPrimaryVertex();
Double_t vtx[3];
vertex->GetXYZ(vtx);
Double_t ncontrib = fInputEvent->GetPrimaryVertex()->GetNContributors();
Float_t centrality = -1.;
AliESDEvent *event = (dynamic_cast<AliESDEvent *>(fInputEvent));
if(!event) return;
TString beamtype = event->GetBeamType();
if(!beamtype.CompareTo("Pb-Pb") || !beamtype.CompareTo("A-A")){
AliDebug(1, "Heavy-Ion event\n");
AliCentrality *hicent = fInputEvent->GetCentrality();
centrality = hicent->GetCentralityPercentile("V0M");
}
if(!fExtraCuts){
fExtraCuts = new AliHFEextraCuts("hfeExtraCuts","HFE Extra Cuts");
}
fExtraCuts->SetRecEventInfo(event);
(*fDebugTree) << "EventDebug"
<< "Centrality=" << centrality
<< "VertexZ=" << vtx[2]
<< "NumberOfContributors=" << ncontrib
<< "run=" << run
<< "\n";
Double_t charge, eta, phi, momentum, transversemomentum;
Int_t source;
if(mcthere){
AliMCParticle * mcpart;
for(Int_t itrk = 0; itrk < fMCEvent->GetNumberOfTracks(); itrk++){
mcpart = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(itrk));
if(!mcpart) continue;
if(!fTrackCuts->CheckParticleCuts(static_cast<UInt_t>(AliHFEcuts::kStepMCGenerated), mcpart)) continue;
charge = mcpart->Charge() > 0. ? 1. : -1.;
momentum = mcpart->P() * charge;
transversemomentum = mcpart->Pt() * charge;
eta = mcpart->Eta();
phi = mcpart->Phi();
Int_t pdg = mcpart->Particle()->GetPdgCode();
Double_t vx = mcpart->Particle()->Vx(),
vy = mcpart->Particle()->Vy();
Double_t productionVertex = TMath::Sqrt(vx*vx+vy*vy);
Int_t motherPdg = 0;
Int_t motherlabel = mcpart->Particle()->GetFirstMother();
if(motherlabel >= 0 && motherlabel < fMCEvent->GetNumberOfTracks()){
AliMCParticle *mother = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(motherlabel));
if(mother) motherPdg = mother->Particle()->GetPdgCode();
}
source = 5;
if(fSignalCuts->IsCharmElectron(mcpart)) source = 0;
else if(fSignalCuts->IsBeautyElectron(mcpart)) source = 1;
else if(fSignalCuts->IsGammaElectron(mcpart)) source = 2;
else if(fSignalCuts->IsNonHFElectron(mcpart)) source = 3;
else if(TMath::Abs(pdg) == 11) source = 4;
else source = 5;
(*fDebugTree) << "MCDebug"
<< "centrality=" << centrality
<< "MBtrigger=" << isMBTrigger
<< "CentralTrigger=" << isCentralTrigger
<< "SemicentralTrigger=" << isSemicentralTrigger
<< "EMCALtrigger=" << isEMCALTrigger
<< "run=" << run
<< "p=" << momentum
<< "pt=" << transversemomentum
<< "eta=" << eta
<< "phi=" << phi
<< "pdg=" << pdg
<< "ProductionVertex=" << productionVertex
<< "motherPdg=" << motherPdg
<< "source=" << source
<< "\n";
}
}
AliESDtrack *track;
Double_t mcp, mcpt, mcptTPC, mcpTPC;
for(Int_t itrack = 0; itrack < fInputEvent->GetNumberOfTracks(); itrack++){
track = dynamic_cast<AliESDtrack *>(fInputEvent->GetTrack(itrack));
if(!track) continue;
if(!fTrackCuts->CheckParticleCuts(AliHFEcuts::kNcutStepsMCTrack + AliHFEcuts::kStepRecKineITSTPC, track)) continue;
copyTrack.~AliESDtrack();
new(©Track) AliESDtrack(*track);
if(fTPCpid->HasEtaCorrection()) fTPCpid->ApplyEtaCorrection(©Track, AliHFEpidObject::kESDanalysis);
Double_t nSigmaTOF = pid->NumberOfSigmasTOF(track, AliPID::kElectron);
Double_t nSigmaTPC = pid->NumberOfSigmasTPC(©Track, AliPID::kElectron);
Double_t tPCdEdx = copyTrack.GetTPCsignal();
Bool_t signal = kTRUE;
source = 5;
mcp = mcpt = mcpTPC = mcptTPC = 0.;
Double_t bgcategory = 0.;
Int_t mArr = -1;
Int_t mesonID = -999;
Double_t xr[3]={-999,-999,-999};
Double_t eR=-999;
Double_t eZ=-999;
Double_t unique=-999;
Double_t mesonunique=-999;
Double_t mesonR=-999;
Double_t mesonZ=-999;
Double_t mesonMomPdg=-999;
Double_t mesonMomPt=-999;
Double_t mesonGMomPdg=-999;
Double_t mesonGGMomPdg=-999;
Double_t mesonPt = -999;
Double_t mceta = -999;
Double_t mcphi = -999;
Int_t mcpdg;
if(mcthere){
AliMCParticle *mctrack;
if((mctrack = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(TMath::Abs(track->GetLabel()))))){
if(!fTrackCuts->CheckParticleCuts(AliHFEcuts::kStepMCGenerated, mctrack)) signal = kFALSE;
}
if(fSignalCuts->IsCharmElectron(track)) source = 0;
else if(fSignalCuts->IsBeautyElectron(track)) source = 1;
else if(fSignalCuts->IsGammaElectron(track)) source = 2;
else if(fSignalCuts->IsNonHFElectron(track)) source = 3;
else if(mctrack && (TMath::Abs(mctrack->Particle()->GetPdgCode()) == 11)) source = 4;
else source = 5;
if(!mctrack) continue;
mcpt = mctrack->Pt();
mcp = mctrack->P();
mceta = mctrack->Eta();
mcphi = mctrack->Phi();
mcpdg = mctrack->Particle()->GetPdgCode();
AliTrackReference *ref = FindTrackReference(mctrack, 80, 270, AliTrackReference::kTPC);
if(ref){
mcpTPC = ref->P();
mcptTPC = ref->Pt();
}
TParticle *mctrack1 = mctrack->Particle();
mesonID=GetElecSourceMC(mctrack1);
if(mesonID==AliHFEmcQA::kGammaPi0 || mesonID==AliHFEmcQA::kPi0) mArr=0;
else if(mesonID==AliHFEmcQA::kGammaEta || mesonID==AliHFEmcQA::kEta) mArr=1;
else if(mesonID==AliHFEmcQA::kGammaOmega || mesonID==AliHFEmcQA::kOmega) mArr=2;
else if(mesonID==AliHFEmcQA::kGammaPhi || mesonID==AliHFEmcQA::kPhi) mArr=3;
else if(mesonID==AliHFEmcQA::kGammaEtaPrime || mesonID==AliHFEmcQA::kEtaPrime) mArr=4;
else if(mesonID==AliHFEmcQA::kGammaRho0 || mesonID==AliHFEmcQA::kRho0) mArr=5;
mctrack->XvYvZv(xr);
eR= TMath::Sqrt(xr[0]*xr[0]+xr[1]*xr[1]);
eZ = xr[2];
TParticle *mctrackt = mctrack->Particle();
unique=mctrackt->GetUniqueID();
AliMCParticle *mctrackmother = NULL;
AliMCParticle *mctrackmother2 = NULL;
if(!(mArr<0)){
if(mesonID>=AliHFEmcQA::kGammaPi0) {
Int_t glabel=TMath::Abs(mctrack->GetMother());
if((mctrackmother = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(glabel)))){
glabel=TMath::Abs(mctrackmother->GetMother());
if((mctrackmother = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(glabel)))){
mesonPt = mctrackmother->Pt();
bgcategory = 1.;
mctrackmother->XvYvZv(xr);
mesonR = TMath::Sqrt(xr[0]*xr[0]+xr[1]*xr[1]);
mesonZ = xr[2];
mctrackt = mctrackmother->Particle();
if(mctrackt){
mesonunique = mctrackt->GetUniqueID();
}
Int_t glabel2=TMath::Abs(mctrackmother->GetMother());
if((mctrackmother2 = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(glabel2)))){
mesonMomPdg=mctrackmother2->PdgCode();
mesonMomPt=mctrackmother2->Pt();
}
if(glabel>fMCEvent->GetNumberOfPrimaries()) {
bgcategory = 2.;
glabel=TMath::Abs(mctrackmother->GetMother());
if((mctrackmother = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(glabel)))){
mesonMomPdg=mctrackmother->PdgCode();
mesonMomPt=mctrackmother->Pt();
if(TMath::Abs(mctrackmother->PdgCode())==310){
bgcategory = 3.;
glabel=TMath::Abs(mctrackmother->GetMother());
if((mctrackmother = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(glabel)))){
mesonGMomPdg=mctrackmother->PdgCode();
glabel=TMath::Abs(mctrackmother->GetMother());
if((mctrackmother = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(glabel)))){
mesonGGMomPdg=mctrackmother->PdgCode();
}
}
}
}
}
}
}
}
else{
Int_t glabel=TMath::Abs(mctrack->GetMother());
if((mctrackmother = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(glabel)))){
mesonPt = mctrackmother->Pt();
bgcategory = -1.;
mctrackmother->XvYvZv(xr);
mesonR = TMath::Sqrt(xr[0]*xr[0]+xr[1]*xr[1]);
mesonZ = xr[2];
mctrackt = mctrackmother->Particle();
if(mctrackt){
mesonunique = mctrackt->GetUniqueID();
}
if(glabel>fMCEvent->GetNumberOfPrimaries()) {
bgcategory = -2.;
glabel=TMath::Abs(mctrackmother->GetMother());
if((mctrackmother = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(glabel)))){
mesonMomPdg=mctrackmother->PdgCode();
mesonMomPt=mctrackmother->Pt();
if(TMath::Abs(mctrackmother->PdgCode())==310){
bgcategory = -3.;
glabel=TMath::Abs(mctrackmother->GetMother());
if((mctrackmother = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(glabel)))){
mesonGMomPdg=mctrackmother->PdgCode();
glabel=TMath::Abs(mctrackmother->GetMother());
if((mctrackmother = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(glabel)))){
mesonGGMomPdg=mctrackmother->PdgCode();
}
}
}
}
}
}
}
}
}
Int_t v0pid = -1;
if(track->TestBit(BIT(14))) v0pid = AliPID::kElectron;
else if(track->TestBit(BIT(15))) v0pid = AliPID::kPion;
else if(track->TestBit(BIT(16))) v0pid = AliPID::kProton;
charge = track->Charge() > 0 ? 1. : -1.;
eta = track->Eta();
phi = track->Phi();
momentum = track->P() * charge;
transversemomentum = track->Pt() * charge;
Double_t momentumTPC = track->GetTPCInnerParam() ? track->GetTPCInnerParam()->P() : 0.;
Double_t transversemomentumTPC = track->GetTPCInnerParam() ? track->GetTPCInnerParam()->Pt() : 0.;
UChar_t nclustersITS = track->GetITSclusters(NULL);
Double_t chi2matching = track->GetChi2TPCConstrainedVsGlobal(dynamic_cast<const AliESDVertex *>(vertex));
Double_t chi2PerClusterITS = 0.0;
if (nclustersITS != 0) chi2PerClusterITS = track->GetITSchi2() / Float_t(nclustersITS);
UChar_t nclustersTPCfit = track->GetTPCNcls();
UChar_t nclustersTPCall = 0;
const TBits &clusterTPC = track->GetTPCClusterMap();
nclustersTPCall = clusterTPC.CountBits();
UChar_t nclustersTPCPID = track->GetTPCsignalN();
UChar_t nfindableTPC = track->GetTPCNclsF();
Double_t clusterRatioTPCfit = 0.0;
if((static_cast<Double_t>(nfindableTPC))>0.0) clusterRatioTPCfit = static_cast<Double_t>(nclustersTPCfit)/static_cast<Double_t>(nfindableTPC);
Double_t clusterRatioTPCall = 0.0;
if((static_cast<Double_t>(nfindableTPC))>0.0) clusterRatioTPCall = static_cast<Double_t>(nclustersTPCall)/static_cast<Double_t>(nfindableTPC);
UChar_t nclustersTPCshared = 0;
Float_t ncrossedRowsTPC = track->GetTPCCrossedRows();
const TBits &sharedTPC = track->GetTPCSharedMap();
for(Int_t ibit = 0; ibit < 160; ibit++) if(sharedTPC.TestBitNumber(ibit)) nclustersTPCshared++;
UChar_t nclustersTRD = track->GetTRDncls();
UChar_t ntrackletsTRDPID = track->GetTRDntrackletsPID();
UChar_t hasClusterITS[6], statusITS[6], hasTrackletTRD[6];
UChar_t itsPixel = track->GetITSClusterMap();
for(Int_t icl = 0; icl < 6; icl++){
hasClusterITS[icl] = TESTBIT(itsPixel, icl) ? 1 : 0;
if(CheckITSstatus(track, icl)) statusITS[icl] = 1;
else statusITS[icl] = 0;
}
Double_t trddEdxSum[6];
for(Int_t a=0;a<6;a++) { trddEdxSum[a]= 0.;}
for(Int_t itl = 0; itl < 6; itl++){
Int_t nSliceNonZero = 0;
trddEdxSum[itl] = track->GetTRDslice(itl, 0);
for(Int_t islice = 0; islice < 8; islice++){
if(track->GetTRDslice(itl, islice) > 0.001) nSliceNonZero++;
}
hasTrackletTRD[itl] = nSliceNonZero ? 1 : 0;
}
Double_t pidprobs[5];
track->GetTRDpid(pidprobs);
Double_t likeEleTRD = pidprobs[0];
Double_t likeEleTRDn = likeEleTRD/(likeEleTRD + pidprobs[2]);
Double_t trdtruncmean1 = fTRDpid->GetTRDSignalV1(track, 0.6);
Double_t trdtruncmean2 = fTRDpid->GetTRDSignalV2(track, 0.6);
Float_t b[2] = {0.,0.};
Float_t bCov[3] = {0.,0.,0.};
track->GetImpactParameters(b,bCov);
Double_t dca = TMath::Sqrt(b[0]*b[0]+b[1]*b[1]);
Double_t dcaSR=0, dcaSZ=0;
if(bCov[0]>0) dcaSR = b[0]/TMath::Sqrt(bCov[0]);
if(bCov[2]>0) dcaSZ = b[1]/TMath::Sqrt(bCov[2]);
Double_t dcaS = AliESDtrackCuts::GetSigmaToVertex(track);
Double_t hfeb[2] = {-99.,-99.};
Double_t hfebCov[3] = {-999.,-999.,-999.};
fExtraCuts->GetHFEImpactParameters(track, hfeb, hfebCov);
Double_t tofdx= -999.0;
Double_t tofdz= -999.0;
tofdx=track->GetTOFsignalDx();
tofdz=track->GetTOFsignalDz();
UInt_t status = 0;
status = track->GetStatus();
Bool_t hasTOFout = status&AliESDtrack::kTOFout;
Bool_t hasTOFtime = status&AliESDtrack::kTIME;
Bool_t hasTOFpid = status&AliESDtrack::kTOFpid;
Bool_t hasgoodTOF = kFALSE;
if (hasTOFout && hasTOFtime && hasTOFpid) hasgoodTOF = kTRUE;
Bool_t hasTRDin = status&AliESDtrack::kTRDin;
Int_t mismatchlevel=0;
if(mcthere){
Int_t tofLabel[3];
track->GetTOFLabel(tofLabel);
if(TMath::Abs(track->GetLabel()) != TMath::Abs(tofLabel[0]) || tofLabel[1] > 0) mismatchlevel=1;
TParticle *matchedTrack = stack->Particle(TMath::Abs(tofLabel[0]));
if(TMath::Abs(matchedTrack->GetFirstMother()) == TMath::Abs(track->GetLabel()))
{
if(mismatchlevel==1) mismatchlevel=3;
else mismatchlevel=2;
}
}
(*fDebugTree) << "PIDdebug"
<< "centrality=" << centrality
<< "MBtrigger=" << isMBTrigger
<< "CentralTrigger=" << isCentralTrigger
<< "SemicentralTrigger=" << isSemicentralTrigger
<< "EMCALtrigger=" << isEMCALTrigger
<< "signal=" << signal
<< "source=" << source
<< "v0pid=" << v0pid
<< "run=" << run
<< "p=" << momentum
<< "ptpc=" << momentumTPC
<< "pt=" << transversemomentum
<< "pttpc=" << transversemomentumTPC
<< "mcp=" << mcp
<< "mcpt=" << mcpt
<< "mcpTPC=" << mcpTPC
<< "mcptTPC=" << mcptTPC
<< "mceta=" << mceta
<< "mcphi=" << mcphi
<< "mcpdg=" << mcpdg
<< "eta=" << eta
<< "phi=" << phi
<< "ntracklets=" << ntrackletsTRDPID
<< "nclustersTPC=" << nclustersTPCfit
<< "nclustersTPCall=" << nclustersTPCall
<< "nclustersTPCPID=" << nclustersTPCPID
<< "nclustersTPCshared=" << nclustersTPCshared
<< "ncrossedRowsTPC=" << ncrossedRowsTPC
<< "clusterRatioTPC=" << clusterRatioTPCfit
<< "clusterRatioTPCall=" << clusterRatioTPCall
<< "nclustersITS=" << nclustersITS
<< "nclusters=" << nclustersTRD
<< "chi2matching=" << chi2matching
<< "chi2PerClusterITS=" << chi2PerClusterITS
<< "its0=" << hasClusterITS[0]
<< "its1=" << hasClusterITS[1]
<< "its2=" << hasClusterITS[2]
<< "its3=" << hasClusterITS[3]
<< "its4=" << hasClusterITS[4]
<< "its5=" << hasClusterITS[5]
<< "statusITS0=" << statusITS[0]
<< "statusITS1=" << statusITS[1]
<< "statusITS2=" << statusITS[2]
<< "statusITS3=" << statusITS[3]
<< "statusITS4=" << statusITS[4]
<< "statusITS5=" << statusITS[5]
<< "trd0=" << hasTrackletTRD[0]
<< "trd1=" << hasTrackletTRD[1]
<< "trd2=" << hasTrackletTRD[2]
<< "trd3=" << hasTrackletTRD[3]
<< "trd4=" << hasTrackletTRD[4]
<< "trd5=" << hasTrackletTRD[5]
<< "TRDdEdxl0=" << trddEdxSum[0]
<< "TRDdEdxl1=" << trddEdxSum[1]
<< "TRDdEdxl2=" << trddEdxSum[2]
<< "TRDdEdxl3=" << trddEdxSum[3]
<< "TRDdEdxl4=" << trddEdxSum[4]
<< "TRDdEdxl5=" << trddEdxSum[5]
<< "TOFsigmaEl=" << nSigmaTOF
<< "TPCsigmaEl=" << nSigmaTPC
<< "TPCdEdx=" << tPCdEdx
<< "TRDlikeEl=" << likeEleTRD
<< "TRDlikeEln=" << likeEleTRDn
<< "trdtruncmean1=" << trdtruncmean1
<< "trdtruncmean2=" << trdtruncmean2
<< "dcaR=" << b[0]
<< "dcaZ=" << b[1]
<< "dca=" << dca
<< "dcaSR=" << dcaSR
<< "dcaSZ=" << dcaSZ
<< "dcaS=" << dcaS
<< "hfedcaR=" << hfeb[0]
<< "hfedcaZ=" << hfeb[1]
<< "hfedcacovR=" << hfebCov[0]
<< "hfedcacovZ=" << hfebCov[2]
<< "vx=" << vtx[0]
<< "vy=" << vtx[1]
<< "vz=" << vtx[2]
<< "tofdx=" << tofdx
<< "tofdz=" << tofdz
<< "statusTOFtracking=" << hasgoodTOF
<< "TOFmismatchlevel=" << mismatchlevel
<< "statusTRDtracking=" << hasTRDin
<< "ncontrib=" << ncontrib
<< "mesonID=" << mesonID
<< "eR=" << eR
<< "mesonR=" << mesonR
<< "eZ=" << eZ
<< "mesonZ=" << mesonZ
<< "unique=" << unique
<< "mesonunique=" << mesonunique
<< "bgcategory=" << bgcategory
<< "mesonpt=" << mesonPt
<< "mesonMomPdg=" << mesonMomPdg
<< "mesonGMomPdg=" << mesonGMomPdg
<< "mesonGGMomPdg=" << mesonGGMomPdg
<< "mesonMomPt=" << mesonMomPt
<< "\n";
}
}
void AliHFEdebugTreeTask::SetFileName(const char *filename){ fFilename = filename; }
AliTrackReference *AliHFEdebugTreeTask::FindTrackReference(AliMCParticle *track, Float_t minRadius, Float_t maxRadius, Int_t detectorID)
{
AliTrackReference *ref = NULL, *reftmp;
Float_t radius;
for(Int_t iref = 0; iref < track->GetNumberOfTrackReferences(); iref++){
reftmp = track->GetTrackReference(iref);
if(reftmp->DetectorId() != detectorID) continue;
radius = reftmp->R();
if(radius >= minRadius && radius < maxRadius){
ref = reftmp;
break;
}
if(radius > maxRadius) break;
}
return ref;
}
Int_t AliHFEdebugTreeTask::GetElecSourceMC(TParticle * const mcpart)
{
if(!mcpart){
AliDebug(1, "no mcparticle, return\n");
return -1;
}
if ( abs(mcpart->GetPdgCode()) != AliHFEmcQA::kElectronPDG ) return AliHFEmcQA::kMisID;
Int_t origin = -1;
Bool_t isFinalOpenCharm = kFALSE;
Int_t iLabel = mcpart->GetFirstMother();
if (iLabel<0){
AliDebug(1, "Stack label is negative, return\n");
return -1;
}
AliMCParticle *mctrack = NULL;
Int_t tmpMomLabel=0;
if(!(mctrack = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(TMath::Abs(iLabel))))) return -1;
TParticle *partMother = mctrack->Particle();
TParticle *partMotherCopy = mctrack->Particle();
Int_t maPdgcode = partMother->GetPdgCode();
if ( (int(abs(maPdgcode)/100.)%10) == AliHFEmcQA::kCharm || (int(abs(maPdgcode)/1000.)%10) == AliHFEmcQA::kCharm ) {
for (Int_t i=0; i<fNparents; i++){
if (abs(maPdgcode)==fParentSelect[0][i]){
isFinalOpenCharm = kTRUE;
}
}
if (!isFinalOpenCharm) return -1;
for (Int_t i=1; i<fgkMaxIter; i++){
Int_t jLabel = partMother->GetFirstMother();
if (jLabel == -1){
origin = AliHFEmcQA::kDirectCharm;
return origin;
}
if (jLabel < 0){
AliDebug(1, "Stack label is negative, return\n");
return -1;
}
if(!(mctrack = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(TMath::Abs(jLabel))))) return -1;
TParticle* grandMa = mctrack->Particle();
Int_t grandMaPDG = grandMa->GetPdgCode();
for (Int_t j=0; j<fNparents; j++){
if (abs(grandMaPDG)==fParentSelect[1][j]){
origin = AliHFEmcQA::kBeautyCharm;
return origin;
}
}
partMother = grandMa;
}
}
else if ( (int(abs(maPdgcode)/100.)%10) == AliHFEmcQA::kBeauty || (int(abs(maPdgcode)/1000.)%10) == AliHFEmcQA::kBeauty ) {
for (Int_t i=0; i<fNparents; i++){
if (abs(maPdgcode)==fParentSelect[1][i]){
origin = AliHFEmcQA::kDirectBeauty;
return origin;
}
}
}
else if ( abs(maPdgcode) == 22 ) {
tmpMomLabel = partMotherCopy->GetFirstMother();
if(!(mctrack = dynamic_cast<AliMCParticle *>(fMCEvent->GetTrack(TMath::Abs(tmpMomLabel))))) return -1;
partMother = mctrack->Particle();
maPdgcode = partMother->GetPdgCode();
if ( abs(maPdgcode) == 111 ) {
origin = AliHFEmcQA::kGammaPi0;
return origin;
}
else if ( abs(maPdgcode) == 221 ) {
origin = AliHFEmcQA::kGammaEta;
return origin;
}
else if ( abs(maPdgcode) == 223 ) {
origin = AliHFEmcQA::kGammaOmega;
return origin;
}
else if ( abs(maPdgcode) == 333 ) {
origin = AliHFEmcQA::kGammaPhi;
return origin;
}
else if ( abs(maPdgcode) == 331 ) {
origin = AliHFEmcQA::kGammaEtaPrime;
return origin;
}
else if ( abs(maPdgcode) == 113 ) {
origin = AliHFEmcQA::kGammaRho0;
return origin;
}
else origin = AliHFEmcQA::kElse;
return origin;
}
else if ( abs(maPdgcode) == 111 ) {
origin = AliHFEmcQA::kPi0;
return origin;
}
else if ( abs(maPdgcode) == 221 ) {
origin = AliHFEmcQA::kEta;
return origin;
}
else if ( abs(maPdgcode) == 223 ) {
origin = AliHFEmcQA::kOmega;
return origin;
}
else if ( abs(maPdgcode) == 333 ) {
origin = AliHFEmcQA::kPhi;
return origin;
}
else if ( abs(maPdgcode) == 331 ) {
origin = AliHFEmcQA::kEtaPrime;
return origin;
}
else if ( abs(maPdgcode) == 113 ) {
origin = AliHFEmcQA::kRho0;
return origin;
}
else{
origin = AliHFEmcQA::kElse;
}
return origin;
}
Bool_t AliHFEdebugTreeTask::CheckITSstatus( const AliESDtrack * const esdtrack, Int_t layer) const {
Int_t itsStatus = 0;
Int_t det;
Float_t xloc, zloc;
esdtrack->GetITSModuleIndexInfo(layer, det, itsStatus, xloc, zloc);
Bool_t status;
switch(itsStatus){
case 2: status = kFALSE; break;
case 3: status = kFALSE; break;
case 7: status = kFALSE; break;
default: status = kTRUE;
}
return status;
}
AliHFEdebugTreeTask.cxx:1 AliHFEdebugTreeTask.cxx:2 AliHFEdebugTreeTask.cxx:3 AliHFEdebugTreeTask.cxx:4 AliHFEdebugTreeTask.cxx:5 AliHFEdebugTreeTask.cxx:6 AliHFEdebugTreeTask.cxx:7 AliHFEdebugTreeTask.cxx:8 AliHFEdebugTreeTask.cxx:9 AliHFEdebugTreeTask.cxx:10 AliHFEdebugTreeTask.cxx:11 AliHFEdebugTreeTask.cxx:12 AliHFEdebugTreeTask.cxx:13 AliHFEdebugTreeTask.cxx:14 AliHFEdebugTreeTask.cxx:15 AliHFEdebugTreeTask.cxx:16 AliHFEdebugTreeTask.cxx:17 AliHFEdebugTreeTask.cxx:18 AliHFEdebugTreeTask.cxx:19 AliHFEdebugTreeTask.cxx:20 AliHFEdebugTreeTask.cxx:21 AliHFEdebugTreeTask.cxx:22 AliHFEdebugTreeTask.cxx:23 AliHFEdebugTreeTask.cxx:24 AliHFEdebugTreeTask.cxx:25 AliHFEdebugTreeTask.cxx:26 AliHFEdebugTreeTask.cxx:27 AliHFEdebugTreeTask.cxx:28 AliHFEdebugTreeTask.cxx:29 AliHFEdebugTreeTask.cxx:30 AliHFEdebugTreeTask.cxx:31 AliHFEdebugTreeTask.cxx:32 AliHFEdebugTreeTask.cxx:33 AliHFEdebugTreeTask.cxx:34 AliHFEdebugTreeTask.cxx:35 AliHFEdebugTreeTask.cxx:36 AliHFEdebugTreeTask.cxx:37 AliHFEdebugTreeTask.cxx:38 AliHFEdebugTreeTask.cxx:39 AliHFEdebugTreeTask.cxx:40 AliHFEdebugTreeTask.cxx:41 AliHFEdebugTreeTask.cxx:42 AliHFEdebugTreeTask.cxx:43 AliHFEdebugTreeTask.cxx:44 AliHFEdebugTreeTask.cxx:45 AliHFEdebugTreeTask.cxx:46 AliHFEdebugTreeTask.cxx:47 AliHFEdebugTreeTask.cxx:48 AliHFEdebugTreeTask.cxx:49 AliHFEdebugTreeTask.cxx:50 AliHFEdebugTreeTask.cxx:51 AliHFEdebugTreeTask.cxx:52 AliHFEdebugTreeTask.cxx:53 AliHFEdebugTreeTask.cxx:54 AliHFEdebugTreeTask.cxx:55 AliHFEdebugTreeTask.cxx:56 AliHFEdebugTreeTask.cxx:57 AliHFEdebugTreeTask.cxx:58 AliHFEdebugTreeTask.cxx:59 AliHFEdebugTreeTask.cxx:60 AliHFEdebugTreeTask.cxx:61 AliHFEdebugTreeTask.cxx:62 AliHFEdebugTreeTask.cxx:63 AliHFEdebugTreeTask.cxx:64 AliHFEdebugTreeTask.cxx:65 AliHFEdebugTreeTask.cxx:66 AliHFEdebugTreeTask.cxx:67 AliHFEdebugTreeTask.cxx:68 AliHFEdebugTreeTask.cxx:69 AliHFEdebugTreeTask.cxx:70 AliHFEdebugTreeTask.cxx:71 AliHFEdebugTreeTask.cxx:72 AliHFEdebugTreeTask.cxx:73 AliHFEdebugTreeTask.cxx:74 AliHFEdebugTreeTask.cxx:75 AliHFEdebugTreeTask.cxx:76 AliHFEdebugTreeTask.cxx:77 AliHFEdebugTreeTask.cxx:78 AliHFEdebugTreeTask.cxx:79 AliHFEdebugTreeTask.cxx:80 AliHFEdebugTreeTask.cxx:81 AliHFEdebugTreeTask.cxx:82 AliHFEdebugTreeTask.cxx:83 AliHFEdebugTreeTask.cxx:84 AliHFEdebugTreeTask.cxx:85 AliHFEdebugTreeTask.cxx:86 AliHFEdebugTreeTask.cxx:87 AliHFEdebugTreeTask.cxx:88 AliHFEdebugTreeTask.cxx:89 AliHFEdebugTreeTask.cxx:90 AliHFEdebugTreeTask.cxx:91 AliHFEdebugTreeTask.cxx:92 AliHFEdebugTreeTask.cxx:93 AliHFEdebugTreeTask.cxx:94 AliHFEdebugTreeTask.cxx:95 AliHFEdebugTreeTask.cxx:96 AliHFEdebugTreeTask.cxx:97 AliHFEdebugTreeTask.cxx:98 AliHFEdebugTreeTask.cxx:99 AliHFEdebugTreeTask.cxx:100 AliHFEdebugTreeTask.cxx:101 AliHFEdebugTreeTask.cxx:102 AliHFEdebugTreeTask.cxx:103 AliHFEdebugTreeTask.cxx:104 AliHFEdebugTreeTask.cxx:105 AliHFEdebugTreeTask.cxx:106 AliHFEdebugTreeTask.cxx:107 AliHFEdebugTreeTask.cxx:108 AliHFEdebugTreeTask.cxx:109 AliHFEdebugTreeTask.cxx:110 AliHFEdebugTreeTask.cxx:111 AliHFEdebugTreeTask.cxx:112 AliHFEdebugTreeTask.cxx:113 AliHFEdebugTreeTask.cxx:114 AliHFEdebugTreeTask.cxx:115 AliHFEdebugTreeTask.cxx:116 AliHFEdebugTreeTask.cxx:117 AliHFEdebugTreeTask.cxx:118 AliHFEdebugTreeTask.cxx:119 AliHFEdebugTreeTask.cxx:120 AliHFEdebugTreeTask.cxx:121 AliHFEdebugTreeTask.cxx:122 AliHFEdebugTreeTask.cxx:123 AliHFEdebugTreeTask.cxx:124 AliHFEdebugTreeTask.cxx:125 AliHFEdebugTreeTask.cxx:126 AliHFEdebugTreeTask.cxx:127 AliHFEdebugTreeTask.cxx:128 AliHFEdebugTreeTask.cxx:129 AliHFEdebugTreeTask.cxx:130 AliHFEdebugTreeTask.cxx:131 AliHFEdebugTreeTask.cxx:132 AliHFEdebugTreeTask.cxx:133 AliHFEdebugTreeTask.cxx:134 AliHFEdebugTreeTask.cxx:135 AliHFEdebugTreeTask.cxx:136 AliHFEdebugTreeTask.cxx:137 AliHFEdebugTreeTask.cxx:138 AliHFEdebugTreeTask.cxx:139 AliHFEdebugTreeTask.cxx:140 AliHFEdebugTreeTask.cxx:141 AliHFEdebugTreeTask.cxx:142 AliHFEdebugTreeTask.cxx:143 AliHFEdebugTreeTask.cxx:144 AliHFEdebugTreeTask.cxx:145 AliHFEdebugTreeTask.cxx:146 AliHFEdebugTreeTask.cxx:147 AliHFEdebugTreeTask.cxx:148 AliHFEdebugTreeTask.cxx:149 AliHFEdebugTreeTask.cxx:150 AliHFEdebugTreeTask.cxx:151 AliHFEdebugTreeTask.cxx:152 AliHFEdebugTreeTask.cxx:153 AliHFEdebugTreeTask.cxx:154 AliHFEdebugTreeTask.cxx:155 AliHFEdebugTreeTask.cxx:156 AliHFEdebugTreeTask.cxx:157 AliHFEdebugTreeTask.cxx:158 AliHFEdebugTreeTask.cxx:159 AliHFEdebugTreeTask.cxx:160 AliHFEdebugTreeTask.cxx:161 AliHFEdebugTreeTask.cxx:162 AliHFEdebugTreeTask.cxx:163 AliHFEdebugTreeTask.cxx:164 AliHFEdebugTreeTask.cxx:165 AliHFEdebugTreeTask.cxx:166 AliHFEdebugTreeTask.cxx:167 AliHFEdebugTreeTask.cxx:168 AliHFEdebugTreeTask.cxx:169 AliHFEdebugTreeTask.cxx:170 AliHFEdebugTreeTask.cxx:171 AliHFEdebugTreeTask.cxx:172 AliHFEdebugTreeTask.cxx:173 AliHFEdebugTreeTask.cxx:174 AliHFEdebugTreeTask.cxx:175 AliHFEdebugTreeTask.cxx:176 AliHFEdebugTreeTask.cxx:177 AliHFEdebugTreeTask.cxx:178 AliHFEdebugTreeTask.cxx:179 AliHFEdebugTreeTask.cxx:180 AliHFEdebugTreeTask.cxx:181 AliHFEdebugTreeTask.cxx:182 AliHFEdebugTreeTask.cxx:183 AliHFEdebugTreeTask.cxx:184 AliHFEdebugTreeTask.cxx:185 AliHFEdebugTreeTask.cxx:186 AliHFEdebugTreeTask.cxx:187 AliHFEdebugTreeTask.cxx:188 AliHFEdebugTreeTask.cxx:189 AliHFEdebugTreeTask.cxx:190 AliHFEdebugTreeTask.cxx:191 AliHFEdebugTreeTask.cxx:192 AliHFEdebugTreeTask.cxx:193 AliHFEdebugTreeTask.cxx:194 AliHFEdebugTreeTask.cxx:195 AliHFEdebugTreeTask.cxx:196 AliHFEdebugTreeTask.cxx:197 AliHFEdebugTreeTask.cxx:198 AliHFEdebugTreeTask.cxx:199 AliHFEdebugTreeTask.cxx:200 AliHFEdebugTreeTask.cxx:201 AliHFEdebugTreeTask.cxx:202 AliHFEdebugTreeTask.cxx:203 AliHFEdebugTreeTask.cxx:204 AliHFEdebugTreeTask.cxx:205 AliHFEdebugTreeTask.cxx:206 AliHFEdebugTreeTask.cxx:207 AliHFEdebugTreeTask.cxx:208 AliHFEdebugTreeTask.cxx:209 AliHFEdebugTreeTask.cxx:210 AliHFEdebugTreeTask.cxx:211 AliHFEdebugTreeTask.cxx:212 AliHFEdebugTreeTask.cxx:213 AliHFEdebugTreeTask.cxx:214 AliHFEdebugTreeTask.cxx:215 AliHFEdebugTreeTask.cxx:216 AliHFEdebugTreeTask.cxx:217 AliHFEdebugTreeTask.cxx:218 AliHFEdebugTreeTask.cxx:219 AliHFEdebugTreeTask.cxx:220 AliHFEdebugTreeTask.cxx:221 AliHFEdebugTreeTask.cxx:222 AliHFEdebugTreeTask.cxx:223 AliHFEdebugTreeTask.cxx:224 AliHFEdebugTreeTask.cxx:225 AliHFEdebugTreeTask.cxx:226 AliHFEdebugTreeTask.cxx:227 AliHFEdebugTreeTask.cxx:228 AliHFEdebugTreeTask.cxx:229 AliHFEdebugTreeTask.cxx:230 AliHFEdebugTreeTask.cxx:231 AliHFEdebugTreeTask.cxx:232 AliHFEdebugTreeTask.cxx:233 AliHFEdebugTreeTask.cxx:234 AliHFEdebugTreeTask.cxx:235 AliHFEdebugTreeTask.cxx:236 AliHFEdebugTreeTask.cxx:237 AliHFEdebugTreeTask.cxx:238 AliHFEdebugTreeTask.cxx:239 AliHFEdebugTreeTask.cxx:240 AliHFEdebugTreeTask.cxx:241 AliHFEdebugTreeTask.cxx:242 AliHFEdebugTreeTask.cxx:243 AliHFEdebugTreeTask.cxx:244 AliHFEdebugTreeTask.cxx:245 AliHFEdebugTreeTask.cxx:246 AliHFEdebugTreeTask.cxx:247 AliHFEdebugTreeTask.cxx:248 AliHFEdebugTreeTask.cxx:249 AliHFEdebugTreeTask.cxx:250 AliHFEdebugTreeTask.cxx:251 AliHFEdebugTreeTask.cxx:252 AliHFEdebugTreeTask.cxx:253 AliHFEdebugTreeTask.cxx:254 AliHFEdebugTreeTask.cxx:255 AliHFEdebugTreeTask.cxx:256 AliHFEdebugTreeTask.cxx:257 AliHFEdebugTreeTask.cxx:258 AliHFEdebugTreeTask.cxx:259 AliHFEdebugTreeTask.cxx:260 AliHFEdebugTreeTask.cxx:261 AliHFEdebugTreeTask.cxx:262 AliHFEdebugTreeTask.cxx:263 AliHFEdebugTreeTask.cxx:264 AliHFEdebugTreeTask.cxx:265 AliHFEdebugTreeTask.cxx:266 AliHFEdebugTreeTask.cxx:267 AliHFEdebugTreeTask.cxx:268 AliHFEdebugTreeTask.cxx:269 AliHFEdebugTreeTask.cxx:270 AliHFEdebugTreeTask.cxx:271 AliHFEdebugTreeTask.cxx:272 AliHFEdebugTreeTask.cxx:273 AliHFEdebugTreeTask.cxx:274 AliHFEdebugTreeTask.cxx:275 AliHFEdebugTreeTask.cxx:276 AliHFEdebugTreeTask.cxx:277 AliHFEdebugTreeTask.cxx:278 AliHFEdebugTreeTask.cxx:279 AliHFEdebugTreeTask.cxx:280 AliHFEdebugTreeTask.cxx:281 AliHFEdebugTreeTask.cxx:282 AliHFEdebugTreeTask.cxx:283 AliHFEdebugTreeTask.cxx:284 AliHFEdebugTreeTask.cxx:285 AliHFEdebugTreeTask.cxx:286 AliHFEdebugTreeTask.cxx:287 AliHFEdebugTreeTask.cxx:288 AliHFEdebugTreeTask.cxx:289 AliHFEdebugTreeTask.cxx:290 AliHFEdebugTreeTask.cxx:291 AliHFEdebugTreeTask.cxx:292 AliHFEdebugTreeTask.cxx:293 AliHFEdebugTreeTask.cxx:294 AliHFEdebugTreeTask.cxx:295 AliHFEdebugTreeTask.cxx:296 AliHFEdebugTreeTask.cxx:297 AliHFEdebugTreeTask.cxx:298 AliHFEdebugTreeTask.cxx:299 AliHFEdebugTreeTask.cxx:300 AliHFEdebugTreeTask.cxx:301 AliHFEdebugTreeTask.cxx:302 AliHFEdebugTreeTask.cxx:303 AliHFEdebugTreeTask.cxx:304 AliHFEdebugTreeTask.cxx:305 AliHFEdebugTreeTask.cxx:306 AliHFEdebugTreeTask.cxx:307 AliHFEdebugTreeTask.cxx:308 AliHFEdebugTreeTask.cxx:309 AliHFEdebugTreeTask.cxx:310 AliHFEdebugTreeTask.cxx:311 AliHFEdebugTreeTask.cxx:312 AliHFEdebugTreeTask.cxx:313 AliHFEdebugTreeTask.cxx:314 AliHFEdebugTreeTask.cxx:315 AliHFEdebugTreeTask.cxx:316 AliHFEdebugTreeTask.cxx:317 AliHFEdebugTreeTask.cxx:318 AliHFEdebugTreeTask.cxx:319 AliHFEdebugTreeTask.cxx:320 AliHFEdebugTreeTask.cxx:321 AliHFEdebugTreeTask.cxx:322 AliHFEdebugTreeTask.cxx:323 AliHFEdebugTreeTask.cxx:324 AliHFEdebugTreeTask.cxx:325 AliHFEdebugTreeTask.cxx:326 AliHFEdebugTreeTask.cxx:327 AliHFEdebugTreeTask.cxx:328 AliHFEdebugTreeTask.cxx:329 AliHFEdebugTreeTask.cxx:330 AliHFEdebugTreeTask.cxx:331 AliHFEdebugTreeTask.cxx:332 AliHFEdebugTreeTask.cxx:333 AliHFEdebugTreeTask.cxx:334 AliHFEdebugTreeTask.cxx:335 AliHFEdebugTreeTask.cxx:336 AliHFEdebugTreeTask.cxx:337 AliHFEdebugTreeTask.cxx:338 AliHFEdebugTreeTask.cxx:339 AliHFEdebugTreeTask.cxx:340 AliHFEdebugTreeTask.cxx:341 AliHFEdebugTreeTask.cxx:342 AliHFEdebugTreeTask.cxx:343 AliHFEdebugTreeTask.cxx:344 AliHFEdebugTreeTask.cxx:345 AliHFEdebugTreeTask.cxx:346 AliHFEdebugTreeTask.cxx:347 AliHFEdebugTreeTask.cxx:348 AliHFEdebugTreeTask.cxx:349 AliHFEdebugTreeTask.cxx:350 AliHFEdebugTreeTask.cxx:351 AliHFEdebugTreeTask.cxx:352 AliHFEdebugTreeTask.cxx:353 AliHFEdebugTreeTask.cxx:354 AliHFEdebugTreeTask.cxx:355 AliHFEdebugTreeTask.cxx:356 AliHFEdebugTreeTask.cxx:357 AliHFEdebugTreeTask.cxx:358 AliHFEdebugTreeTask.cxx:359 AliHFEdebugTreeTask.cxx:360 AliHFEdebugTreeTask.cxx:361 AliHFEdebugTreeTask.cxx:362 AliHFEdebugTreeTask.cxx:363 AliHFEdebugTreeTask.cxx:364 AliHFEdebugTreeTask.cxx:365 AliHFEdebugTreeTask.cxx:366 AliHFEdebugTreeTask.cxx:367 AliHFEdebugTreeTask.cxx:368 AliHFEdebugTreeTask.cxx:369 AliHFEdebugTreeTask.cxx:370 AliHFEdebugTreeTask.cxx:371 AliHFEdebugTreeTask.cxx:372 AliHFEdebugTreeTask.cxx:373 AliHFEdebugTreeTask.cxx:374 AliHFEdebugTreeTask.cxx:375 AliHFEdebugTreeTask.cxx:376 AliHFEdebugTreeTask.cxx:377 AliHFEdebugTreeTask.cxx:378 AliHFEdebugTreeTask.cxx:379 AliHFEdebugTreeTask.cxx:380 AliHFEdebugTreeTask.cxx:381 AliHFEdebugTreeTask.cxx:382 AliHFEdebugTreeTask.cxx:383 AliHFEdebugTreeTask.cxx:384 AliHFEdebugTreeTask.cxx:385 AliHFEdebugTreeTask.cxx:386 AliHFEdebugTreeTask.cxx:387 AliHFEdebugTreeTask.cxx:388 AliHFEdebugTreeTask.cxx:389 AliHFEdebugTreeTask.cxx:390 AliHFEdebugTreeTask.cxx:391 AliHFEdebugTreeTask.cxx:392 AliHFEdebugTreeTask.cxx:393 AliHFEdebugTreeTask.cxx:394 AliHFEdebugTreeTask.cxx:395 AliHFEdebugTreeTask.cxx:396 AliHFEdebugTreeTask.cxx:397 AliHFEdebugTreeTask.cxx:398 AliHFEdebugTreeTask.cxx:399 AliHFEdebugTreeTask.cxx:400 AliHFEdebugTreeTask.cxx:401 AliHFEdebugTreeTask.cxx:402 AliHFEdebugTreeTask.cxx:403 AliHFEdebugTreeTask.cxx:404 AliHFEdebugTreeTask.cxx:405 AliHFEdebugTreeTask.cxx:406 AliHFEdebugTreeTask.cxx:407 AliHFEdebugTreeTask.cxx:408 AliHFEdebugTreeTask.cxx:409 AliHFEdebugTreeTask.cxx:410 AliHFEdebugTreeTask.cxx:411 AliHFEdebugTreeTask.cxx:412 AliHFEdebugTreeTask.cxx:413 AliHFEdebugTreeTask.cxx:414 AliHFEdebugTreeTask.cxx:415 AliHFEdebugTreeTask.cxx:416 AliHFEdebugTreeTask.cxx:417 AliHFEdebugTreeTask.cxx:418 AliHFEdebugTreeTask.cxx:419 AliHFEdebugTreeTask.cxx:420 AliHFEdebugTreeTask.cxx:421 AliHFEdebugTreeTask.cxx:422 AliHFEdebugTreeTask.cxx:423 AliHFEdebugTreeTask.cxx:424 AliHFEdebugTreeTask.cxx:425 AliHFEdebugTreeTask.cxx:426 AliHFEdebugTreeTask.cxx:427 AliHFEdebugTreeTask.cxx:428 AliHFEdebugTreeTask.cxx:429 AliHFEdebugTreeTask.cxx:430 AliHFEdebugTreeTask.cxx:431 AliHFEdebugTreeTask.cxx:432 AliHFEdebugTreeTask.cxx:433 AliHFEdebugTreeTask.cxx:434 AliHFEdebugTreeTask.cxx:435 AliHFEdebugTreeTask.cxx:436 AliHFEdebugTreeTask.cxx:437 AliHFEdebugTreeTask.cxx:438 AliHFEdebugTreeTask.cxx:439 AliHFEdebugTreeTask.cxx:440 AliHFEdebugTreeTask.cxx:441 AliHFEdebugTreeTask.cxx:442 AliHFEdebugTreeTask.cxx:443 AliHFEdebugTreeTask.cxx:444 AliHFEdebugTreeTask.cxx:445 AliHFEdebugTreeTask.cxx:446 AliHFEdebugTreeTask.cxx:447 AliHFEdebugTreeTask.cxx:448 AliHFEdebugTreeTask.cxx:449 AliHFEdebugTreeTask.cxx:450 AliHFEdebugTreeTask.cxx:451 AliHFEdebugTreeTask.cxx:452 AliHFEdebugTreeTask.cxx:453 AliHFEdebugTreeTask.cxx:454 AliHFEdebugTreeTask.cxx:455 AliHFEdebugTreeTask.cxx:456 AliHFEdebugTreeTask.cxx:457 AliHFEdebugTreeTask.cxx:458 AliHFEdebugTreeTask.cxx:459 AliHFEdebugTreeTask.cxx:460 AliHFEdebugTreeTask.cxx:461 AliHFEdebugTreeTask.cxx:462 AliHFEdebugTreeTask.cxx:463 AliHFEdebugTreeTask.cxx:464 AliHFEdebugTreeTask.cxx:465 AliHFEdebugTreeTask.cxx:466 AliHFEdebugTreeTask.cxx:467 AliHFEdebugTreeTask.cxx:468 AliHFEdebugTreeTask.cxx:469 AliHFEdebugTreeTask.cxx:470 AliHFEdebugTreeTask.cxx:471 AliHFEdebugTreeTask.cxx:472 AliHFEdebugTreeTask.cxx:473 AliHFEdebugTreeTask.cxx:474 AliHFEdebugTreeTask.cxx:475 AliHFEdebugTreeTask.cxx:476 AliHFEdebugTreeTask.cxx:477 AliHFEdebugTreeTask.cxx:478 AliHFEdebugTreeTask.cxx:479 AliHFEdebugTreeTask.cxx:480 AliHFEdebugTreeTask.cxx:481 AliHFEdebugTreeTask.cxx:482 AliHFEdebugTreeTask.cxx:483 AliHFEdebugTreeTask.cxx:484 AliHFEdebugTreeTask.cxx:485 AliHFEdebugTreeTask.cxx:486 AliHFEdebugTreeTask.cxx:487 AliHFEdebugTreeTask.cxx:488 AliHFEdebugTreeTask.cxx:489 AliHFEdebugTreeTask.cxx:490 AliHFEdebugTreeTask.cxx:491 AliHFEdebugTreeTask.cxx:492 AliHFEdebugTreeTask.cxx:493 AliHFEdebugTreeTask.cxx:494 AliHFEdebugTreeTask.cxx:495 AliHFEdebugTreeTask.cxx:496 AliHFEdebugTreeTask.cxx:497 AliHFEdebugTreeTask.cxx:498 AliHFEdebugTreeTask.cxx:499 AliHFEdebugTreeTask.cxx:500 AliHFEdebugTreeTask.cxx:501 AliHFEdebugTreeTask.cxx:502 AliHFEdebugTreeTask.cxx:503 AliHFEdebugTreeTask.cxx:504 AliHFEdebugTreeTask.cxx:505 AliHFEdebugTreeTask.cxx:506 AliHFEdebugTreeTask.cxx:507 AliHFEdebugTreeTask.cxx:508 AliHFEdebugTreeTask.cxx:509 AliHFEdebugTreeTask.cxx:510 AliHFEdebugTreeTask.cxx:511 AliHFEdebugTreeTask.cxx:512 AliHFEdebugTreeTask.cxx:513 AliHFEdebugTreeTask.cxx:514 AliHFEdebugTreeTask.cxx:515 AliHFEdebugTreeTask.cxx:516 AliHFEdebugTreeTask.cxx:517 AliHFEdebugTreeTask.cxx:518 AliHFEdebugTreeTask.cxx:519 AliHFEdebugTreeTask.cxx:520 AliHFEdebugTreeTask.cxx:521 AliHFEdebugTreeTask.cxx:522 AliHFEdebugTreeTask.cxx:523 AliHFEdebugTreeTask.cxx:524 AliHFEdebugTreeTask.cxx:525 AliHFEdebugTreeTask.cxx:526 AliHFEdebugTreeTask.cxx:527 AliHFEdebugTreeTask.cxx:528 AliHFEdebugTreeTask.cxx:529 AliHFEdebugTreeTask.cxx:530 AliHFEdebugTreeTask.cxx:531 AliHFEdebugTreeTask.cxx:532 AliHFEdebugTreeTask.cxx:533 AliHFEdebugTreeTask.cxx:534 AliHFEdebugTreeTask.cxx:535 AliHFEdebugTreeTask.cxx:536 AliHFEdebugTreeTask.cxx:537 AliHFEdebugTreeTask.cxx:538 AliHFEdebugTreeTask.cxx:539 AliHFEdebugTreeTask.cxx:540 AliHFEdebugTreeTask.cxx:541 AliHFEdebugTreeTask.cxx:542 AliHFEdebugTreeTask.cxx:543 AliHFEdebugTreeTask.cxx:544 AliHFEdebugTreeTask.cxx:545 AliHFEdebugTreeTask.cxx:546 AliHFEdebugTreeTask.cxx:547 AliHFEdebugTreeTask.cxx:548 AliHFEdebugTreeTask.cxx:549 AliHFEdebugTreeTask.cxx:550 AliHFEdebugTreeTask.cxx:551 AliHFEdebugTreeTask.cxx:552 AliHFEdebugTreeTask.cxx:553 AliHFEdebugTreeTask.cxx:554 AliHFEdebugTreeTask.cxx:555 AliHFEdebugTreeTask.cxx:556 AliHFEdebugTreeTask.cxx:557 AliHFEdebugTreeTask.cxx:558 AliHFEdebugTreeTask.cxx:559 AliHFEdebugTreeTask.cxx:560 AliHFEdebugTreeTask.cxx:561 AliHFEdebugTreeTask.cxx:562 AliHFEdebugTreeTask.cxx:563 AliHFEdebugTreeTask.cxx:564 AliHFEdebugTreeTask.cxx:565 AliHFEdebugTreeTask.cxx:566 AliHFEdebugTreeTask.cxx:567 AliHFEdebugTreeTask.cxx:568 AliHFEdebugTreeTask.cxx:569 AliHFEdebugTreeTask.cxx:570 AliHFEdebugTreeTask.cxx:571 AliHFEdebugTreeTask.cxx:572 AliHFEdebugTreeTask.cxx:573 AliHFEdebugTreeTask.cxx:574 AliHFEdebugTreeTask.cxx:575 AliHFEdebugTreeTask.cxx:576 AliHFEdebugTreeTask.cxx:577 AliHFEdebugTreeTask.cxx:578 AliHFEdebugTreeTask.cxx:579 AliHFEdebugTreeTask.cxx:580 AliHFEdebugTreeTask.cxx:581 AliHFEdebugTreeTask.cxx:582 AliHFEdebugTreeTask.cxx:583 AliHFEdebugTreeTask.cxx:584 AliHFEdebugTreeTask.cxx:585 AliHFEdebugTreeTask.cxx:586 AliHFEdebugTreeTask.cxx:587 AliHFEdebugTreeTask.cxx:588 AliHFEdebugTreeTask.cxx:589 AliHFEdebugTreeTask.cxx:590 AliHFEdebugTreeTask.cxx:591 AliHFEdebugTreeTask.cxx:592 AliHFEdebugTreeTask.cxx:593 AliHFEdebugTreeTask.cxx:594 AliHFEdebugTreeTask.cxx:595 AliHFEdebugTreeTask.cxx:596 AliHFEdebugTreeTask.cxx:597 AliHFEdebugTreeTask.cxx:598 AliHFEdebugTreeTask.cxx:599 AliHFEdebugTreeTask.cxx:600 AliHFEdebugTreeTask.cxx:601 AliHFEdebugTreeTask.cxx:602 AliHFEdebugTreeTask.cxx:603 AliHFEdebugTreeTask.cxx:604 AliHFEdebugTreeTask.cxx:605 AliHFEdebugTreeTask.cxx:606 AliHFEdebugTreeTask.cxx:607 AliHFEdebugTreeTask.cxx:608 AliHFEdebugTreeTask.cxx:609 AliHFEdebugTreeTask.cxx:610 AliHFEdebugTreeTask.cxx:611 AliHFEdebugTreeTask.cxx:612 AliHFEdebugTreeTask.cxx:613 AliHFEdebugTreeTask.cxx:614 AliHFEdebugTreeTask.cxx:615 AliHFEdebugTreeTask.cxx:616 AliHFEdebugTreeTask.cxx:617 AliHFEdebugTreeTask.cxx:618 AliHFEdebugTreeTask.cxx:619 AliHFEdebugTreeTask.cxx:620 AliHFEdebugTreeTask.cxx:621 AliHFEdebugTreeTask.cxx:622 AliHFEdebugTreeTask.cxx:623 AliHFEdebugTreeTask.cxx:624 AliHFEdebugTreeTask.cxx:625 AliHFEdebugTreeTask.cxx:626 AliHFEdebugTreeTask.cxx:627 AliHFEdebugTreeTask.cxx:628 AliHFEdebugTreeTask.cxx:629 AliHFEdebugTreeTask.cxx:630 AliHFEdebugTreeTask.cxx:631 AliHFEdebugTreeTask.cxx:632 AliHFEdebugTreeTask.cxx:633 AliHFEdebugTreeTask.cxx:634 AliHFEdebugTreeTask.cxx:635 AliHFEdebugTreeTask.cxx:636 AliHFEdebugTreeTask.cxx:637 AliHFEdebugTreeTask.cxx:638 AliHFEdebugTreeTask.cxx:639 AliHFEdebugTreeTask.cxx:640 AliHFEdebugTreeTask.cxx:641 AliHFEdebugTreeTask.cxx:642 AliHFEdebugTreeTask.cxx:643 AliHFEdebugTreeTask.cxx:644 AliHFEdebugTreeTask.cxx:645 AliHFEdebugTreeTask.cxx:646 AliHFEdebugTreeTask.cxx:647 AliHFEdebugTreeTask.cxx:648 AliHFEdebugTreeTask.cxx:649 AliHFEdebugTreeTask.cxx:650 AliHFEdebugTreeTask.cxx:651 AliHFEdebugTreeTask.cxx:652 AliHFEdebugTreeTask.cxx:653 AliHFEdebugTreeTask.cxx:654 AliHFEdebugTreeTask.cxx:655 AliHFEdebugTreeTask.cxx:656 AliHFEdebugTreeTask.cxx:657 AliHFEdebugTreeTask.cxx:658 AliHFEdebugTreeTask.cxx:659 AliHFEdebugTreeTask.cxx:660 AliHFEdebugTreeTask.cxx:661 AliHFEdebugTreeTask.cxx:662 AliHFEdebugTreeTask.cxx:663 AliHFEdebugTreeTask.cxx:664 AliHFEdebugTreeTask.cxx:665 AliHFEdebugTreeTask.cxx:666 AliHFEdebugTreeTask.cxx:667 AliHFEdebugTreeTask.cxx:668 AliHFEdebugTreeTask.cxx:669 AliHFEdebugTreeTask.cxx:670 AliHFEdebugTreeTask.cxx:671 AliHFEdebugTreeTask.cxx:672 AliHFEdebugTreeTask.cxx:673 AliHFEdebugTreeTask.cxx:674 AliHFEdebugTreeTask.cxx:675 AliHFEdebugTreeTask.cxx:676 AliHFEdebugTreeTask.cxx:677 AliHFEdebugTreeTask.cxx:678 AliHFEdebugTreeTask.cxx:679 AliHFEdebugTreeTask.cxx:680 AliHFEdebugTreeTask.cxx:681 AliHFEdebugTreeTask.cxx:682 AliHFEdebugTreeTask.cxx:683 AliHFEdebugTreeTask.cxx:684 AliHFEdebugTreeTask.cxx:685 AliHFEdebugTreeTask.cxx:686 AliHFEdebugTreeTask.cxx:687 AliHFEdebugTreeTask.cxx:688 AliHFEdebugTreeTask.cxx:689 AliHFEdebugTreeTask.cxx:690 AliHFEdebugTreeTask.cxx:691 AliHFEdebugTreeTask.cxx:692 AliHFEdebugTreeTask.cxx:693 AliHFEdebugTreeTask.cxx:694 AliHFEdebugTreeTask.cxx:695 AliHFEdebugTreeTask.cxx:696 AliHFEdebugTreeTask.cxx:697 AliHFEdebugTreeTask.cxx:698 AliHFEdebugTreeTask.cxx:699 AliHFEdebugTreeTask.cxx:700 AliHFEdebugTreeTask.cxx:701 AliHFEdebugTreeTask.cxx:702 AliHFEdebugTreeTask.cxx:703 AliHFEdebugTreeTask.cxx:704 AliHFEdebugTreeTask.cxx:705 AliHFEdebugTreeTask.cxx:706 AliHFEdebugTreeTask.cxx:707 AliHFEdebugTreeTask.cxx:708 AliHFEdebugTreeTask.cxx:709 AliHFEdebugTreeTask.cxx:710 AliHFEdebugTreeTask.cxx:711 AliHFEdebugTreeTask.cxx:712 AliHFEdebugTreeTask.cxx:713 AliHFEdebugTreeTask.cxx:714 AliHFEdebugTreeTask.cxx:715 AliHFEdebugTreeTask.cxx:716 AliHFEdebugTreeTask.cxx:717 AliHFEdebugTreeTask.cxx:718 AliHFEdebugTreeTask.cxx:719 AliHFEdebugTreeTask.cxx:720 AliHFEdebugTreeTask.cxx:721 AliHFEdebugTreeTask.cxx:722 AliHFEdebugTreeTask.cxx:723 AliHFEdebugTreeTask.cxx:724 AliHFEdebugTreeTask.cxx:725 AliHFEdebugTreeTask.cxx:726 AliHFEdebugTreeTask.cxx:727 AliHFEdebugTreeTask.cxx:728 AliHFEdebugTreeTask.cxx:729 AliHFEdebugTreeTask.cxx:730 AliHFEdebugTreeTask.cxx:731 AliHFEdebugTreeTask.cxx:732 AliHFEdebugTreeTask.cxx:733 AliHFEdebugTreeTask.cxx:734 AliHFEdebugTreeTask.cxx:735 AliHFEdebugTreeTask.cxx:736 AliHFEdebugTreeTask.cxx:737 AliHFEdebugTreeTask.cxx:738 AliHFEdebugTreeTask.cxx:739 AliHFEdebugTreeTask.cxx:740 AliHFEdebugTreeTask.cxx:741 AliHFEdebugTreeTask.cxx:742 AliHFEdebugTreeTask.cxx:743 AliHFEdebugTreeTask.cxx:744 AliHFEdebugTreeTask.cxx:745 AliHFEdebugTreeTask.cxx:746 AliHFEdebugTreeTask.cxx:747 AliHFEdebugTreeTask.cxx:748 AliHFEdebugTreeTask.cxx:749 AliHFEdebugTreeTask.cxx:750 AliHFEdebugTreeTask.cxx:751 AliHFEdebugTreeTask.cxx:752 AliHFEdebugTreeTask.cxx:753 AliHFEdebugTreeTask.cxx:754 AliHFEdebugTreeTask.cxx:755 AliHFEdebugTreeTask.cxx:756 AliHFEdebugTreeTask.cxx:757 AliHFEdebugTreeTask.cxx:758 AliHFEdebugTreeTask.cxx:759 AliHFEdebugTreeTask.cxx:760 AliHFEdebugTreeTask.cxx:761 AliHFEdebugTreeTask.cxx:762 AliHFEdebugTreeTask.cxx:763 AliHFEdebugTreeTask.cxx:764 AliHFEdebugTreeTask.cxx:765 AliHFEdebugTreeTask.cxx:766 AliHFEdebugTreeTask.cxx:767 AliHFEdebugTreeTask.cxx:768 AliHFEdebugTreeTask.cxx:769 AliHFEdebugTreeTask.cxx:770 AliHFEdebugTreeTask.cxx:771 AliHFEdebugTreeTask.cxx:772 AliHFEdebugTreeTask.cxx:773 AliHFEdebugTreeTask.cxx:774 AliHFEdebugTreeTask.cxx:775 AliHFEdebugTreeTask.cxx:776 AliHFEdebugTreeTask.cxx:777 AliHFEdebugTreeTask.cxx:778 AliHFEdebugTreeTask.cxx:779 AliHFEdebugTreeTask.cxx:780 AliHFEdebugTreeTask.cxx:781 AliHFEdebugTreeTask.cxx:782 AliHFEdebugTreeTask.cxx:783 AliHFEdebugTreeTask.cxx:784 AliHFEdebugTreeTask.cxx:785 AliHFEdebugTreeTask.cxx:786 AliHFEdebugTreeTask.cxx:787 AliHFEdebugTreeTask.cxx:788 AliHFEdebugTreeTask.cxx:789 AliHFEdebugTreeTask.cxx:790 AliHFEdebugTreeTask.cxx:791 AliHFEdebugTreeTask.cxx:792 AliHFEdebugTreeTask.cxx:793 AliHFEdebugTreeTask.cxx:794 AliHFEdebugTreeTask.cxx:795 AliHFEdebugTreeTask.cxx:796 AliHFEdebugTreeTask.cxx:797 AliHFEdebugTreeTask.cxx:798 AliHFEdebugTreeTask.cxx:799 AliHFEdebugTreeTask.cxx:800 AliHFEdebugTreeTask.cxx:801 AliHFEdebugTreeTask.cxx:802 AliHFEdebugTreeTask.cxx:803 AliHFEdebugTreeTask.cxx:804 AliHFEdebugTreeTask.cxx:805 AliHFEdebugTreeTask.cxx:806 AliHFEdebugTreeTask.cxx:807 AliHFEdebugTreeTask.cxx:808 AliHFEdebugTreeTask.cxx:809 AliHFEdebugTreeTask.cxx:810 AliHFEdebugTreeTask.cxx:811 AliHFEdebugTreeTask.cxx:812 AliHFEdebugTreeTask.cxx:813 AliHFEdebugTreeTask.cxx:814 AliHFEdebugTreeTask.cxx:815 AliHFEdebugTreeTask.cxx:816 AliHFEdebugTreeTask.cxx:817 AliHFEdebugTreeTask.cxx:818 AliHFEdebugTreeTask.cxx:819 AliHFEdebugTreeTask.cxx:820 AliHFEdebugTreeTask.cxx:821 AliHFEdebugTreeTask.cxx:822 AliHFEdebugTreeTask.cxx:823 AliHFEdebugTreeTask.cxx:824 AliHFEdebugTreeTask.cxx:825 AliHFEdebugTreeTask.cxx:826 AliHFEdebugTreeTask.cxx:827 AliHFEdebugTreeTask.cxx:828 AliHFEdebugTreeTask.cxx:829 AliHFEdebugTreeTask.cxx:830 AliHFEdebugTreeTask.cxx:831 AliHFEdebugTreeTask.cxx:832 AliHFEdebugTreeTask.cxx:833 AliHFEdebugTreeTask.cxx:834 AliHFEdebugTreeTask.cxx:835 AliHFEdebugTreeTask.cxx:836 AliHFEdebugTreeTask.cxx:837 AliHFEdebugTreeTask.cxx:838 AliHFEdebugTreeTask.cxx:839 AliHFEdebugTreeTask.cxx:840 AliHFEdebugTreeTask.cxx:841 AliHFEdebugTreeTask.cxx:842 AliHFEdebugTreeTask.cxx:843 AliHFEdebugTreeTask.cxx:844 AliHFEdebugTreeTask.cxx:845 AliHFEdebugTreeTask.cxx:846 AliHFEdebugTreeTask.cxx:847 AliHFEdebugTreeTask.cxx:848 AliHFEdebugTreeTask.cxx:849