mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-29 20:55:42 +08:00
committed by
Mathew Sutcliffe
parent
0518e680c3
commit
67a5dbfe48
@@ -104,6 +104,15 @@ namespace BlackMisc
|
|||||||
return MeanSeaLevel == this->m_datum;
|
return MeanSeaLevel == this->m_datum;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Get reference datum (MSL or AGL)
|
* \brief Get reference datum (MSL or AGL)
|
||||||
* \return
|
* \return
|
||||||
|
|||||||
@@ -72,6 +72,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CHeading(CAngle heading, ReferenceNorth north) : CAngle(heading), m_north(north) {}
|
CHeading(CAngle heading, ReferenceNorth north) : CAngle(heading), m_north(north) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Equal operator ==
|
* \brief Equal operator ==
|
||||||
* \param other
|
* \param other
|
||||||
|
|||||||
@@ -101,6 +101,14 @@ namespace BlackMisc
|
|||||||
this->validate(true);
|
this->validate(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Set active frequency
|
* \brief Set active frequency
|
||||||
|
|||||||
@@ -78,6 +78,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CComSystem(const CComSystem &other) : CModulator(other) {}
|
CComSystem(const CComSystem &other) : CModulator(other) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Constructor
|
* \brief Constructor
|
||||||
* \param name
|
* \param name
|
||||||
|
|||||||
@@ -112,6 +112,14 @@ namespace BlackMisc
|
|||||||
this->validate(true);
|
this->validate(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Set active frequency
|
* \brief Set active frequency
|
||||||
|
|||||||
@@ -148,6 +148,15 @@ namespace BlackMisc
|
|||||||
this->validate(true);
|
this->validate(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Transponder mode as string
|
* \brief Transponder mode as string
|
||||||
* \return
|
* \return
|
||||||
|
|||||||
@@ -72,6 +72,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CTrack(BlackMisc::PhysicalQuantities::CAngle track, ReferenceNorth north) : BlackMisc::PhysicalQuantities::CAngle(track), m_north(north) {}
|
CTrack(BlackMisc::PhysicalQuantities::CAngle track, ReferenceNorth north) : BlackMisc::PhysicalQuantities::CAngle(track), m_north(north) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief As QVariant
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Equal operator ==
|
* \brief Equal operator ==
|
||||||
* \param other
|
* \param other
|
||||||
|
|||||||
@@ -81,3 +81,88 @@ void BlackMisc::initResources()
|
|||||||
{
|
{
|
||||||
initBlackMiscResources();
|
initBlackMiscResources();
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
|
* To string
|
||||||
|
*/
|
||||||
|
QString BlackMisc::qVariantToString(const QVariant &qv, bool i18n)
|
||||||
|
{
|
||||||
|
if (qv.type() != QVariant::UserType) return qv.toString();
|
||||||
|
const CValueObject *s = CValueObject::fromQVariant(qv);
|
||||||
|
if (s)
|
||||||
|
{
|
||||||
|
return s->toQString(i18n);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return "unknown";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Fix QVariant if it comes from DBus and contains QDBusArgument
|
||||||
|
*/
|
||||||
|
QVariant BlackMisc::fixQVariantFromDbusArgument(const QVariant &variant, int localUserType)
|
||||||
|
{
|
||||||
|
if (variant.canConvert<QDBusArgument>())
|
||||||
|
{
|
||||||
|
// complex, user type
|
||||||
|
// it has to be made sure, that the cast works
|
||||||
|
const QDBusArgument arg = variant.value<QDBusArgument>();
|
||||||
|
QVariant fixedVariant;
|
||||||
|
if (localUserType < static_cast<int>(QVariant::UserType))
|
||||||
|
{
|
||||||
|
// complex Qt type, e.g. QDateTime
|
||||||
|
fixedVariant = BlackMisc::complexQtTypeFromDbusArgument(arg, localUserType);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// http://qt-project.org/doc/qt-5.0/qtcore/qmetatype.html#create
|
||||||
|
void *obByMetaId = QMetaType::create(localUserType);
|
||||||
|
|
||||||
|
// own types, send as QDBusArgument
|
||||||
|
CValueObject *streamable = static_cast<CValueObject *>(obByMetaId);
|
||||||
|
arg >> (*streamable);
|
||||||
|
fixedVariant = streamable->toQVariant();
|
||||||
|
QMetaType::destroy(localUserType, obByMetaId);
|
||||||
|
}
|
||||||
|
return fixedVariant;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return variant;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Return QVariant based on QDBusArgument
|
||||||
|
*/
|
||||||
|
QVariant BlackMisc::complexQtTypeFromDbusArgument(const QDBusArgument &argument, int type)
|
||||||
|
{
|
||||||
|
// QDate = 14, QTime = 15, QDateTime = 16, QUrl = 17,
|
||||||
|
|
||||||
|
switch (type)
|
||||||
|
{
|
||||||
|
case QMetaType::QDateTime:
|
||||||
|
{
|
||||||
|
QDateTime dt;
|
||||||
|
argument >> dt;
|
||||||
|
return QVariant::fromValue(dt);
|
||||||
|
}
|
||||||
|
case QMetaType::QDate:
|
||||||
|
{
|
||||||
|
QDate date;
|
||||||
|
argument >> date;
|
||||||
|
return QVariant::fromValue(date);
|
||||||
|
}
|
||||||
|
case QMetaType::QTime:
|
||||||
|
{
|
||||||
|
QTime time;
|
||||||
|
argument >> time;
|
||||||
|
return QVariant::fromValue(time);
|
||||||
|
}
|
||||||
|
default:
|
||||||
|
qFatal("Type cannot be resolved");
|
||||||
|
}
|
||||||
|
return QVariant(); // suppress compiler warning
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,6 +7,8 @@
|
|||||||
#define BLACKMISC_FREEFUNCTIONS_H
|
#define BLACKMISC_FREEFUNCTIONS_H
|
||||||
|
|
||||||
#include <QDir> // for Q_INIT_RESOURCE
|
#include <QDir> // for Q_INIT_RESOURCE
|
||||||
|
#include <QVariant>
|
||||||
|
#include <QDBusArgument>
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* Workaround, to call initResource from namespace. Used in BlackMisc::initResources().
|
* Workaround, to call initResource from namespace. Used in BlackMisc::initResources().
|
||||||
@@ -79,6 +81,34 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
void initResources();
|
void initResources();
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant to string, allows to stringify CValueObject
|
||||||
|
* \param qv
|
||||||
|
* \param i18n
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
QString qVariantToString(const QVariant &qv, bool i18n = false);
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* Fix variant. Required if a variant "comes in" via DBus,
|
||||||
|
* and represents a QDBusArgument rather than the real type.
|
||||||
|
* \param variant
|
||||||
|
* \param localUserType
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
QVariant fixQVariantFromDbusArgument(const QVariant &variant, int localUserType);
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* Convert a QDBusArgument back to a concrete type if required
|
||||||
|
* This is a workaround if a QVariant is sent via DBus, QDBusArgument is
|
||||||
|
* received and Qt is nor able to get the original QVariant back
|
||||||
|
* \param argument
|
||||||
|
* \param type
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
// TODO: To be removed if a better solution is found
|
||||||
|
QVariant complexQtTypeFromDbusArgument(const QDBusArgument &argument, int type);
|
||||||
|
|
||||||
} // BlackMisc
|
} // BlackMisc
|
||||||
|
|
||||||
#endif // guard
|
#endif // guard
|
||||||
|
|||||||
@@ -37,6 +37,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
explicit CCoordinateEcef(const BlackMisc::Math::CVector3D vector) : CVector3DBase(vector.i(), vector.j(), vector.k()) {}
|
explicit CCoordinateEcef(const BlackMisc::Math::CVector3D vector) : CVector3DBase(vector.i(), vector.j(), vector.k()) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief x
|
* \brief x
|
||||||
* \return
|
* \return
|
||||||
|
|||||||
@@ -144,6 +144,15 @@ namespace BlackMisc
|
|||||||
return this->m_height;
|
return this->m_height;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Switch unit of latitude / longitude
|
* \brief Switch unit of latitude / longitude
|
||||||
* \param unit
|
* \param unit
|
||||||
|
|||||||
@@ -85,6 +85,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CCoordinateNed(const CCoordinateGeodetic &referencePosition, const BlackMisc::Math::CVector3D &vector) : CVector3DBase(vector.i(), vector.j(), vector.k()), m_referencePosition(referencePosition), m_hasReferencePosition(true) {}
|
CCoordinateNed(const CCoordinateGeodetic &referencePosition, const BlackMisc::Math::CVector3D &vector) : CVector3DBase(vector.i(), vector.j(), vector.k()), m_referencePosition(referencePosition), m_hasReferencePosition(true) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Equal operator ==
|
* \brief Equal operator ==
|
||||||
* \param other
|
* \param other
|
||||||
|
|||||||
@@ -44,6 +44,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CLatitude(double value, const BlackMisc::PhysicalQuantities::CAngleUnit &unit) : CEarthAngle(value, unit) {}
|
CLatitude(double value, const BlackMisc::PhysicalQuantities::CAngleUnit &unit) : CEarthAngle(value, unit) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Virtual destructor
|
* \brief Virtual destructor
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -41,6 +41,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CLongitude(double value, const BlackMisc::PhysicalQuantities::CAngleUnit &unit) : CEarthAngle(value, unit) {}
|
CLongitude(double value, const BlackMisc::PhysicalQuantities::CAngleUnit &unit) : CEarthAngle(value, unit) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Virtual destructor
|
* \brief Virtual destructor
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -49,6 +49,15 @@ namespace BlackMisc
|
|||||||
this->m_matrix(0, 1) = c2;
|
this->m_matrix(0, 1) = c2;
|
||||||
this->m_matrix(0, 2) = c3;
|
this->m_matrix(0, 2) = c3;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace
|
} // namespace
|
||||||
|
|||||||
@@ -54,6 +54,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
explicit CMatrix3x1(double fillValue) : CMatrixBase(fillValue) {}
|
explicit CMatrix3x1(double fillValue) : CMatrixBase(fillValue) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Convert to vector
|
* \brief Convert to vector
|
||||||
|
|||||||
@@ -64,6 +64,15 @@ namespace BlackMisc
|
|||||||
this->setElement(2, 2, r3c3);
|
this->setElement(2, 2, r3c3);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Calculates the determinant of the matrix
|
* \brief Calculates the determinant of the matrix
|
||||||
* \return
|
* \return
|
||||||
|
|||||||
@@ -39,6 +39,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CVector3D(const CVector3D &other) : CVector3DBase(other) {}
|
CVector3D(const CVector3D &other) : CVector3DBase(other) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief i
|
* \brief i
|
||||||
* \return
|
* \return
|
||||||
|
|||||||
@@ -36,6 +36,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CAcceleration(const CPhysicalQuantity &base) : CPhysicalQuantity(base) {}
|
CAcceleration(const CPhysicalQuantity &base) : CPhysicalQuantity(base) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Virtual destructor
|
* \brief Virtual destructor
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -54,6 +54,14 @@ namespace BlackMisc
|
|||||||
degrees + minutes / 100.0,
|
degrees + minutes / 100.0,
|
||||||
CAngleUnit::sexagesimalDegMin()) {}
|
CAngleUnit::sexagesimalDegMin()) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Virtual destructor
|
* \brief Virtual destructor
|
||||||
|
|||||||
@@ -257,6 +257,16 @@ namespace BlackMisc
|
|||||||
CMeasurementUnit() : m_name("none"), m_symbol(""), m_epsilon(0), m_displayDigits(0), m_converter(new NilConverter())
|
CMeasurementUnit() : m_name("none"), m_symbol(""), m_epsilon(0), m_displayDigits(0), m_converter(new NilConverter())
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
// used with None!
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Equal operator ==
|
* \brief Equal operator ==
|
||||||
* \param other
|
* \param other
|
||||||
|
|||||||
@@ -29,6 +29,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CFrequency(double value, const CFrequencyUnit &unit) : CPhysicalQuantity(value, unit) {}
|
CFrequency(double value, const CFrequencyUnit &unit) : CPhysicalQuantity(value, unit) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Virtual destructor
|
* \brief Virtual destructor
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -30,6 +30,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CLength(double value, const CLengthUnit &unit) : CPhysicalQuantity(value, unit) {}
|
CLength(double value, const CLengthUnit &unit) : CPhysicalQuantity(value, unit) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Virtual destructor
|
* \brief Virtual destructor
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -30,6 +30,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CMass(double value, const CMassUnit &unit) : CPhysicalQuantity(value, unit) {}
|
CMass(double value, const CMassUnit &unit) : CPhysicalQuantity(value, unit) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Virtual destructor
|
* \brief Virtual destructor
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -32,6 +32,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CPressure(double value, const CPressureUnit &unit) : CPhysicalQuantity(value, unit) {}
|
CPressure(double value, const CPressureUnit &unit) : CPhysicalQuantity(value, unit) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Virtual destructor
|
* \brief Virtual destructor
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -31,6 +31,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CSpeed(double value, const CSpeedUnit &unit) : CPhysicalQuantity(value, unit) {}
|
CSpeed(double value, const CSpeedUnit &unit) : CPhysicalQuantity(value, unit) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Destructor
|
* \brief Destructor
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -31,6 +31,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CTemperature(double value, const CTemperatureUnit &unit): CPhysicalQuantity(value, unit) {}
|
CTemperature(double value, const CTemperatureUnit &unit): CPhysicalQuantity(value, unit) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Destructor
|
* \brief Destructor
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -32,6 +32,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CTime(double value, const CTimeUnit &unit) : CPhysicalQuantity(value, unit) {}
|
CTime(double value, const CTimeUnit &unit) : CPhysicalQuantity(value, unit) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief QVariant, required for DBus QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Destructor
|
* \brief Destructor
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -47,6 +47,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CLengthUnit() : CMeasurementUnit(defaultUnit()) {}
|
CLengthUnit() : CMeasurementUnit(defaultUnit()) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Default unit
|
* \brief Default unit
|
||||||
* \return
|
* \return
|
||||||
@@ -176,6 +185,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CAngleUnit() : CMeasurementUnit(defaultUnit()) {}
|
CAngleUnit() : CMeasurementUnit(defaultUnit()) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Default unit
|
* \brief Default unit
|
||||||
* \return
|
* \return
|
||||||
@@ -284,6 +302,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CFrequencyUnit() : CMeasurementUnit(defaultUnit()) {}
|
CFrequencyUnit() : CMeasurementUnit(defaultUnit()) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Default unit
|
* \brief Default unit
|
||||||
* \return
|
* \return
|
||||||
@@ -380,6 +407,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CMassUnit() : CMeasurementUnit(defaultUnit()) {}
|
CMassUnit() : CMeasurementUnit(defaultUnit()) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Default unit
|
* \brief Default unit
|
||||||
* \return
|
* \return
|
||||||
@@ -489,6 +525,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CPressureUnit() : CMeasurementUnit(defaultUnit()) {}
|
CPressureUnit() : CMeasurementUnit(defaultUnit()) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Default unit
|
* \brief Default unit
|
||||||
* \return
|
* \return
|
||||||
@@ -625,6 +670,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CTemperatureUnit() : CMeasurementUnit(defaultUnit()) {}
|
CTemperatureUnit() : CMeasurementUnit(defaultUnit()) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief Default unit
|
* \brief Default unit
|
||||||
* \return
|
* \return
|
||||||
@@ -712,6 +766,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CSpeedUnit() : CMeasurementUnit(defaultUnit()) {}
|
CSpeedUnit() : CMeasurementUnit(defaultUnit()) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* Default unit
|
* Default unit
|
||||||
* \return
|
* \return
|
||||||
@@ -832,6 +895,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CTimeUnit() : CMeasurementUnit(defaultUnit()) {}
|
CTimeUnit() : CMeasurementUnit(defaultUnit()) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* Default unit
|
* Default unit
|
||||||
* \return
|
* \return
|
||||||
@@ -980,6 +1052,15 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
CAccelerationUnit() : CMeasurementUnit(defaultUnit()) {}
|
CAccelerationUnit() : CMeasurementUnit(defaultUnit()) {}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const
|
||||||
|
{
|
||||||
|
return QVariant::fromValue(*this);
|
||||||
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* Default unit
|
* Default unit
|
||||||
* \return
|
* \return
|
||||||
|
|||||||
@@ -43,6 +43,23 @@ namespace BlackMisc
|
|||||||
return this->convertToQString();
|
return this->convertToQString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Return backing streamable object (if any)
|
||||||
|
*/
|
||||||
|
const CValueObject *CValueObject::fromQVariant(const QVariant &qv)
|
||||||
|
{
|
||||||
|
if (!qv.isValid()) return nullptr;
|
||||||
|
QVariant::Type t = qv.type();
|
||||||
|
uint ut = qv.userType();
|
||||||
|
if (t != QVariant::UserType) return nullptr; // not a user type
|
||||||
|
if (ut <= QVariant::UserType) return nullptr; // complex Qt type
|
||||||
|
if (qv.canConvert<QDBusArgument>()) return nullptr; // not unstreamed yet
|
||||||
|
|
||||||
|
// this cast cannot be dynamic, so the aboce conditions are crucical
|
||||||
|
const CValueObject *vo = static_cast<const CValueObject *>(qv.constData());
|
||||||
|
return vo;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* from DBus
|
* from DBus
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -132,6 +132,18 @@ namespace BlackMisc
|
|||||||
*/
|
*/
|
||||||
std::string toStdString(bool i18n = false) const;
|
std::string toStdString(bool i18n = false) const;
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief Virtual method to return QVariant, used with DBUS QVariant lists
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
virtual QVariant toQVariant() const = 0;
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* \brief The stored object as CValueObject
|
||||||
|
* \param qv
|
||||||
|
* \return
|
||||||
|
*/
|
||||||
|
static const CValueObject *fromQVariant(const QVariant &qv);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
/*!
|
/*!
|
||||||
|
|||||||
Reference in New Issue
Block a user