Commit 9dd5ffa7 authored by Don Gagne's avatar Don Gagne

parent 72b4fb07
......@@ -26,8 +26,8 @@ const char* CameraCalc::adjustedFootprintSideName = "AdjustedFootprintSi
const char* CameraCalc::_jsonCameraSpecTypeKey = "CameraSpecType";
CameraCalc::CameraCalc(Vehicle* vehicle, QString settingsGroup, QObject* parent)
: CameraSpec (parent)
CameraCalc::CameraCalc(Vehicle* vehicle, const QString& settingsGroup, QObject* parent)
: CameraSpec (settingsGroup, parent)
, _vehicle (vehicle)
, _dirty (false)
, _disableRecalc (false)
......
......@@ -19,7 +19,7 @@ class CameraCalc : public CameraSpec
Q_OBJECT
public:
CameraCalc(Vehicle* vehicle, QString settingsGroup, QObject* parent = NULL);
CameraCalc(Vehicle* vehicle, const QString& settingsGroup, QObject* parent = NULL);
Q_PROPERTY(QString customCameraName READ customCameraName CONSTANT) ///< Camera name for custom camera setting
Q_PROPERTY(QString manualCameraName READ manualCameraName CONSTANT) ///< Camera name for manual camera setting
......
......@@ -21,38 +21,20 @@ const char* CameraSpec::_landscapeName = "Landscape";
const char* CameraSpec::_fixedOrientationName = "FixedOrientation";
const char* CameraSpec::_minTriggerIntervalName = "MinTriggerInterval";
CameraSpec::CameraSpec(QObject* parent)
CameraSpec::CameraSpec(const QString& settingsGroup, QObject* parent)
: QObject (parent)
, _dirty (false)
, _metaDataMap (FactMetaData::createMapFromJsonFile(QStringLiteral(":/json/CameraSpec.FactMetaData.json"), this))
, _sensorWidthFact (0, _sensorWidthName, FactMetaData::valueTypeDouble)
, _sensorHeightFact (0, _sensorHeightName, FactMetaData::valueTypeDouble)
, _imageWidthFact (0, _imageWidthName, FactMetaData::valueTypeUint32)
, _imageHeightFact (0, _imageHeightName, FactMetaData::valueTypeUint32)
, _focalLengthFact (0, _focalLengthName, FactMetaData::valueTypeDouble)
, _landscapeFact (0, _landscapeName, FactMetaData::valueTypeBool)
, _fixedOrientationFact (0, _fixedOrientationName, FactMetaData::valueTypeBool)
, _minTriggerIntervalFact (0, _minTriggerIntervalName, FactMetaData::valueTypeDouble)
, _sensorWidthFact (settingsGroup, _metaDataMap[_sensorWidthName])
, _sensorHeightFact (settingsGroup, _metaDataMap[_sensorHeightName])
, _imageWidthFact (settingsGroup, _metaDataMap[_imageWidthName])
, _imageHeightFact (settingsGroup, _metaDataMap[_imageHeightName])
, _focalLengthFact (settingsGroup, _metaDataMap[_focalLengthName])
, _landscapeFact (settingsGroup, _metaDataMap[_landscapeName])
, _fixedOrientationFact (settingsGroup, _metaDataMap[_fixedOrientationName])
, _minTriggerIntervalFact (settingsGroup, _metaDataMap[_minTriggerIntervalName])
{
_init(true);
}
CameraSpec::CameraSpec(const CameraSpec& other, QObject* parent)
: QObject (parent)
, _dirty (false)
, _metaDataMap (FactMetaData::createMapFromJsonFile(QStringLiteral(":/json/CameraSpec.FactMetaData.json"), this))
, _sensorWidthFact (0, _sensorWidthName, FactMetaData::valueTypeDouble)
, _sensorHeightFact (0, _sensorHeightName, FactMetaData::valueTypeDouble)
, _imageWidthFact (0, _imageWidthName, FactMetaData::valueTypeUint32)
, _imageHeightFact (0, _imageHeightName, FactMetaData::valueTypeUint32)
, _focalLengthFact (0, _focalLengthName, FactMetaData::valueTypeDouble)
, _landscapeFact (0, _landscapeName, FactMetaData::valueTypeBool)
, _fixedOrientationFact (0, _fixedOrientationName, FactMetaData::valueTypeBool)
, _minTriggerIntervalFact (0, _minTriggerIntervalName, FactMetaData::valueTypeDouble)
{
_init(false);
*this = other;
QQmlEngine::setObjectOwnership(this, QQmlEngine::CppOwnership);
}
const CameraSpec& CameraSpec::operator=(const CameraSpec& other)
......@@ -69,20 +51,6 @@ const CameraSpec& CameraSpec::operator=(const CameraSpec& other)
return *this;
}
void CameraSpec::_init(bool setDefaults)
{
QQmlEngine::setObjectOwnership(this, QQmlEngine::CppOwnership);
_sensorWidthFact.setMetaData (_metaDataMap[_sensorWidthName], setDefaults);
_sensorHeightFact.setMetaData (_metaDataMap[_sensorHeightName], setDefaults);
_imageWidthFact.setMetaData (_metaDataMap[_imageWidthName], setDefaults);
_imageHeightFact.setMetaData (_metaDataMap[_imageHeightName], setDefaults);
_focalLengthFact.setMetaData (_metaDataMap[_focalLengthName], setDefaults);
_landscapeFact.setMetaData (_metaDataMap[_landscapeName], setDefaults);
_fixedOrientationFact.setMetaData (_metaDataMap[_fixedOrientationName], setDefaults);
_minTriggerIntervalFact.setMetaData (_metaDataMap[_minTriggerIntervalName], setDefaults);
}
void CameraSpec::setDirty(bool dirty)
{
if (_dirty != dirty) {
......
......@@ -9,15 +9,14 @@
#pragma once
#include "Fact.h"
#include "SettingsFact.h"
class CameraSpec : public QObject
{
Q_OBJECT
public:
CameraSpec(QObject* parent = NULL);
CameraSpec(const CameraSpec& other, QObject* parent);
CameraSpec(const QString& settingsGroup, QObject* parent = NULL);
const CameraSpec& operator=(const CameraSpec& other);
......@@ -31,14 +30,14 @@ public:
Q_PROPERTY(Fact* fixedOrientation READ fixedOrientation CONSTANT) ///< true: camera is in fixed orientation
Q_PROPERTY(Fact* minTriggerInterval READ minTriggerInterval CONSTANT) ///< Minimum time in seconds between each photo taken, 0 for not specified
Fact* sensorWidth (void) { return &_sensorWidthFact; }
Fact* sensorHeight (void) { return &_sensorHeightFact; }
Fact* imageWidth (void) { return &_imageWidthFact; }
Fact* imageHeight (void) { return &_imageHeightFact; }
Fact* focalLength (void) { return &_focalLengthFact; }
Fact* landscape (void) { return &_landscapeFact; }
Fact* fixedOrientation (void) { return &_fixedOrientationFact; }
Fact* minTriggerInterval(void) { return &_minTriggerIntervalFact; }
SettingsFact* sensorWidth (void) { return &_sensorWidthFact; }
SettingsFact* sensorHeight (void) { return &_sensorHeightFact; }
SettingsFact* imageWidth (void) { return &_imageWidthFact; }
SettingsFact* imageHeight (void) { return &_imageHeightFact; }
SettingsFact* focalLength (void) { return &_focalLengthFact; }
SettingsFact* landscape (void) { return &_landscapeFact; }
SettingsFact* fixedOrientation (void) { return &_fixedOrientationFact; }
SettingsFact* minTriggerInterval(void) { return &_minTriggerIntervalFact; }
bool dirty (void) const { return _dirty; }
void setDirty (bool dirty);
......@@ -50,20 +49,18 @@ signals:
void dirtyChanged(bool dirty);
private:
void _init(bool setDefaults);
bool _dirty;
QMap<QString, FactMetaData*> _metaDataMap;
Fact _sensorWidthFact;
Fact _sensorHeightFact;
Fact _imageWidthFact;
Fact _imageHeightFact;
Fact _focalLengthFact;
Fact _landscapeFact;
Fact _fixedOrientationFact;
Fact _minTriggerIntervalFact;
SettingsFact _sensorWidthFact;
SettingsFact _sensorHeightFact;
SettingsFact _imageWidthFact;
SettingsFact _imageHeightFact;
SettingsFact _focalLengthFact;
SettingsFact _landscapeFact;
SettingsFact _fixedOrientationFact;
SettingsFact _minTriggerIntervalFact;
static const char* _sensorWidthName;
static const char* _sensorHeightName;
......
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