Commit 4be56b48 authored by garciay's avatar garciay
Browse files

Bug fixed in CAM values

parent 9bcc3775
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -129,10 +129,13 @@ namespace LibItsCam__TestSystem {
      return;
    }

    loggers::get_instance().log("UpperTesterPort_Cam::receive_msg: %s", p_ind.get_descriptor()->name);
    if (std::string(p_ind.get_descriptor()->name).compare("@LibItsCam_TypesAndValues.UtCamResults") == 0) { // TODO To be refined
      incoming_message((LibItsCam__TypesAndValues::UtCamResults&)p_ind);
    } // TODO Implement UtCamEventInd part
      incoming_message(static_cast<const LibItsCam__TypesAndValues::UtCamResults&>(p_ind));
    } else if (std::string(p_ind.get_descriptor()->name).compare("@LibItsCam_TypesAndValues.UtCamEventInd") == 0) {
      incoming_message(static_cast<const LibItsCam__TypesAndValues::UtCamEventInd&>(p_ind));
    } else {
      loggers::get_instance().warning("UpperTesterPort_Cam::receive_msg: Message not processed: %s", p_ind.get_descriptor()->name);
    }
  }

} /* end of namespace */
+6 −3
Original line number Diff line number Diff line
@@ -149,10 +149,13 @@ namespace LibItsDenm__TestSystem {
      return;
    }

    loggers::get_instance().log("UpperTesterPort_Denm::receive_msg: %s", p_ind.get_descriptor()->name);
    if (std::string(p_ind.get_descriptor()->name).compare("@LibItsDenm_TypesAndValues.UtDenmResults") == 0) { // TODO To be refined
      incoming_message((LibItsDenm__TypesAndValues::UtDenmResults&)p_ind);
    } // TODO Implement UtDenmEventInd part
      incoming_message(static_cast<const LibItsDenm__TypesAndValues::UtDenmResults&>(p_ind));
    } else if (std::string(p_ind.get_descriptor()->name).compare("@LibItsDenm_TypesAndValues.UtDenmEventInd") == 0) {
      incoming_message(static_cast<const LibItsDenm__TypesAndValues::UtDenmEventInd&>(p_ind));
    } else {
      loggers::get_instance().warning("UpperTesterPort_Denm::receive_msg: Message not processed: %s", p_ind.get_descriptor()->name);
    }
  }

} /* end of namespace */
+4 −1
Original line number Diff line number Diff line
@@ -130,9 +130,12 @@ namespace LibItsGeoNetworking__TestSystem {
      return;
    }

    //loggers::get_instance().log("UpperTesterPort_Gn::receive_msg: %s", p_ind.get_descriptor()->name);
    if (std::string(p_ind.get_descriptor()->name).compare("@LibItsGeoNetworking_TypesAndValues.UtGnResults") == 0) { // TODO To be refined
      incoming_message((LibItsGeoNetworking__TypesAndValues::UtGnResults&)p_ind);
    } else if (std::string(p_ind.get_descriptor()->name).compare("@LibItsGeoNetworking_TypesAndValues.UtGnEventInd") == 0) {
      incoming_message(static_cast<const LibItsGeoNetworking__TypesAndValues::UtGnEventInd&>(p_ind));
    } else {
      loggers::get_instance().warning("UpperTesterPort_Gn::receive_msg: Message not processed: %s", p_ind.get_descriptor()->name);
    }
  }

