DCM acceptedTrajectoriesIds
This commit is contained in:
parent
e21ad9ee0f
commit
f17838cdca
26
src/dcm.c
26
src/dcm.c
|
|
@ -109,25 +109,11 @@ static int dcm_check_handle_request(facilities_t* facilities, DCM_t* dcm) {
|
|||
|
||||
dcm_rep->dcm.negotiation = calloc(1, sizeof(CoordinationNegotiation_t));
|
||||
dcm_rep->dcm.negotiation->present = CoordinationNegotiation_PR_reply;
|
||||
dcm_rep->dcm.negotiation->choice.reply.acceptedTrajectories.list.count = 1;
|
||||
dcm_rep->dcm.negotiation->choice.reply.acceptedTrajectories.list.size = sizeof(void*);
|
||||
dcm_rep->dcm.negotiation->choice.reply.acceptedTrajectories.list.array = malloc(1*sizeof(void*));
|
||||
dcm_rep->dcm.negotiation->choice.reply.acceptedTrajectories.list.array[0] = calloc(1,sizeof(AcceptedTrajectory_t));
|
||||
AcceptedTrajectory_t* at = dcm_rep->dcm.negotiation->choice.reply.acceptedTrajectories.list.array[0];
|
||||
|
||||
at->trajectory.list.count = pt->trajectory.list.count;
|
||||
at->trajectory.list.size = sizeof(void*) * pt->trajectory.list.count;
|
||||
at->trajectory.list.array = malloc(sizeof(void*) * pt->trajectory.list.count);
|
||||
for (int i = 0; i < pt->trajectory.list.count; ++i) {
|
||||
at->trajectory.list.array[i] = calloc(1, sizeof(STPoint_t));
|
||||
at->trajectory.list.array[i]->latitude = pt->trajectory.list.array[i]->latitude;
|
||||
at->trajectory.list.array[i]->longitude = pt->trajectory.list.array[i]->longitude;
|
||||
at->trajectory.list.array[i]->timestamp.buf = malloc(pt->trajectory.list.array[i]->timestamp.size);
|
||||
memcpy(at->trajectory.list.array[i]->timestamp.buf, pt->trajectory.list.array[i]->timestamp.buf, pt->trajectory.list.array[i]->timestamp.size);
|
||||
at->trajectory.list.array[i]->timestamp.size = pt->trajectory.list.array[i]->timestamp.size;
|
||||
}
|
||||
|
||||
at->id = pt->id;
|
||||
dcm_rep->dcm.negotiation->choice.reply.acceptedTrajectoriesIds.list.count = 1;
|
||||
dcm_rep->dcm.negotiation->choice.reply.acceptedTrajectoriesIds.list.size = sizeof(void*);
|
||||
dcm_rep->dcm.negotiation->choice.reply.acceptedTrajectoriesIds.list.array = malloc(1*sizeof(void*));
|
||||
dcm_rep->dcm.negotiation->choice.reply.acceptedTrajectoriesIds.list.array[0] = malloc(sizeof(long));
|
||||
*dcm_rep->dcm.negotiation->choice.reply.acceptedTrajectoriesIds.list.array[0] = pt->id;
|
||||
|
||||
asn_enc_rval_t enc = asn_encode_to_buffer(NULL, ATS_UNALIGNED_CANONICAL_PER, &asn_DEF_DCM, dcm_rep, buf, buf_len);
|
||||
if (enc.encoded == -1) {
|
||||
|
|
@ -180,7 +166,7 @@ static int dcm_check_handle_reply(facilities_t* facilities, DCM_t* dcm) {
|
|||
|
||||
CoordinationReply_t* coo_rep = &dcm->dcm.negotiation->choice.reply;
|
||||
|
||||
syslog_info("[facilities] [dc] received coordination reply with %d accepted trajectories", coo_rep->acceptedTrajectories.list.count);
|
||||
syslog_info("[facilities] [dc] received coordination reply with %d accepted trajectories", coo_rep->acceptedTrajectoriesIds.list.count);
|
||||
|
||||
return rv;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue