diff --git a/src/Orders/MoveOrder.cpp b/src/Orders/MoveOrder.cpp index db29ceb..0b7db79 100644 --- a/src/Orders/MoveOrder.cpp +++ b/src/Orders/MoveOrder.cpp @@ -40,14 +40,14 @@ namespace Orders { pos_ = pos; } + + SimCore::Position MoveOrder::getPosition() + { + return pos_; + } - SimCore::Position MoveOrder::getPosition(){return pos_;} - - - - WHISPER::Message MoveOrder::buildMessage() { WHISPER::Message msg = WHISPER::Message(getOwnID().getUUID(), WHISPER::MsgTopics::COMMANDS , WHISPER::MsgType::COMMAND , srcType); @@ -61,19 +61,23 @@ namespace Orders MoveOrder.mutable_geocentricposition()->set_z(pos_.getGeocentricPos().z()); } - if (Speed.getValidity() == true) { + if (Speed.isValid() == true) { MoveOrder.set_speed(Speed.getValue()); } - if (Course.getValidity() == true) { + if (Course.isValid() == true) { + MoveOrder.set_course(Course.getValue()); + } + if (Speed.isValid() == true) { + MoveOrder.set_speed(Speed.getValue()); + } + if (Course.isValid() == true) { MoveOrder.set_course(Course.getValue()); } - if (StartTime.getValidity() == true) { + if (StartTime.isValid() == true) { MoveOrder.mutable_startingtime()->set_seconds(StartTime.getValue()); } - LOG_S(INFO)<<"ordered speed:" << MoveOrder.speed(); - auto anyOrder = google::protobuf::Any(); anyOrder.PackFrom(MoveOrder); @@ -95,7 +99,7 @@ namespace Orders std::unique_ptr MoveOrder::unpack(WHISPER::Message msg) - { + { if(msg.msgType_ == WHISPER::MsgType::COMMAND) { @@ -114,34 +118,28 @@ namespace Orders auto MoveOrderObj = std::make_unique(OrderID,(WHISPER::SourceType)msg.sourceType_); - if (moveOrder.has_geocentricposition()) MoveOrderObj->setPosition(SimCore::Position(moveOrder.geocentricposition().x(),moveOrder.geocentricposition().y(),moveOrder.geocentricposition().z())); if (moveOrder.has_speed()) MoveOrderObj->Speed.setValue(moveOrder.speed()); if (moveOrder.has_course()) MoveOrderObj->Course.setValue(moveOrder.course()); if (moveOrder.has_startingtime()) MoveOrderObj->Course.setValue(moveOrder.mutable_startingtime()->seconds()); - - - - return std::move(MoveOrderObj); - + + return MoveOrderObj; } } - } return nullptr; } std::unique_ptr MoveOrder::unpack(std::string msg) { - if (std::empty(msg) == false && msg != "NULL") + if (std::empty(msg) == false && msg != "NULL") { WHISPER::Message whisperMessage(msg); - return std::move(unpack(whisperMessage)); + return unpack(whisperMessage); } return nullptr; } - - + } \ No newline at end of file