54 lines
1.3 KiB
Prolog
54 lines
1.3 KiB
Prolog
PRO mtt_sts_rec, mtt_sts_recorder_t
|
|
|
|
ROBS_MTT_TRACK_STATE_REC_NUM=16
|
|
|
|
robs_mtt_istance_state_t = { $
|
|
unique_id: 0L, $; //id univoca, sarà uguale a active_trk_id quando è l'istanza attiva
|
|
valid: 0L, $ //0=non valida, 1=valida
|
|
vuoto: lonarr(8) $
|
|
}
|
|
|
|
robs_mtt_track_state_t= $
|
|
{ $
|
|
num_tracks: 0L, $
|
|
num_pending: 0L, $
|
|
phase: 0L, $ //0=search, 1=confirm, 2=revisit
|
|
active_stt_instance: 0L, $ //0..MAX_TRACKS, istanza STT
|
|
active_trk_id: 0L, $ //0..infinito, udentificare di track univoco (+1 per ogni nuovo track
|
|
vuoto0: lonarr(8), $
|
|
states: replicate(robs_mtt_istance_state_t,ROBS_MTT_TRACK_STATE_REC_NUM), $; //per ogni istanza di STT
|
|
vuoto1: lonarr(8) $
|
|
}
|
|
|
|
MAX_TRACKS=10
|
|
MAX_PENDING_DETECTIONS=256
|
|
MAX_DETS_PER_BATCH=8
|
|
|
|
track_association_result_t= $
|
|
{$
|
|
associated: 0L,$
|
|
degree: 0L,$
|
|
det_id: 0L $
|
|
}
|
|
|
|
degree_associations_t= $
|
|
{ $
|
|
m: FLTARR(MAX_TRACKS,MAX_DETS_PER_BATCH), $;// [MAX_NO_OF_TGT_DETECTIONS];
|
|
best_associated: REPLICATE(track_association_result_t, MAX_TRACKS) $;
|
|
}
|
|
|
|
association_results_t= $
|
|
{ $
|
|
track_id_versus_observation_id: LONARR(MAX_TRACKS,2), $
|
|
unassociated_observation_id: LONARR(MAX_DETS_PER_BATCH), $
|
|
number_of_unassociated_observation: 0l, $
|
|
degree_associations: degree_associations_t $
|
|
};
|
|
|
|
mtt_sts_recorder_t = $
|
|
{ $
|
|
STS: robs_mtt_track_state_t, $
|
|
ass: association_results_t $
|
|
}
|
|
|
|
END |