Commit 8d78b7e3 authored by Don Gagne's avatar Don Gagne

Add meta data to facts

parent 1314e108
......@@ -39,17 +39,38 @@ SurveyMissionItem::SurveyMissionItem(Vehicle* vehicle, QObject* parent)
, _surveyDistance(0.0)
, _cameraShots(0)
, _coveredArea(0.0)
, _gridAltitudeFact (0, "Altitude:", FactMetaData::valueTypeDouble)
, _gridAngleFact (0, "Grid angle:", FactMetaData::valueTypeDouble)
, _gridSpacingFact (0, "Grid spacing:", FactMetaData::valueTypeDouble)
, _gridAltitudeFact (0, "Altitude:", FactMetaData::valueTypeDouble)
, _gridAngleFact (0, "Grid angle:", FactMetaData::valueTypeDouble)
, _gridSpacingFact (0, "Grid spacing:", FactMetaData::valueTypeDouble)
, _cameraTriggerDistanceFact(0, "Camera trigger distance", FactMetaData::valueTypeDouble)
, _gridAltitudeMetaData (FactMetaData::valueTypeDouble)
, _gridAngleMetaData (FactMetaData::valueTypeDouble)
, _gridSpacingMetaData (FactMetaData::valueTypeDouble)
, _cameraTriggerDistanceMetaData(FactMetaData::valueTypeDouble)
{
_gridAltitudeFact.setRawValue(25);
_gridSpacingFact.setRawValue(10);
_cameraTriggerDistanceFact.setRawValue(25);
connect(&_gridSpacingFact, &Fact::valueChanged, this, &SurveyMissionItem::_generateGrid);
connect(&_gridAngleFact, &Fact::valueChanged, this, &SurveyMissionItem::_generateGrid);
_gridAltitudeMetaData.setRawUnits("m");
_gridAngleMetaData.setRawUnits("deg");
_gridSpacingMetaData.setRawUnits("m");
_cameraTriggerDistanceMetaData.setRawUnits("m");
_gridAltitudeMetaData.setDecimalPlaces(1);
_gridAngleMetaData.setDecimalPlaces(1);
_gridSpacingMetaData.setDecimalPlaces(2);
_cameraTriggerDistanceMetaData.setDecimalPlaces(2);
_gridAltitudeFact.setMetaData(&_gridAltitudeMetaData);
_gridAngleFact.setMetaData(&_gridAngleMetaData);
_gridSpacingFact.setMetaData(&_gridSpacingMetaData);
_cameraTriggerDistanceFact.setMetaData(&_cameraTriggerDistanceMetaData);
connect(&_gridSpacingFact, &Fact::valueChanged, this, &SurveyMissionItem::_generateGrid);
connect(&_gridAngleFact, &Fact::valueChanged, this, &SurveyMissionItem::_generateGrid);
connect(&_cameraTriggerDistanceFact, &Fact::valueChanged, this, &SurveyMissionItem::_generateGrid);
connect(this, &SurveyMissionItem::cameraTriggerChanged, this, &SurveyMissionItem::_cameraTriggerChanged);
......@@ -78,7 +99,7 @@ void SurveyMissionItem::_setCameraShots(int cameraShots)
{
if (_cameraShots != cameraShots) {
_cameraShots = cameraShots;
emit cameraShotsChanged(_cameraShots);
emit cameraShotsChanged(this->cameraShots());
}
}
......@@ -611,4 +632,10 @@ void SurveyMissionItem::_cameraTriggerChanged(void)
// If we have grid turn on/off camera trigger will add/remove two camera trigger mission items
emit lastSequenceNumberChanged(lastSequenceNumber());
}
emit cameraShotsChanged(cameraShots());
}
int SurveyMissionItem::cameraShots(void) const
{
return _cameraTrigger ? _cameraShots : 0;
}
......@@ -50,8 +50,8 @@ public:
Fact* gridSpacing(void) { return &_gridSpacingFact; }
Fact* cameraTriggerDistance(void) { return &_cameraTriggerDistanceFact; }
int cameraShots (void) const { return _cameraShots; }
double coveredArea (void) const { return _coveredArea; }
int cameraShots(void) const;
double coveredArea(void) const { return _coveredArea; }
// Overrides from ComplexMissionItem
......@@ -125,10 +125,14 @@ private:
int _cameraShots;
double _coveredArea;
Fact _gridAltitudeFact;
Fact _gridAngleFact;
Fact _gridSpacingFact;
Fact _cameraTriggerDistanceFact;
Fact _gridAltitudeFact;
Fact _gridAngleFact;
Fact _gridSpacingFact;
Fact _cameraTriggerDistanceFact;
FactMetaData _gridAltitudeMetaData;
FactMetaData _gridAngleMetaData;
FactMetaData _gridSpacingMetaData;
FactMetaData _cameraTriggerDistanceMetaData;
static const char* _jsonVersionKey;
static const char* _jsonTypeKey;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment