1
0
mirror of https://gitlab.com/obbart/universal_robots_ros_driver.git synced 2026-04-12 11:00:47 +02:00

implemented handling of different protocol versions for rtde text message parsing

This commit is contained in:
Tristan Schnell
2019-07-17 17:14:13 +02:00
parent 6ea9bc05ec
commit 0519866bb4
4 changed files with 29 additions and 8 deletions

View File

@@ -74,6 +74,8 @@ bool RTDEClient::init()
}
}
parser_.setProtocolVersion(protocol_version);
// determine maximum frequency from ur-control version
size = GetUrcontrolVersionRequest::generateSerializedRequest(buffer);
stream_.write(buffer, size, written);

View File

@@ -33,11 +33,19 @@ namespace rtde_interface
{
bool TextMessage::parseWith(comm::BinParser& bp)
{
bp.parse(message_length_);
bp.parse(message_, message_length_);
bp.parse(source_length_);
bp.parse(source_, source_length_);
bp.parse(warning_level_);
if (protocol_version_ == 2)
{
bp.parse(message_length_);
bp.parse(message_, message_length_);
bp.parse(source_length_);
bp.parse(source_, source_length_);
bp.parse(warning_level_);
}
else if (protocol_version_ == 1)
{
bp.parse(message_type_);
bp.parseRemainder(message_);
}
return true;
}