ttcn3: streamline DRB and SRB Tx interface

use the same tx interface with const uint8_t* and length byte instead of std::string
master
Andre Puschmann 5 years ago
parent 7a25d1d300
commit 63f1ea1bec

@ -49,12 +49,11 @@ public:
return port_listen(); return port_listen();
} }
void tx(std::string out) void tx(const uint8_t* buffer, uint32_t len)
{ {
if (initialized) { if (initialized) {
log->info_hex( log->info_hex(buffer, len, "Sending %d B to Titan\n", len);
reinterpret_cast<const uint8_t*>(out.c_str()), out.length(), "Sending %ld B to Titan\n", out.length()); send(buffer, len);
send(reinterpret_cast<const uint8_t*>(out.c_str()), out.length());
} else { } else {
log->error("Trying to transmit but port not connected.\n"); log->error("Trying to transmit but port not connected.\n");
} }

@ -1026,11 +1026,9 @@ void ttcn3_syssim::write_pdu(uint32_t lcid, unique_byte_buffer_t pdu)
// push content to Titan // push content to Titan
if (lcid <= 2) { if (lcid <= 2) {
std::string out = ttcn3_helpers::get_rrc_pdu_ind_for_pdu(tti, lcid, cells[pcell_idx]->name, std::move(pdu)); std::string out = ttcn3_helpers::get_rrc_pdu_ind_for_pdu(tti, lcid, cells[pcell_idx]->name, std::move(pdu));
srb.tx(reinterpret_cast<const uint8_t*>(out.c_str()), out.length());
srb.tx(out);
} else { } else {
std::string out = ttcn3_helpers::get_drb_common_ind_for_pdu(tti, lcid, cells[pcell_idx]->name, std::move(pdu)); std::string out = ttcn3_helpers::get_drb_common_ind_for_pdu(tti, lcid, cells[pcell_idx]->name, std::move(pdu));
log->error("DRB send:\n%s", out.c_str());
drb.tx(reinterpret_cast<const uint8_t*>(out.c_str()), out.length()); drb.tx(reinterpret_cast<const uint8_t*>(out.c_str()), out.length());
} }
} }

Loading…
Cancel
Save