Files

49 lines
1.2 KiB
C++
Raw Normal View History

#include "GDUHolderManager.h"
#include "GDUDroneManager.h"
GDUHolderManager::GDUHolderManager(GDUDroneManager* gduDroneManager)
{
cmdGenerator = new GDUCmdGenerator();
_gduDroneManager = gduDroneManager;
}
void GDUHolderManager::beginControlHolder(int roll, int pitch, int orientation)
{
if(control == nullptr){
control = new GDUHolderControl();
moveToThread(control);
control->start();
}
control->update(roll,pitch,orientation);
}
void GDUHolderManager::stopControlHolder()
{
if(control != nullptr){
control->stop();
}
}
void GDUHolderManager::holderBack2Center(cmdComplete_t block)
{
GeneratoredData_t cmdData
= cmdGenerator->cmdHolderAdjustment(0x10,0,0);
_gduDroneManager->sendMessage(cmdData.data,block,cmdData.fullMsgID);
}
void GDUHolderManager::setHolderPitchAngle(int angle, cmdComplete_t block)
{
GeneratoredData_t cmdData = cmdGenerator->cmdHolderAngleControl(0,angle);
_gduDroneManager->sendMessage(cmdData.data,block,cmdData.fullMsgID);
}
void GDUHolderManager::setHolderRoll(int roll,cmdComplete_t block)
{
GeneratoredData_t cmdData = cmdGenerator->cmdHolderRollControl(roll);
_gduDroneManager->sendMessage(cmdData.data,block,cmdData.fullMsgID);
}