From 4e35d3f3151f008b9260fd893cc88691e9091d9b Mon Sep 17 00:00:00 2001 From: emanuel Date: Wed, 22 Mar 2023 21:00:22 +0000 Subject: [PATCH] VCM: log number of aff vehicles --- src/vcm.c | 7 ++++++- src/vcm.h | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/vcm.c b/src/vcm.c index 8d26dad..0ffd3b4 100644 --- a/src/vcm.c +++ b/src/vcm.c @@ -267,6 +267,7 @@ static void session_cleanup() { coordination->session.requester = NULL; memset(coordination->session.affs, 0, sizeof(coordination->session.affs)); memset(coordination->session.n_affs_neighs, 0, sizeof(coordination->session.n_affs_neighs)); + coordination->session.n_affs_neighs_reqd = 0; coordination->session.n_affs_trjs = 0; } @@ -397,6 +398,7 @@ static int vcm_check_handle_request(VCM_t* vcm, mc_neighbour_s* neighbour) { coordination->session.affs[i][j] = get_neighbour(*request->desiredTrajectories.list.array[i]->affectingStations.list.array[j]); } coordination->session.n_affs_neighs[i] = request->desiredTrajectories.list.array[i]->affectingStations.list.count; + coordination->session.n_affs_neighs_reqd = coordination->session.n_affs_neighs[i]; } coordination->session.n_affs_trjs = request->desiredTrajectories.list.count; @@ -641,8 +643,9 @@ static int vcm_check_handle_reply(VCM_t* vcm, mc_neighbour_s* neighbour) { return 1; } - log_info("[vc] received VCM.reply from %d with %d accepted trajectories - session: %d | took %ld us", + log_info("[vc] received VCM.reply from %d (of %d) with %d accepted trajectories - session: %d | took %ld us", vcm->header.stationID, + coordination->session.n_affs_neighs_reqd, reply->acceptedTrajectoriesIds.list.count, coordination->session.nonce, now_us-neighbour->t_iid); @@ -852,6 +855,7 @@ static int intersection_detected(VCM_t* vcm, mc_neighbour_s* neighbour) { coordination->session.ts = now; coordination->session.n_affs_trjs = 1; coordination->session.n_affs_neighs[0] = n_intneigh; + coordination->session.n_affs_neighs_reqd = n_intneigh; memcpy(coordination->session.affs[0], intneigh, sizeof(intneigh)); tx_vcm(vcm_req); @@ -993,6 +997,7 @@ int vcm_check(VCM_t* vcm) { coordination->session.ts = now; memset(coordination->session.affs, 0, sizeof(coordination->session.affs)); memset(coordination->session.n_affs_neighs, 0, sizeof(coordination->session.n_affs_neighs)); + coordination->session.n_affs_neighs_reqd = 0; coordination->session.n_affs_trjs = 0; } diff --git a/src/vcm.h b/src/vcm.h index be3bf21..2f641fb 100644 --- a/src/vcm.h +++ b/src/vcm.h @@ -63,6 +63,7 @@ typedef struct coordination { mc_neighbour_s* affs[MC_TRAJECTORIES_N_MAX][MC_AFF_STATIONS_N_MAX]; /* trjs over affected stations */ uint8_t n_affs_trjs; uint8_t n_affs_neighs[MC_TRAJECTORIES_N_MAX]; + uint8_t n_affs_neighs_reqd; } session;