Loading ccsrc/Ports/LibIts_ports/RSUsSimulator_ports/ConfigRsuSimulatorLayer.cc +63 −2 Original line number Diff line number Diff line Loading @@ -185,6 +185,36 @@ void ConfigRsuSimulatorLayer::sendMsg(const LibItsPki__TypesAndValues::UtPkiTrig send_data(os, params); } void ConfigRsuSimulatorLayer::sendMsg(const LibItsMbr__TypesAndValues::UtMbrResults &send_par, params ¶ms) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorLayer::sendMsg: ", send_par); TTCN_Buffer encoding_buffer; if (send_par.ischosen(LibItsMbr__TypesAndValues::UtMbrResults::ALT_utMbrInitializeResult)) { encoding_buffer.put_c(static_cast<const unsigned char>(uppertester_mbr_codec::c_utMbrInitializeResult)); encoding_buffer.put_c((unsigned char)static_cast<const boolean>(send_par.utMbrInitializeResult())); } else if (send_par.ischosen(LibItsMbr__TypesAndValues::UtMbrResults::ALT_utMbrTriggerResult)) { encoding_buffer.put_c(static_cast<const unsigned char>(uppertester_mbr_codec::c_utMbrTriggerResult)); encoding_buffer.put_c((unsigned char)static_cast<const boolean>(send_par.utMbrTriggerResult())); } else { loggers::get_instance().warning("ConfigRsuSimulatorLayer::sendMsg: Unsupported UtMbrResults variant"); return; } OCTETSTRING os(encoding_buffer.get_len(), encoding_buffer.get_data()); send_data(os, params); } void ConfigRsuSimulatorLayer::sendMsg(const LibItsMbr__TypesAndValues::UtMbrEventInd &send_par, params ¶ms) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorLayer::sendMsg: ", send_par); TTCN_Buffer encoding_buffer; encoding_buffer.put_c(static_cast<const unsigned char>(uppertester_mbr_codec::c_utMbrEventInd)); encoding_buffer.put_c(static_cast<const unsigned char>(send_par.state())); OCTETSTRING os(encoding_buffer.get_len(), encoding_buffer.get_data()); send_data(os, params); } void ConfigRsuSimulatorLayer::sendMsg(const LibItsIvim__TypesAndValues::UtIvimResults &send_par, params ¶ms) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorLayer::sendMsg: ", send_par); Loading Loading @@ -423,6 +453,8 @@ void ConfigRsuSimulatorLayer::receive_data(OCTETSTRING &data, params ¶ms) { } else if ((id == uppertester_pki_codec::c_utPkiTriggerEnrolmentRequest) || (id == uppertester_pki_codec::c_utPkiTriggerAuthorizationRequest)) { // Receive an UtPkiTrigger process_ut_pki_trigger(data, params); } else if (id == uppertester_mbr_codec::c_utMbrTriggerIdMbObs) { // Receive an UtMbrTrigger process_ut_mbr_trigger(data, params); } else { loggers::get_instance().warning("ConfigRsuSimulatorLayer::receive_data: Unsupported tag %02x", id); } Loading Loading @@ -854,9 +886,9 @@ int ConfigRsuSimulatorLayer::process_ut_pki_trigger(const OCTETSTRING &data, par if (_params[std::string("ut")].compare("pki") == 0) { unsigned char msg_id = *static_cast<const unsigned char *>(data); loggers::get_instance().log("ConfigRsuSimulatorLayer::process_ut_geonetworking_trigger: msg_id=%02x", msg_id); loggers::get_instance().log("ConfigRsuSimulatorLayer::process_ut_mbr_trigger: msg_id=%02x", msg_id); OCTETSTRING payload(data.lengthof() - 1, 1 + static_cast<const unsigned char *>(data)); loggers::get_instance().log_msg("ConfigRsuSimulatorLayer::process_ut_geonetworking_trigger: payload:", payload); loggers::get_instance().log_msg("ConfigRsuSimulatorLayer::process_ut_mbr_trigger: payload:", payload); TTCN_EncDec::clear_error(); TTCN_Buffer decoding_buffer(payload); Loading Loading @@ -889,6 +921,35 @@ int ConfigRsuSimulatorLayer::process_ut_pki_trigger(const OCTETSTRING &data, par return 0; } int ConfigRsuSimulatorLayer::process_ut_mbr_trigger(const OCTETSTRING &data, params ¶ms) { loggers::get_instance().log(">>> ConfigRsuSimulatorLayer::process_ut_mbr_trigger"); params::const_iterator it = _params.find("ut"); if (it == _params.cend()) { loggers::get_instance().warning("ConfigRsuSimulatorLayer::process_ut_mbr_trigger: CF layer's ut parameter is missing"); return -1; } if (_params[std::string("ut")].compare("mbr") == 0) { unsigned char msg_id = *static_cast<const unsigned char *>(data); loggers::get_instance().log("ConfigRsuSimulatorLayer::process_ut_mbr_trigger: msg_id=%02x", msg_id); LibItsMbr__TypesAndValues::UtMbrTrigger p; loggers::get_instance().error("ConfigRsuSimulatorLayer::process_ut_mbr_trigger: To be implemented"); if (msg_id == uppertester_mbr_codec::c_utMbrTriggerIdMbObs) { p.idMbObs() = OCTETSTRING(1, 1 + static_cast<const unsigned char *>(data)); } // Pass it to the ports if any to_all_upper_ports(p, params); } else { loggers::get_instance().warning("ConfigRsuSimulatorLayer::process_ut_mbr_trigger: Unsupported protocol"); return -1; } return 0; } int ConfigRsuSimulatorLayer::process_ut_mapem_spatem_trigger(const OCTETSTRING &data, params ¶ms) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorLayer::process_ut_mapem_spatem_trigger", data); Loading ccsrc/Ports/LibIts_ports/RSUsSimulator_ports/ConfigRsuSimulatorLayer.hh +3 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,8 @@ public: void sendMsg(const LibItsDenm__TypesAndValues::UtDenmEventInd &send_par, params ¶ms); void sendMsg(const LibItsPki__TypesAndValues::UtPkiResults &send_par, params ¶ms); void sendMsg(const LibItsPki__TypesAndValues::UtPkiTriggerInd &send_par, params ¶ms); void sendMsg(const LibItsMbr__TypesAndValues::UtMbrResults &send_par, params ¶ms); void sendMsg(const LibItsMbr__TypesAndValues::UtMbrEventInd &send_par, params ¶ms); void sendMsg(const LibItsIvim__TypesAndValues::UtIvimResults &send_par, params ¶ms); void sendMsg(const LibItsIvim__TypesAndValues::UtIvimEventInd &send_par, params ¶ms); void sendMsg(const LibItsMapemSpatem__TypesAndValues::UtMapemSpatemResults &send_par, params ¶ms); Loading @@ -70,6 +72,7 @@ private: int process_ut_denm_termination(const OCTETSTRING &data, params ¶ms); int process_ut_geonetworking_trigger(const OCTETSTRING &data, params ¶ms); int process_ut_pki_trigger(const OCTETSTRING &data, params ¶ms); int process_ut_mbr_trigger(const OCTETSTRING &data, params ¶ms); int process_ut_ivim_trigger(const OCTETSTRING &data, params ¶ms); int process_ut_ivim_update(const OCTETSTRING &data, params ¶ms); int process_ut_ivim_termination(const OCTETSTRING &data, params ¶ms); Loading ccsrc/Ports/LibIts_ports/RSUsSimulator_ports/ConfigRsuSimulatorPort.cc +38 −0 Original line number Diff line number Diff line Loading @@ -153,6 +153,24 @@ namespace ItsRSUsSimulator__TestSystem { loggers::get_instance().set_stop_time(_time_key, duration); } void ConfigRsuSimulatorPort::outgoing_send(const LibItsMbr__TypesAndValues::UtMbrResults &send_par) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorPort::outgoing_send: payload=", send_par); float duration; loggers::get_instance().set_start_time(_time_key); static_cast<ConfigRsuSimulatorLayer *>(_layer)->sendMsg(send_par, _layer_params); loggers::get_instance().set_stop_time(_time_key, duration); } void ConfigRsuSimulatorPort::outgoing_send(const LibItsMbr__TypesAndValues::UtMbrEventInd &send_par) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorPort::outgoing_send: payload=", send_par); float duration; loggers::get_instance().set_start_time(_time_key); static_cast<ConfigRsuSimulatorLayer *>(_layer)->sendMsg(send_par, _layer_params); loggers::get_instance().set_stop_time(_time_key, duration); } void ConfigRsuSimulatorPort::outgoing_send(const LibItsIvim__TypesAndValues::UtIvimResults &send_par) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorPort::outgoing_send: payload=", send_par); Loading Loading @@ -353,6 +371,26 @@ namespace ItsRSUsSimulator__TestSystem { incoming_message(p_ind); } void ConfigRsuSimulatorPort::receiveMsg(const LibItsMbr__TypesAndValues::UtMbrInitialize &p_ind, const params &p_params) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorPort::receive_msg: ", p_ind); // Sanity check if (!p_ind.is_bound()) { return; } incoming_message(p_ind); } void ConfigRsuSimulatorPort::receiveMsg(const LibItsMbr__TypesAndValues::UtMbrTrigger &p_ind, const params &p_params) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorPort::receive_msg: ", p_ind); // Sanity check if (!p_ind.is_bound()) { return; } incoming_message(p_ind); } void ConfigRsuSimulatorPort::receiveMsg(const LibItsIvim__TypesAndValues::UtIvimInitialize &p_ind, const params &p_params) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorPort::receive_msg: ", p_ind); // Sanity check Loading ccsrc/Ports/LibIts_ports/RSUsSimulator_ports/ConfigRsuSimulatorPort.hh +4 −0 Original line number Diff line number Diff line Loading @@ -29,6 +29,8 @@ namespace ItsRSUsSimulator__TestSystem { void receiveMsg(const LibItsDenm__TypesAndValues::UtDenmTermination &p_ind, const params &p_params); void receiveMsg(const LibItsPki__TypesAndValues::UtPkiInitialize &p_ind, const params &p_params); void receiveMsg(const LibItsPki__TypesAndValues::UtPkiTrigger &p_ind, const params &p_params); void receiveMsg(const LibItsMbr__TypesAndValues::UtMbrInitialize &p_ind, const params &p_params); void receiveMsg(const LibItsMbr__TypesAndValues::UtMbrTrigger &p_ind, const params &p_params); void receiveMsg(const LibItsIvim__TypesAndValues::UtIvimInitialize &p_ind, const params &p_params); void receiveMsg(const LibItsIvim__TypesAndValues::UtIvimTrigger &p_ind, const params &p_params); void receiveMsg(const LibItsIvim__TypesAndValues::UtIvimUpdate &p_ind, const params &p_params); Loading Loading @@ -82,6 +84,8 @@ namespace ItsRSUsSimulator__TestSystem { void outgoing_send(const LibItsDenm__TypesAndValues::UtDenmEventInd &send_par); void outgoing_send(const LibItsPki__TypesAndValues::UtPkiResults &send_par); void outgoing_send(const LibItsPki__TypesAndValues::UtPkiTriggerInd &send_par); void outgoing_send(const LibItsMbr__TypesAndValues::UtMbrResults &send_par); void outgoing_send(const LibItsMbr__TypesAndValues::UtMbrEventInd &send_par); void outgoing_send(const LibItsIvim__TypesAndValues::UtIvimResults &send_par); void outgoing_send(const LibItsIvim__TypesAndValues::UtIvimEventInd &send_par); void outgoing_send(const LibItsMapemSpatem__TypesAndValues::UtMapemSpatemResults &send_par); Loading ccsrc/Protocols/Mbr/module.mk 0 → 100644 +2 −0 Original line number Diff line number Diff line sources := includes := . Loading
ccsrc/Ports/LibIts_ports/RSUsSimulator_ports/ConfigRsuSimulatorLayer.cc +63 −2 Original line number Diff line number Diff line Loading @@ -185,6 +185,36 @@ void ConfigRsuSimulatorLayer::sendMsg(const LibItsPki__TypesAndValues::UtPkiTrig send_data(os, params); } void ConfigRsuSimulatorLayer::sendMsg(const LibItsMbr__TypesAndValues::UtMbrResults &send_par, params ¶ms) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorLayer::sendMsg: ", send_par); TTCN_Buffer encoding_buffer; if (send_par.ischosen(LibItsMbr__TypesAndValues::UtMbrResults::ALT_utMbrInitializeResult)) { encoding_buffer.put_c(static_cast<const unsigned char>(uppertester_mbr_codec::c_utMbrInitializeResult)); encoding_buffer.put_c((unsigned char)static_cast<const boolean>(send_par.utMbrInitializeResult())); } else if (send_par.ischosen(LibItsMbr__TypesAndValues::UtMbrResults::ALT_utMbrTriggerResult)) { encoding_buffer.put_c(static_cast<const unsigned char>(uppertester_mbr_codec::c_utMbrTriggerResult)); encoding_buffer.put_c((unsigned char)static_cast<const boolean>(send_par.utMbrTriggerResult())); } else { loggers::get_instance().warning("ConfigRsuSimulatorLayer::sendMsg: Unsupported UtMbrResults variant"); return; } OCTETSTRING os(encoding_buffer.get_len(), encoding_buffer.get_data()); send_data(os, params); } void ConfigRsuSimulatorLayer::sendMsg(const LibItsMbr__TypesAndValues::UtMbrEventInd &send_par, params ¶ms) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorLayer::sendMsg: ", send_par); TTCN_Buffer encoding_buffer; encoding_buffer.put_c(static_cast<const unsigned char>(uppertester_mbr_codec::c_utMbrEventInd)); encoding_buffer.put_c(static_cast<const unsigned char>(send_par.state())); OCTETSTRING os(encoding_buffer.get_len(), encoding_buffer.get_data()); send_data(os, params); } void ConfigRsuSimulatorLayer::sendMsg(const LibItsIvim__TypesAndValues::UtIvimResults &send_par, params ¶ms) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorLayer::sendMsg: ", send_par); Loading Loading @@ -423,6 +453,8 @@ void ConfigRsuSimulatorLayer::receive_data(OCTETSTRING &data, params ¶ms) { } else if ((id == uppertester_pki_codec::c_utPkiTriggerEnrolmentRequest) || (id == uppertester_pki_codec::c_utPkiTriggerAuthorizationRequest)) { // Receive an UtPkiTrigger process_ut_pki_trigger(data, params); } else if (id == uppertester_mbr_codec::c_utMbrTriggerIdMbObs) { // Receive an UtMbrTrigger process_ut_mbr_trigger(data, params); } else { loggers::get_instance().warning("ConfigRsuSimulatorLayer::receive_data: Unsupported tag %02x", id); } Loading Loading @@ -854,9 +886,9 @@ int ConfigRsuSimulatorLayer::process_ut_pki_trigger(const OCTETSTRING &data, par if (_params[std::string("ut")].compare("pki") == 0) { unsigned char msg_id = *static_cast<const unsigned char *>(data); loggers::get_instance().log("ConfigRsuSimulatorLayer::process_ut_geonetworking_trigger: msg_id=%02x", msg_id); loggers::get_instance().log("ConfigRsuSimulatorLayer::process_ut_mbr_trigger: msg_id=%02x", msg_id); OCTETSTRING payload(data.lengthof() - 1, 1 + static_cast<const unsigned char *>(data)); loggers::get_instance().log_msg("ConfigRsuSimulatorLayer::process_ut_geonetworking_trigger: payload:", payload); loggers::get_instance().log_msg("ConfigRsuSimulatorLayer::process_ut_mbr_trigger: payload:", payload); TTCN_EncDec::clear_error(); TTCN_Buffer decoding_buffer(payload); Loading Loading @@ -889,6 +921,35 @@ int ConfigRsuSimulatorLayer::process_ut_pki_trigger(const OCTETSTRING &data, par return 0; } int ConfigRsuSimulatorLayer::process_ut_mbr_trigger(const OCTETSTRING &data, params ¶ms) { loggers::get_instance().log(">>> ConfigRsuSimulatorLayer::process_ut_mbr_trigger"); params::const_iterator it = _params.find("ut"); if (it == _params.cend()) { loggers::get_instance().warning("ConfigRsuSimulatorLayer::process_ut_mbr_trigger: CF layer's ut parameter is missing"); return -1; } if (_params[std::string("ut")].compare("mbr") == 0) { unsigned char msg_id = *static_cast<const unsigned char *>(data); loggers::get_instance().log("ConfigRsuSimulatorLayer::process_ut_mbr_trigger: msg_id=%02x", msg_id); LibItsMbr__TypesAndValues::UtMbrTrigger p; loggers::get_instance().error("ConfigRsuSimulatorLayer::process_ut_mbr_trigger: To be implemented"); if (msg_id == uppertester_mbr_codec::c_utMbrTriggerIdMbObs) { p.idMbObs() = OCTETSTRING(1, 1 + static_cast<const unsigned char *>(data)); } // Pass it to the ports if any to_all_upper_ports(p, params); } else { loggers::get_instance().warning("ConfigRsuSimulatorLayer::process_ut_mbr_trigger: Unsupported protocol"); return -1; } return 0; } int ConfigRsuSimulatorLayer::process_ut_mapem_spatem_trigger(const OCTETSTRING &data, params ¶ms) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorLayer::process_ut_mapem_spatem_trigger", data); Loading
ccsrc/Ports/LibIts_ports/RSUsSimulator_ports/ConfigRsuSimulatorLayer.hh +3 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,8 @@ public: void sendMsg(const LibItsDenm__TypesAndValues::UtDenmEventInd &send_par, params ¶ms); void sendMsg(const LibItsPki__TypesAndValues::UtPkiResults &send_par, params ¶ms); void sendMsg(const LibItsPki__TypesAndValues::UtPkiTriggerInd &send_par, params ¶ms); void sendMsg(const LibItsMbr__TypesAndValues::UtMbrResults &send_par, params ¶ms); void sendMsg(const LibItsMbr__TypesAndValues::UtMbrEventInd &send_par, params ¶ms); void sendMsg(const LibItsIvim__TypesAndValues::UtIvimResults &send_par, params ¶ms); void sendMsg(const LibItsIvim__TypesAndValues::UtIvimEventInd &send_par, params ¶ms); void sendMsg(const LibItsMapemSpatem__TypesAndValues::UtMapemSpatemResults &send_par, params ¶ms); Loading @@ -70,6 +72,7 @@ private: int process_ut_denm_termination(const OCTETSTRING &data, params ¶ms); int process_ut_geonetworking_trigger(const OCTETSTRING &data, params ¶ms); int process_ut_pki_trigger(const OCTETSTRING &data, params ¶ms); int process_ut_mbr_trigger(const OCTETSTRING &data, params ¶ms); int process_ut_ivim_trigger(const OCTETSTRING &data, params ¶ms); int process_ut_ivim_update(const OCTETSTRING &data, params ¶ms); int process_ut_ivim_termination(const OCTETSTRING &data, params ¶ms); Loading
ccsrc/Ports/LibIts_ports/RSUsSimulator_ports/ConfigRsuSimulatorPort.cc +38 −0 Original line number Diff line number Diff line Loading @@ -153,6 +153,24 @@ namespace ItsRSUsSimulator__TestSystem { loggers::get_instance().set_stop_time(_time_key, duration); } void ConfigRsuSimulatorPort::outgoing_send(const LibItsMbr__TypesAndValues::UtMbrResults &send_par) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorPort::outgoing_send: payload=", send_par); float duration; loggers::get_instance().set_start_time(_time_key); static_cast<ConfigRsuSimulatorLayer *>(_layer)->sendMsg(send_par, _layer_params); loggers::get_instance().set_stop_time(_time_key, duration); } void ConfigRsuSimulatorPort::outgoing_send(const LibItsMbr__TypesAndValues::UtMbrEventInd &send_par) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorPort::outgoing_send: payload=", send_par); float duration; loggers::get_instance().set_start_time(_time_key); static_cast<ConfigRsuSimulatorLayer *>(_layer)->sendMsg(send_par, _layer_params); loggers::get_instance().set_stop_time(_time_key, duration); } void ConfigRsuSimulatorPort::outgoing_send(const LibItsIvim__TypesAndValues::UtIvimResults &send_par) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorPort::outgoing_send: payload=", send_par); Loading Loading @@ -353,6 +371,26 @@ namespace ItsRSUsSimulator__TestSystem { incoming_message(p_ind); } void ConfigRsuSimulatorPort::receiveMsg(const LibItsMbr__TypesAndValues::UtMbrInitialize &p_ind, const params &p_params) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorPort::receive_msg: ", p_ind); // Sanity check if (!p_ind.is_bound()) { return; } incoming_message(p_ind); } void ConfigRsuSimulatorPort::receiveMsg(const LibItsMbr__TypesAndValues::UtMbrTrigger &p_ind, const params &p_params) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorPort::receive_msg: ", p_ind); // Sanity check if (!p_ind.is_bound()) { return; } incoming_message(p_ind); } void ConfigRsuSimulatorPort::receiveMsg(const LibItsIvim__TypesAndValues::UtIvimInitialize &p_ind, const params &p_params) { loggers::get_instance().log_msg(">>> ConfigRsuSimulatorPort::receive_msg: ", p_ind); // Sanity check Loading
ccsrc/Ports/LibIts_ports/RSUsSimulator_ports/ConfigRsuSimulatorPort.hh +4 −0 Original line number Diff line number Diff line Loading @@ -29,6 +29,8 @@ namespace ItsRSUsSimulator__TestSystem { void receiveMsg(const LibItsDenm__TypesAndValues::UtDenmTermination &p_ind, const params &p_params); void receiveMsg(const LibItsPki__TypesAndValues::UtPkiInitialize &p_ind, const params &p_params); void receiveMsg(const LibItsPki__TypesAndValues::UtPkiTrigger &p_ind, const params &p_params); void receiveMsg(const LibItsMbr__TypesAndValues::UtMbrInitialize &p_ind, const params &p_params); void receiveMsg(const LibItsMbr__TypesAndValues::UtMbrTrigger &p_ind, const params &p_params); void receiveMsg(const LibItsIvim__TypesAndValues::UtIvimInitialize &p_ind, const params &p_params); void receiveMsg(const LibItsIvim__TypesAndValues::UtIvimTrigger &p_ind, const params &p_params); void receiveMsg(const LibItsIvim__TypesAndValues::UtIvimUpdate &p_ind, const params &p_params); Loading Loading @@ -82,6 +84,8 @@ namespace ItsRSUsSimulator__TestSystem { void outgoing_send(const LibItsDenm__TypesAndValues::UtDenmEventInd &send_par); void outgoing_send(const LibItsPki__TypesAndValues::UtPkiResults &send_par); void outgoing_send(const LibItsPki__TypesAndValues::UtPkiTriggerInd &send_par); void outgoing_send(const LibItsMbr__TypesAndValues::UtMbrResults &send_par); void outgoing_send(const LibItsMbr__TypesAndValues::UtMbrEventInd &send_par); void outgoing_send(const LibItsIvim__TypesAndValues::UtIvimResults &send_par); void outgoing_send(const LibItsIvim__TypesAndValues::UtIvimEventInd &send_par); void outgoing_send(const LibItsMapemSpatem__TypesAndValues::UtMapemSpatemResults &send_par); Loading
ccsrc/Protocols/Mbr/module.mk 0 → 100644 +2 −0 Original line number Diff line number Diff line sources := includes := .