You need to add the mc track associator for the forward ideal tracker and to uncomment the correlated line in the kalman task:
PndFtsTrackerIdeal* trackFts = new PndFtsTrackerIdeal();
trackFts->SetRelativeMomentumSmearing(0.05);
trackFts->SetVertexSmearing(0.05, 0.05, 0.05);
trackFts->SetTrackingEfficiency(1.);
trackFts->SetTrackOutput("FtsIdealTrack");
fRun->AddTask(trackFts);
->PndMCTrackAssociator* trackMCfwd = new PndMCTrackAssociator();
->trackMCfwd->SetTrackInBranchName("FtsIdealTrack");
->trackMCfwd->SetTrackOutBranchName("FtsIdealTrackID");
->fRun->AddTask(trackMCfwd);
PndRecoKalmanTask* recoKalmanFwd = new PndRecoKalmanTask();
recoKalmanFwd->SetTrackInBranchName("FtsIdealTrack");
->recoKalmanFwd->SetTrackInIDBranchName("FtsIdealTrackID");
recoKalmanFwd->SetTrackOutBranchName("FtsIdealGenTrack");
recoKalmanFwd->SetBusyCut(50); // CHECK to be tuned
recoKalmanFwd->SetIdealHyp(kTRUE);
//recoKalmanFwd->SetNumIterations(3);
fRun->AddTask(recoKalmanFwd);
Remember to switch on the idealhyp also for the barrel kalman task:
recoKalman->SetIdealHyp(kTRUE);
The default macros in macro/run have such modification (but idealhyp set to kFALSE)