Loading ccsrc/EncDec/LibItsMbr_Encdec.cc +40 −0 Original line number Diff line number Diff line #include "LibItsMbr_EncdecDeclarations.hh" #include "etsi_ts103759_data_codec.hh" #include "loggers.hh" namespace LibItsMbr__EncdecDeclarations { /*BITSTRING fx__enc__CAM(const CAM__PDU__Descriptions::CAM &p_cam) { cam_pdu_codec asn_codec; BITSTRING b; int rc = asn_codec.encode(p_cam, b); if (rc) { return b; } return int2bit(0, 1); }*/ BITSTRING fx__enc__EtsiTs103759Data(const EtsiTs103759Core::EtsiTs103759Data &p_etsi_ts_102941_data) { loggers::get_instance().log_msg(">>> fx__enc__EtsiTs103759Data: ", p_etsi_ts_102941_data); etsi_ts103759_data_codec codec; OCTETSTRING os; if (codec.encode(p_etsi_ts_102941_data, os) == -1) { loggers::get_instance().warning("fx__enc__EtsiTs103759Data: -1 result code was returned"); return int2bit(0, 1); } return oct2bit(os); } INTEGER fx__dec__EtsiTs103759Data(BITSTRING &b, EtsiTs103759Core::EtsiTs103759Data &p_etsi_ts_102941_data) { loggers::get_instance().log_msg(">>> fx__dec__EtsiTs103759Data: ", b); etsi_ts103759_data_codec codec; OCTETSTRING is = bit2oct(b); if (codec.decode(is, p_etsi_ts_102941_data) == -1) { loggers::get_instance().warning("fx__dec__EtsiTs103759Data: -1 result code was returned"); return -1; } return 0; } } // End of namespace LibItsMbr__EncdecDeclarations ccsrc/Ports/LibIts_ports/RSUsSimulator_ports/ConfigRsuSimulatorLayer.cc +3 −1 Original line number Diff line number Diff line Loading @@ -11,6 +11,8 @@ #include "uppertester_cam_codec.hh" #include "uppertester_denm_codec.hh" #include "uppertester_geonetworking_codec.hh" #include "uppertester_pki_codec.hh" #include "uppertester_mbr_codec.hh" #include "uppertester_ivim_codec.hh" #include "uppertester_mapem_spatem_codec.hh" Loading Loading @@ -937,7 +939,7 @@ int ConfigRsuSimulatorLayer::process_ut_mbr_trigger(const OCTETSTRING &data, par 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)); p.idMbObs() = INTEGER(1, 1 + static_cast<const unsigned char *>(data)); } // Pass it to the ports if any Loading ccsrc/Protocols/Mbr/etsi_ts103759_data_codec.cc 0 → 100644 +28 −0 Original line number Diff line number Diff line #include "etsi_ts103759_data_codec.hh" #include "loggers.hh" int etsi_ts103759_data_codec::encode(const EtsiTs103759Core::EtsiTs103759Data &p_etsi_ts_103759_data, OCTETSTRING &p_data) { loggers::get_instance().log(">>> etsi_ts103759_data_codec::encode: %s", p_etsi_ts_103759_data.get_descriptor()->name); BITSTRING b; TTCN_EncDec::clear_error(); TTCN_Buffer buffer; p_etsi_ts_103759_data.encode(*p_etsi_ts_103759_data.get_descriptor(), buffer, TTCN_EncDec::CT_OER); p_data = OCTETSTRING(buffer.get_len(), buffer.get_data()); loggers::get_instance().log_msg("etsi_ts103759_data_codec::encode: ", p_data); return 0; } int etsi_ts103759_data_codec::decode(const OCTETSTRING &p_data, EtsiTs103759Core::EtsiTs103759Data &p_etsi_ts_103759_data, params *p_params) { loggers::get_instance().log_msg(">>> etsi_ts103759_data_codec::decode: ", p_data); TTCN_EncDec::clear_error(); TTCN_Buffer decoding_buffer(p_data); // _params = params; p_etsi_ts_103759_data.decode(*p_etsi_ts_103759_data.get_descriptor(), decoding_buffer, TTCN_EncDec::CT_OER); loggers::get_instance().log_msg("<<< etsi_ts103759_data_codec::decode: ", (const Base_Type &)p_etsi_ts_103759_data); return 0; } ccsrc/Protocols/Mbr/etsi_ts103759_data_codec.hh 0 → 100644 +15 −0 Original line number Diff line number Diff line #pragma once #include "codec_gen.hh" #include "params.hh" #include "EtsiTs103759Core.hh" class etsi_ts103759_data_codec : public codec_gen<EtsiTs103759Core::EtsiTs103759Data, EtsiTs103759Core::EtsiTs103759Data> { public: explicit etsi_ts103759_data_codec() : codec_gen<EtsiTs103759Core::EtsiTs103759Data, EtsiTs103759Core::EtsiTs103759Data>(){}; virtual ~etsi_ts103759_data_codec(){}; virtual int encode(const EtsiTs103759Core::EtsiTs103759Data &p_etsi_ts_10291_data, OCTETSTRING &p_data); virtual int decode(const OCTETSTRING &p_data, EtsiTs103759Core::EtsiTs103759Data &p_etsi_ts_10291_data, params *p_params = NULL); }; // End of class etsi_ts103759_data_codec ccsrc/Protocols/Mbr/module.mk +1 −1 Original line number Diff line number Diff line sources := sources := etsi_ts103759_data_codec.cc includes := . Loading
ccsrc/EncDec/LibItsMbr_Encdec.cc +40 −0 Original line number Diff line number Diff line #include "LibItsMbr_EncdecDeclarations.hh" #include "etsi_ts103759_data_codec.hh" #include "loggers.hh" namespace LibItsMbr__EncdecDeclarations { /*BITSTRING fx__enc__CAM(const CAM__PDU__Descriptions::CAM &p_cam) { cam_pdu_codec asn_codec; BITSTRING b; int rc = asn_codec.encode(p_cam, b); if (rc) { return b; } return int2bit(0, 1); }*/ BITSTRING fx__enc__EtsiTs103759Data(const EtsiTs103759Core::EtsiTs103759Data &p_etsi_ts_102941_data) { loggers::get_instance().log_msg(">>> fx__enc__EtsiTs103759Data: ", p_etsi_ts_102941_data); etsi_ts103759_data_codec codec; OCTETSTRING os; if (codec.encode(p_etsi_ts_102941_data, os) == -1) { loggers::get_instance().warning("fx__enc__EtsiTs103759Data: -1 result code was returned"); return int2bit(0, 1); } return oct2bit(os); } INTEGER fx__dec__EtsiTs103759Data(BITSTRING &b, EtsiTs103759Core::EtsiTs103759Data &p_etsi_ts_102941_data) { loggers::get_instance().log_msg(">>> fx__dec__EtsiTs103759Data: ", b); etsi_ts103759_data_codec codec; OCTETSTRING is = bit2oct(b); if (codec.decode(is, p_etsi_ts_102941_data) == -1) { loggers::get_instance().warning("fx__dec__EtsiTs103759Data: -1 result code was returned"); return -1; } return 0; } } // End of namespace LibItsMbr__EncdecDeclarations
ccsrc/Ports/LibIts_ports/RSUsSimulator_ports/ConfigRsuSimulatorLayer.cc +3 −1 Original line number Diff line number Diff line Loading @@ -11,6 +11,8 @@ #include "uppertester_cam_codec.hh" #include "uppertester_denm_codec.hh" #include "uppertester_geonetworking_codec.hh" #include "uppertester_pki_codec.hh" #include "uppertester_mbr_codec.hh" #include "uppertester_ivim_codec.hh" #include "uppertester_mapem_spatem_codec.hh" Loading Loading @@ -937,7 +939,7 @@ int ConfigRsuSimulatorLayer::process_ut_mbr_trigger(const OCTETSTRING &data, par 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)); p.idMbObs() = INTEGER(1, 1 + static_cast<const unsigned char *>(data)); } // Pass it to the ports if any Loading
ccsrc/Protocols/Mbr/etsi_ts103759_data_codec.cc 0 → 100644 +28 −0 Original line number Diff line number Diff line #include "etsi_ts103759_data_codec.hh" #include "loggers.hh" int etsi_ts103759_data_codec::encode(const EtsiTs103759Core::EtsiTs103759Data &p_etsi_ts_103759_data, OCTETSTRING &p_data) { loggers::get_instance().log(">>> etsi_ts103759_data_codec::encode: %s", p_etsi_ts_103759_data.get_descriptor()->name); BITSTRING b; TTCN_EncDec::clear_error(); TTCN_Buffer buffer; p_etsi_ts_103759_data.encode(*p_etsi_ts_103759_data.get_descriptor(), buffer, TTCN_EncDec::CT_OER); p_data = OCTETSTRING(buffer.get_len(), buffer.get_data()); loggers::get_instance().log_msg("etsi_ts103759_data_codec::encode: ", p_data); return 0; } int etsi_ts103759_data_codec::decode(const OCTETSTRING &p_data, EtsiTs103759Core::EtsiTs103759Data &p_etsi_ts_103759_data, params *p_params) { loggers::get_instance().log_msg(">>> etsi_ts103759_data_codec::decode: ", p_data); TTCN_EncDec::clear_error(); TTCN_Buffer decoding_buffer(p_data); // _params = params; p_etsi_ts_103759_data.decode(*p_etsi_ts_103759_data.get_descriptor(), decoding_buffer, TTCN_EncDec::CT_OER); loggers::get_instance().log_msg("<<< etsi_ts103759_data_codec::decode: ", (const Base_Type &)p_etsi_ts_103759_data); return 0; }
ccsrc/Protocols/Mbr/etsi_ts103759_data_codec.hh 0 → 100644 +15 −0 Original line number Diff line number Diff line #pragma once #include "codec_gen.hh" #include "params.hh" #include "EtsiTs103759Core.hh" class etsi_ts103759_data_codec : public codec_gen<EtsiTs103759Core::EtsiTs103759Data, EtsiTs103759Core::EtsiTs103759Data> { public: explicit etsi_ts103759_data_codec() : codec_gen<EtsiTs103759Core::EtsiTs103759Data, EtsiTs103759Core::EtsiTs103759Data>(){}; virtual ~etsi_ts103759_data_codec(){}; virtual int encode(const EtsiTs103759Core::EtsiTs103759Data &p_etsi_ts_10291_data, OCTETSTRING &p_data); virtual int decode(const OCTETSTRING &p_data, EtsiTs103759Core::EtsiTs103759Data &p_etsi_ts_10291_data, params *p_params = NULL); }; // End of class etsi_ts103759_data_codec
ccsrc/Protocols/Mbr/module.mk +1 −1 Original line number Diff line number Diff line sources := sources := etsi_ts103759_data_codec.cc includes := .