]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG/muon/AliAnalysisTaskLinkToMC.cxx
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWG / muon / AliAnalysisTaskLinkToMC.cxx
index cab2039a09a86ed511f36c95c4d7feb149fb951c..49f57ce9f450988f3db7a7d25b043ad5865e8987 100644 (file)
@@ -583,13 +583,14 @@ void AliAnalysisTaskLinkToMC::CreateAODTracks(TMap& links)
        // Define arrays for muons
        Double_t pos[3];
        Double_t p[3];
-       Double_t pid[10];
+       //      Double_t pid[10];
        
        // has to be changed once the muon pid is provided by the ESD
-       for (Int_t i = 0; i < 10; pid[i++] = 0.) {}
-       pid[AliAODTrack::kMuon]=1.;
+       // for (Int_t i = 0; i < 10; pid[i++] = 0.) {}
+       // pid[AliAODTrack::kMuon]=1.;
        
-       AliAODHeader* header = AODEvent()->GetHeader();
+       AliAODHeader* header = dynamic_cast<AliAODHeader*>(AODEvent()->GetHeader());
+       if(!header) AliFatal("Not a standard AOD");
        AliAODTrack *aodTrack = 0x0;
        AliESDMuonTrack *esdMuTrack = 0x0;
        
@@ -647,7 +648,7 @@ void AliAnalysisTaskLinkToMC::CreateAODTracks(TMap& links)
                                0x0, // covariance matrix
                                esdMuTrack->Charge(), // charge
                                0, // ITSClusterMap
-                               pid, // pid
+                               // pid, // pid
                                primary, // primary vertex
                                kFALSE, // used for vertex fit?
                                kFALSE, // used for primary vertex fit?
@@ -655,6 +656,7 @@ void AliAnalysisTaskLinkToMC::CreateAODTracks(TMap& links)
                                selectInfo
                        );
                
+               aodTrack->SetPIDForTracking(AliPID::kMuon);
                aodTrack->SetXYAtDCA(esdMuTrack->GetNonBendingCoorAtDCA(), esdMuTrack->GetBendingCoorAtDCA());
                aodTrack->SetPxPyPzAtDCA(esdMuTrack->PxAtDCA(), esdMuTrack->PyAtDCA(), esdMuTrack->PzAtDCA());
                aodTrack->ConvertAliPIDtoAODPID();
@@ -840,7 +842,7 @@ void AliAnalysisTaskLinkToMC::CalculateTrackCompatibility(
        
        for (Int_t i = 0; i < esdTrack->GetNClusters(); i++)
        {
-               AliESDMuonCluster* cluster = static_cast<AliESDMuonCluster*>( esdTrack->GetClusters()[i] );
+               AliESDMuonCluster* cluster = esdTrack->GetESDEvent()->FindMuonCluster(esdTrack->GetClusterId(i));
                Double_t varX = cluster->GetErrX2();
                Double_t varY = cluster->GetErrY2();
                // If the variance is zero then use the default one or just 1