FIX: fixed message building for the track class

This commit is contained in:
Henry Winkel
2023-01-12 21:41:18 +01:00
parent 9343f0f2f3
commit f4c7d8dec2
3 changed files with 12 additions and 5 deletions

View File

@@ -106,7 +106,7 @@ namespace SimCore {
/// return true if is external /// return true if is external
bool isExternal(); bool isExternal();
std::shared_ptr<SimCore::Identifier> getIdentifier(); SimCore::Identifier getIdentifier();

View File

@@ -62,6 +62,8 @@ namespace SimCore {
void Track::packToMessage() void Track::packToMessage()
{ {
trackMessage_.mutable_entityidentifier()->set_number(ID_.getNumber());
trackMessage_.mutable_entityidentifier()->set_external(ID_.isExternal());
trackMessage_.mutable_geocentricposition()->set_x(position_.getGeocentricPos()(SimCore::X)); trackMessage_.mutable_geocentricposition()->set_x(position_.getGeocentricPos()(SimCore::X));
@@ -151,9 +153,9 @@ namespace SimCore {
return external_; return external_;
} }
std::shared_ptr<SimCore::Identifier> Track::getIdentifier() SimCore::Identifier Track::getIdentifier()
{ {
return std::make_shared<SimCore::Identifier>(std::move(ID_)); return ID_;
} }

View File

@@ -54,6 +54,10 @@ SCENARIO("Testing the SimCore Track")
trackPtr = std::make_shared<SimCore::Track>(serializedMSG); trackPtr = std::make_shared<SimCore::Track>(serializedMSG);
} }
std::string trackstring = track.serialize();
SimCore::Track trackDeserialized(trackstring);
THEN("check if Track attributes are correct") THEN("check if Track attributes are correct")
{ {
@@ -66,7 +70,8 @@ SCENARIO("Testing the SimCore Track")
REQUIRE(msg.get()->msgType_ == WHISPER::RAW_TRACK); REQUIRE(msg.get()->msgType_ == WHISPER::RAW_TRACK);
REQUIRE(trackPtr->getSpeed() == speed); REQUIRE(trackPtr->getSpeed() == speed);
REQUIRE(trackPtr->getPostion().getGeocentricPos() == GeocentPos1); REQUIRE(trackPtr->getPostion().getGeocentricPos() == GeocentPos1);
REQUIRE(trackPtr->getIdentifier()->getNumber() > 0); REQUIRE(trackPtr->getIdentifier().getNumber() > 0);
REQUIRE(trackDeserialized.getIdentifier().getNumber() > 0);