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

Add meta data to facts

parent 1314e108
...@@ -39,15 +39,36 @@ SurveyMissionItem::SurveyMissionItem(Vehicle* vehicle, QObject* parent) ...@@ -39,15 +39,36 @@ SurveyMissionItem::SurveyMissionItem(Vehicle* vehicle, QObject* parent)
, _surveyDistance(0.0) , _surveyDistance(0.0)
, _cameraShots(0) , _cameraShots(0)
, _coveredArea(0.0) , _coveredArea(0.0)
, _gridAltitudeFact (0, "Altitude:", FactMetaData::valueTypeDouble) , _gridAltitudeFact (0, "Altitude:", FactMetaData::valueTypeDouble)
, _gridAngleFact (0, "Grid angle:", FactMetaData::valueTypeDouble) , _gridAngleFact (0, "Grid angle:", FactMetaData::valueTypeDouble)
, _gridSpacingFact (0, "Grid spacing:", FactMetaData::valueTypeDouble) , _gridSpacingFact (0, "Grid spacing:", FactMetaData::valueTypeDouble)
, _cameraTriggerDistanceFact(0, "Camera trigger distance", FactMetaData::valueTypeDouble) , _cameraTriggerDistanceFact(0, "Camera trigger distance", FactMetaData::valueTypeDouble)
, _gridAltitudeMetaData (FactMetaData::valueTypeDouble)
, _gridAngleMetaData (FactMetaData::valueTypeDouble)
, _gridSpacingMetaData (FactMetaData::valueTypeDouble)
, _cameraTriggerDistanceMetaData(FactMetaData::valueTypeDouble)
{ {
_gridAltitudeFact.setRawValue(25); _gridAltitudeFact.setRawValue(25);
_gridSpacingFact.setRawValue(10); _gridSpacingFact.setRawValue(10);
_cameraTriggerDistanceFact.setRawValue(25); _cameraTriggerDistanceFact.setRawValue(25);
_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(&_gridSpacingFact, &Fact::valueChanged, this, &SurveyMissionItem::_generateGrid);
connect(&_gridAngleFact, &Fact::valueChanged, this, &SurveyMissionItem::_generateGrid); connect(&_gridAngleFact, &Fact::valueChanged, this, &SurveyMissionItem::_generateGrid);
connect(&_cameraTriggerDistanceFact, &Fact::valueChanged, this, &SurveyMissionItem::_generateGrid); connect(&_cameraTriggerDistanceFact, &Fact::valueChanged, this, &SurveyMissionItem::_generateGrid);
...@@ -78,7 +99,7 @@ void SurveyMissionItem::_setCameraShots(int cameraShots) ...@@ -78,7 +99,7 @@ void SurveyMissionItem::_setCameraShots(int cameraShots)
{ {
if (_cameraShots != cameraShots) { if (_cameraShots != cameraShots) {
_cameraShots = cameraShots; _cameraShots = cameraShots;
emit cameraShotsChanged(_cameraShots); emit cameraShotsChanged(this->cameraShots());
} }
} }
...@@ -611,4 +632,10 @@ void SurveyMissionItem::_cameraTriggerChanged(void) ...@@ -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 // If we have grid turn on/off camera trigger will add/remove two camera trigger mission items
emit lastSequenceNumberChanged(lastSequenceNumber()); emit lastSequenceNumberChanged(lastSequenceNumber());
} }
emit cameraShotsChanged(cameraShots());
}
int SurveyMissionItem::cameraShots(void) const
{
return _cameraTrigger ? _cameraShots : 0;
} }
...@@ -50,8 +50,8 @@ public: ...@@ -50,8 +50,8 @@ public:
Fact* gridSpacing(void) { return &_gridSpacingFact; } Fact* gridSpacing(void) { return &_gridSpacingFact; }
Fact* cameraTriggerDistance(void) { return &_cameraTriggerDistanceFact; } Fact* cameraTriggerDistance(void) { return &_cameraTriggerDistanceFact; }
int cameraShots (void) const { return _cameraShots; } int cameraShots(void) const;
double coveredArea (void) const { return _coveredArea; } double coveredArea(void) const { return _coveredArea; }
// Overrides from ComplexMissionItem // Overrides from ComplexMissionItem
...@@ -129,6 +129,10 @@ private: ...@@ -129,6 +129,10 @@ private:
Fact _gridAngleFact; Fact _gridAngleFact;
Fact _gridSpacingFact; Fact _gridSpacingFact;
Fact _cameraTriggerDistanceFact; Fact _cameraTriggerDistanceFact;
FactMetaData _gridAltitudeMetaData;
FactMetaData _gridAngleMetaData;
FactMetaData _gridSpacingMetaData;
FactMetaData _cameraTriggerDistanceMetaData;
static const char* _jsonVersionKey; static const char* _jsonVersionKey;
static const char* _jsonTypeKey; 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