{
// Load ESD event
AliESDEvent* esd = dynamic_cast<AliESDEvent*>(InputEvent());
+ if (!esd) {
+ AliError("Cannot get input event");
+ return;
+ }
// Load MC event
AliMCEventHandler *mcH = 0;
// Load ESD event
AliESDEvent* esd = dynamic_cast<AliESDEvent*>(InputEvent());
+ if (!esd) {
+ AliError("Cannot get input event");
+ return;
+ }
// Load MC event
AliMCEventHandler *mcH = 0;
// find the corresponding ESD MUON track
AliESDEvent* esd = dynamic_cast<AliESDEvent*>(InputEvent());
+ if (!esd) {
+ AliError("Cannot get input event");
+ return nFreeMissingTracks;
+ }
TIter next3(static_cast<TClonesArray*>(esd->FindListObject("MuonTracks")));
AliESDMuonTrack* esdTrack = 0x0;
while ((esdTrack = static_cast<AliESDMuonTrack*>(next3())) && esdTrack->GetUniqueID() != connectedFake->GetUniqueID()) {}
AliMUONTrackParam* trackParam = static_cast<AliMUONTrackParam*>(track.GetTrackParamAtCluster()->UncheckedAt(iCluster));
AliMUONTrackParam* previousTrackParam = static_cast<AliMUONTrackParam*>(track.GetTrackParamAtCluster()->Before(trackParam));
AliMUONTrackParam* nextTrackParam = static_cast<AliMUONTrackParam*>(track.GetTrackParamAtCluster()->After(trackParam));
+ if (!previousTrackParam && !nextTrackParam) {
+ AliError(Form("unable to find a cluster neither before nor after the one at position %d !?!", iCluster));
+ track.RecursiveDump();
+ break;
+ }
// save current trackParam and remove it from the track
AliMUONTrackParam currentTrackParam(*trackParam);