ADD: added start and stop of pods
This commit is contained in:
@@ -39,7 +39,7 @@ namespace Entities
|
|||||||
EntityKind_(EntityKind)
|
EntityKind_(EntityKind)
|
||||||
|
|
||||||
{
|
{
|
||||||
PodController_ = std::make_unique<kubecontrol::PodController>("libs/KubeControl/docs/config");
|
PodController_ = std::make_unique<kubecontrol::PodController>("docs/config");
|
||||||
OwnShipTrack = std::make_shared<SimCore::SimTrack>(OwnID, OwnType, EntityKind);
|
OwnShipTrack = std::make_shared<SimCore::SimTrack>(OwnID, OwnType, EntityKind);
|
||||||
OwnShipTrack->setPosition(SimCore::Position());
|
OwnShipTrack->setPosition(SimCore::Position());
|
||||||
|
|
||||||
@@ -52,6 +52,7 @@ namespace Entities
|
|||||||
|
|
||||||
Entity::~Entity()
|
Entity::~Entity()
|
||||||
{
|
{
|
||||||
|
PodController_->stopAllPods();
|
||||||
stop();
|
stop();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -60,26 +61,37 @@ namespace Entities
|
|||||||
void Entity::setPosition(SimCore::Position pos)
|
void Entity::setPosition(SimCore::Position pos)
|
||||||
{
|
{
|
||||||
OwnShipTrack->setPosition(pos);
|
OwnShipTrack->setPosition(pos);
|
||||||
|
LOG_S(INFO)<< "POS: LAT: "<< OwnShipTrack->getPosition().getGeodesicPos()(SimCore::LATITUDE) << " LON: " << OwnShipTrack->getPosition().getGeodesicPos()(SimCore::LONGITUDE);
|
||||||
|
|
||||||
Orders::MoveOrder moveorder(OwnShipTrack->getIdentifier(),WHISPER::SourceType::ENTITY);
|
Orders::MoveOrder moveorder(OwnShipTrack->getIdentifier(),WHISPER::SourceType::ENTITY);
|
||||||
moveorder.setPosition(pos);
|
moveorder.setPosition(pos);
|
||||||
MovemtServer_->sendMessage(moveorder.buildMessage().serialize());
|
if(MovementWorkerStarted == true)
|
||||||
LOG_S(INFO)<<"Move Order send";
|
{
|
||||||
|
MovemtServer_->sendMessage(moveorder.buildMessage().serialize());
|
||||||
|
LOG_S(INFO)<<"Move Order send";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
void Entity::setSpeed(double val)
|
void Entity::setSpeed(double val)
|
||||||
{
|
{
|
||||||
OwnShipTrack->Speed.setValue(val);
|
OwnShipTrack->Speed.setValue(val);
|
||||||
Orders::MoveOrder moveorder(OwnShipTrack->getIdentifier(),WHISPER::SourceType::ENTITY);
|
Orders::MoveOrder moveorder(OwnShipTrack->getIdentifier(),WHISPER::SourceType::ENTITY);
|
||||||
moveorder.Speed.setValue(val);
|
moveorder.Speed.setValue(val);
|
||||||
MovemtServer_->sendMessage(moveorder.buildMessage().serialize());
|
if(MovementWorkerStarted == true)
|
||||||
LOG_S(INFO)<<"Move Order send";
|
{
|
||||||
|
MovemtServer_->sendMessage(moveorder.buildMessage().serialize());
|
||||||
|
LOG_S(INFO)<<"Move Order send with Speed";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
void Entity::setCourse(double val)
|
void Entity::setCourse(double val)
|
||||||
{
|
{
|
||||||
OwnShipTrack->Course.setValue(val);
|
OwnShipTrack->Course.setValue(val);
|
||||||
Orders::MoveOrder moveorder(OwnShipTrack->getIdentifier(),WHISPER::SourceType::ENTITY);
|
Orders::MoveOrder moveorder(OwnShipTrack->getIdentifier(),WHISPER::SourceType::ENTITY);
|
||||||
moveorder.Course.setValue(val);
|
moveorder.Course.setValue(val);
|
||||||
MovemtServer_->sendMessage(moveorder.buildMessage().serialize());
|
if(MovementWorkerStarted == true)
|
||||||
|
{
|
||||||
|
MovemtServer_->sendMessage(moveorder.buildMessage().serialize());
|
||||||
|
LOG_S(INFO)<<"Move Order send with Course";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
void Entity::setPitch( double val)
|
void Entity::setPitch( double val)
|
||||||
{
|
{
|
||||||
@@ -123,11 +135,13 @@ namespace Entities
|
|||||||
|
|
||||||
void Entity::startMovementWorker()
|
void Entity::startMovementWorker()
|
||||||
{
|
{
|
||||||
auto MovementPod = kubecontrol::KubePod("MovmentPod_"+EntityName_,xg::newGuid().str(),"movementimage:latest");
|
auto MovementPod = kubecontrol::KubePod("movmentpod-"+EntityName_,xg::newGuid().str(),"movementimage:latest");
|
||||||
|
|
||||||
MovementPod.setEnvironmentVar("SERVER_IP", SimCore::UtilFunctions::getOwnIP());
|
MovementPod.setEnvironmentVar("SERVER_IP", SimCore::UtilFunctions::getOwnIP());
|
||||||
// LOG_S(INFO)<< MovementPod.createYAML();
|
LOG_S(INFO)<< MovementPod.createYAML();
|
||||||
|
PodController_->startPod(MovementPod);
|
||||||
LOG_S(INFO)<<PodController_->getServerAddress();
|
LOG_S(INFO)<<PodController_->getServerAddress();
|
||||||
|
std::this_thread::sleep_for(std::chrono::milliseconds(5000));
|
||||||
|
|
||||||
LOG_S(INFO)<< "TODO: starting the movement app from here";
|
LOG_S(INFO)<< "TODO: starting the movement app from here";
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user