Browse Source

Set video capture status for missions

QGC4.4
Gus Grubba 7 years ago
parent
commit
c6c2a2b81a
  1. 12
      src/MissionManager/CameraSection.cc
  2. 2
      src/MissionManager/CameraSection.h
  3. 9
      src/MissionManager/CameraSectionTest.cc

12
src/MissionManager/CameraSection.cc

@ -180,11 +180,11 @@ void CameraSection::appendSectionItems(QList<MissionItem*>& items, QObject* miss @@ -180,11 +180,11 @@ void CameraSection::appendSectionItems(QList<MissionItem*>& items, QObject* miss
item = new MissionItem(nextSequenceNumber++,
MAV_CMD_VIDEO_START_CAPTURE,
MAV_FRAME_MISSION,
0, // Reserved (Set to 0)
0, // No CAMERA_CAPTURE_STATUS streaming
NAN, NAN, NAN, NAN, NAN, // param 3-7 reserved
true, // autoContinue
false, // isCurrentItem
0, // Reserved (Set to 0)
VIDEO_CAPTURE_STATUS_INTERVAL, // CAMERA_CAPTURE_STATUS (default to every 5 seconds)
NAN, NAN, NAN, NAN, NAN, // param 3-7 reserved
true, // autoContinue
false, // isCurrentItem
missionItemParent);
break;
@ -360,7 +360,7 @@ bool CameraSection::_scanTakeVideo(QmlObjectListModel* visualItems, int scanInde @@ -360,7 +360,7 @@ bool CameraSection::_scanTakeVideo(QmlObjectListModel* visualItems, int scanInde
if (item) {
MissionItem& missionItem = item->missionItem();
if ((MAV_CMD)item->command() == MAV_CMD_VIDEO_START_CAPTURE) {
if (missionItem.param1() == 0 && missionItem.param2() == 0) {
if (missionItem.param1() == 0 && missionItem.param2() == VIDEO_CAPTURE_STATUS_INTERVAL) {
cameraAction()->setRawValue(TakeVideo);
visualItems->removeAt(scanIndex)->deleteLater();
return true;

2
src/MissionManager/CameraSection.h

@ -14,6 +14,8 @@ @@ -14,6 +14,8 @@
#include "MissionItem.h"
#include "Fact.h"
#define VIDEO_CAPTURE_STATUS_INTERVAL 0.2 //-- Send capture status every 5 seconds
class CameraSection : public Section
{
Q_OBJECT

9
src/MissionManager/CameraSectionTest.cc

@ -70,7 +70,7 @@ void CameraSectionTest::init(void) @@ -70,7 +70,7 @@ void CameraSectionTest::init(void)
MAV_CMD_VIDEO_START_CAPTURE,
MAV_FRAME_MISSION,
0, // Reserved (Set to 0)
0, // No CAMERA_CAPTURE_STATUS streaming
VIDEO_CAPTURE_STATUS_INTERVAL, // CAMERA_CAPTURE_STATUS (default to every 5 seconds)
NAN, NAN, NAN, NAN, NAN, // param 3-7 reserved
true, // autocontinue
false), // isCurrentItem
@ -896,13 +896,6 @@ void CameraSectionTest::_testScanForStartVideoSection(void) @@ -896,13 +896,6 @@ void CameraSectionTest::_testScanForStartVideoSection(void)
QCOMPARE(_cameraSection->settingsSpecified(), false);
visualItems.clear();
invalidSimpleItem.missionItem() = _validStartVideoItem->missionItem();
invalidSimpleItem.missionItem().setParam2(10); // must be 0
visualItems.append(&invalidSimpleItem);
QCOMPARE(_cameraSection->scanForSection(&visualItems, scanIndex), false);
QCOMPARE(visualItems.count(), 1);
QCOMPARE(_cameraSection->settingsSpecified(), false);
visualItems.clear();
}
void CameraSectionTest::_testScanForStopVideoSection(void)

Loading…
Cancel
Save