+12 −8
Original line number Diff line number Diff line
@@ -222,8 +222,11 @@ std::unique_ptr<Base_Type> uppertester_cam_codec::decode (const OCTETSTRING& dat
  const unsigned char* ptr = static_cast<const unsigned char*>(data);
  if (*ptr != uppertester_cam_codec::c_utCamEventInd) {
    LibItsCam__TypesAndValues::UtCamResults res;
    decode(data, res, params);
    if (decode(data, res, params) == 0) {
      result.reset((Base_Type *)res.clone());
    } else {
      result.reset(nullptr);
    }
  } else {
    LibItsCam__TypesAndValues::UtCamEventInd ind;
    decode(data, ind, params);
@@ -245,7 +248,8 @@ int uppertester_cam_codec::decode (const OCTETSTRING& data, LibItsCam__TypesAndV
  } else if (*ptr == uppertester_cam_codec::c_utCamTriggerResult) {
    msg.utCamTriggerResult() = BOOLEAN(*(ptr + 1) == 0x01);
  } else {
    TTCN_warning("uppertester_cam_codec::decode: Unsupported result");
    loggers::get_instance().warning("uppertester_cam_codec::decode: Unsupported result");
    return -1;
  }
  
  loggers::get_instance().log_msg("<<< uppertester_cam_codec::decode", msg);
@@ -254,22 +258,22 @@ int uppertester_cam_codec::decode (const OCTETSTRING& data, LibItsCam__TypesAndV

int uppertester_cam_codec::decode (const OCTETSTRING& data, LibItsCam__TypesAndValues::UtCamEventInd& msg, params* params)
{
  loggers::get_instance().log_to_hexa(">>> uppertester_cam_codec::decode: decoding_buffer=", data);
  loggers::get_instance().log_to_hexa(">>> uppertester_cam_codec::decode (1): decoding_buffer=", data);

  const unsigned char* ptr = static_cast<const unsigned char*>(data) + 1;
  OCTETSTRING os(2, ptr);
  const unsigned int length = (const unsigned int)((*ptr << 8 & 0xff00) | *(ptr + 1));
  ptr += 2;
  loggers::get_instance().log("uppertester_cam_codec::decode: CAM message length=%d", length);
  loggers::get_instance().log("uppertester_cam_codec::decode (1): CAM message length=%d", length);
  if (data.lengthof() - 3 != (const int)length) {
    loggers::get_instance().warning("uppertester_cam_codec::decode (4): Wrong payload length: %d", length);
    loggers::get_instance().warning("uppertester_cam_codec::decode (1) (4): Wrong payload length: %d", length);
    return -1;
  }
  os = OCTETSTRING(length, ptr);
  loggers::get_instance().log_to_hexa("uppertester_cam_codec::decode: CAM message=", os);
  loggers::get_instance().log_to_hexa("uppertester_cam_codec::decode (1): CAM message=", os);
  cam_codec codec;
  codec.decode(os, msg.camMsg(), params);
  
  loggers::get_instance().log_msg("<<< uppertester_cam_codec::decode", msg);
  loggers::get_instance().log_msg("<<< uppertester_cam_codec::decode (1)", msg);
  return 0;
}
+5 −5
Original line number Diff line number Diff line
@@ -284,7 +284,7 @@ int uppertester_denm_codec::decode (const OCTETSTRING& data, LibItsDenm__TypesAn
    r.actionId().sequenceNumber() = oct2int(os);
    msg.utDenmUpdateResult() = r;
  } else {
    TTCN_warning("uppertester_denm_codec::decode: Unsupported result");
    loggers::get_instance().warning("uppertester_denm_codec::decode: Unsupported result");
  }
  
  loggers::get_instance().log_msg("<<< uppertester_denm_codec::decode", msg);
@@ -293,18 +293,18 @@ int uppertester_denm_codec::decode (const OCTETSTRING& data, LibItsDenm__TypesAn

int uppertester_denm_codec::decode (const OCTETSTRING& data, LibItsDenm__TypesAndValues::UtDenmEventInd& msg, params* params)
{
  loggers::get_instance().log_to_hexa(">>> uppertester_denm_codec::decode: decoding_buffer=", data);
  loggers::get_instance().log_to_hexa(">>> uppertester_denm_codec::decode (1): decoding_buffer=", data);

  const unsigned char* ptr = static_cast<const unsigned char*>(data) + 1;
  OCTETSTRING os(2, ptr);
  ptr += 2;
  unsigned int length = oct2int(os);
  loggers::get_instance().log("uppertester_denm_codec::decode: DENM message length=%d", length);
  loggers::get_instance().log("uppertester_denm_codec::decode (1): DENM message length=%d", length);
  os = OCTETSTRING(length, ptr);
  loggers::get_instance().log_to_hexa("uppertester_denm_codec::decode: DENM message=", os);
  loggers::get_instance().log_to_hexa("uppertester_denm_codec::decode (1): DENM message=", os);
  denm_codec codec;
  codec.decode(os, msg.denMsg(), params);
  
  loggers::get_instance().log_msg("<<< uppertester_denm_codec::decode", msg);
  loggers::get_instance().log_msg("<<< uppertester_denm_codec::decode (1)", msg);
  return 0;
}
Loading