refs #192, Doxygen and other cosmetic changes

This commit is contained in:
Klaus Basan
2014-03-26 18:26:10 +01:00
parent 9aebf05e68
commit a724f7ee91
13 changed files with 212 additions and 697 deletions

View File

@@ -27,14 +27,14 @@ namespace BlackMisc
/*! /*!
* Constructor. * Constructor.
* \param icao * \param icao "B737"
* \param type * \param combinedType "L2J"
* \param airline * \param airline "DLH"
* \param livery * \param livery "FREIGHT"
* \param color * \param color "CCFFDD" (RGB)
*/ */
CAircraftIcao(const QString &icao, const QString &type, const QString &airline, const QString &livery, const QString &color) CAircraftIcao(const QString &icao, const QString &combinedType, const QString &airline, const QString &livery, const QString &color)
: m_aircraftDesignator(icao.trimmed().toUpper()), m_aircraftCombinedType(type.trimmed().toUpper()), m_airlineDesignator(airline.trimmed().toUpper()), : m_aircraftDesignator(icao.trimmed().toUpper()), m_aircraftCombinedType(combinedType.trimmed().toUpper()), m_airlineDesignator(airline.trimmed().toUpper()),
m_livery(livery.trimmed().toUpper()), m_aircraftColor(color.trimmed().toUpper()) {} m_livery(livery.trimmed().toUpper()), m_aircraftColor(color.trimmed().toUpper()) {}
//! \copydoc CValueObject::toQVariant //! \copydoc CValueObject::toQVariant

View File

@@ -32,40 +32,26 @@ namespace BlackMisc
ReferenceDatum m_datum; //!< MSL or AGL? ReferenceDatum m_datum; //!< MSL or AGL?
protected: protected:
/*! //! \copydoc CValueObject::convertToQString
* \copydoc CValueObject::convertToQString
*/
virtual QString convertToQString(bool i18n) const override; virtual QString convertToQString(bool i18n) const override;
/*! //! \copydoc CValueObject::getMetaTypeId
* \copydoc CValueObject::getMetaTypeId
*/
virtual int getMetaTypeId() const override; virtual int getMetaTypeId() const override;
/*! //! \copydoc CValueObject::isA
* \copydoc CValueObject::isA
*/
virtual bool isA(int metaTypeId) const override; virtual bool isA(int metaTypeId) const override;
/*! //! \copydoc CValueObject::compareImpl
* \copydoc CValueObject::compareImpl
*/
virtual int compareImpl(const CValueObject &other) const override; virtual int compareImpl(const CValueObject &other) const override;
/*! //! \copydoc CValueObject::marshallToDbus
* \copydoc CValueObject::marshallToDbus
*/
virtual void marshallToDbus(QDBusArgument &argument) const override; virtual void marshallToDbus(QDBusArgument &argument) const override;
/*! //! \copydoc CValueObject::unmarshallFromDbus
* \copydoc CValueObject::unmarshallFromDbus
*/
virtual void unmarshallFromDbus(const QDBusArgument &argument) override; virtual void unmarshallFromDbus(const QDBusArgument &argument) override;
public: public:
/*! //! \brief Default constructor: 0 Altitude true
* \brief Default constructor: 0 Altitude true
*/
CAltitude() : BlackMisc::PhysicalQuantities::CLength(0, BlackMisc::PhysicalQuantities::CLengthUnit::m()), m_datum(MeanSeaLevel) {} CAltitude() : BlackMisc::PhysicalQuantities::CLength(0, BlackMisc::PhysicalQuantities::CLengthUnit::m()), m_datum(MeanSeaLevel) {}
/*! /*!
@@ -76,57 +62,34 @@ namespace BlackMisc
*/ */
CAltitude(double value, ReferenceDatum datum, const BlackMisc::PhysicalQuantities::CLengthUnit &unit) : BlackMisc::PhysicalQuantities::CLength(value, unit), m_datum(datum) {} CAltitude(double value, ReferenceDatum datum, const BlackMisc::PhysicalQuantities::CLengthUnit &unit) : BlackMisc::PhysicalQuantities::CLength(value, unit), m_datum(datum) {}
/*! //! \brief Constructor by CLength
* \brief Constructor by CLength
* \param altitude
* \param datum
*/
CAltitude(BlackMisc::PhysicalQuantities::CLength altitude, ReferenceDatum datum) : BlackMisc::PhysicalQuantities::CLength(altitude), m_datum(datum) {} CAltitude(BlackMisc::PhysicalQuantities::CLength altitude, ReferenceDatum datum) : BlackMisc::PhysicalQuantities::CLength(altitude), m_datum(datum) {}
/*! //! \brief Equal operator ==
* \brief Equal operator ==
* \param other
* @return
*/
bool operator ==(const CAltitude &other) const; bool operator ==(const CAltitude &other) const;
/*! //! \brief Unequal operator !=
* \brief Unequal operator ==
* \param other
* @return
*/
bool operator !=(const CAltitude &other) const; bool operator !=(const CAltitude &other) const;
/*! //! \brief AGL Above ground level?
* \brief AGL Above ground level?
* \return
*/
bool isAboveGroundLevel() const bool isAboveGroundLevel() const
{ {
return AboveGround == this->m_datum; return AboveGround == this->m_datum;
} }
/*! //! \brief MSL Mean sea level?
* \brief MSL Mean sea level?
* \return
*/
bool isMeanSeaLevel() const bool isMeanSeaLevel() const
{ {
return MeanSeaLevel == this->m_datum; return MeanSeaLevel == this->m_datum;
} }
/*! //! \copydoc CValueObject::toQVariant
* \copydoc CValueObject::toQVariant
*/
virtual QVariant toQVariant() const override virtual QVariant toQVariant() const override
{ {
return QVariant::fromValue(*this); return QVariant::fromValue(*this);
} }
/*! //! \brief Get reference datum (MSL or AGL)
* \brief Get reference datum (MSL or AGL)
* \return
*/
ReferenceDatum getReferenceDatum() const ReferenceDatum getReferenceDatum() const
{ {
return m_datum; return m_datum;

View File

@@ -15,29 +15,20 @@ namespace BlackMisc
{ {
namespace Aviation namespace Aviation
{ {
/*! //! \brief Value object encapsulating information of a callsign.
* Value object encapsulating information of a callsign.
*/
class CCallsign : public BlackMisc::CValueObject class CCallsign : public BlackMisc::CValueObject
{ {
public: public:
/*! //! \brief Default constructor.
* Default constructor.
*/
CCallsign() {} CCallsign() {}
/*! //! \brief Constructor
* Constructor.
*/
CCallsign(const QString &callsign, const QString &telephonyDesignator = "") CCallsign(const QString &callsign, const QString &telephonyDesignator = "")
: m_callsignAsSet(callsign.trimmed()), m_callsign(CCallsign::unifyCallsign(callsign.trimmed())), m_telephonyDesignator(telephonyDesignator.trimmed()) : m_callsignAsSet(callsign.trimmed()), m_callsign(CCallsign::unifyCallsign(callsign.trimmed())), m_telephonyDesignator(telephonyDesignator.trimmed())
{} {}
/*! //! \brief Constructor, needed to disambiguate implicit conversion from string literal.
* Constructor.
* Needed to disambiguate implicit conversion from string literal.
*/
CCallsign(const char *callsign) CCallsign(const char *callsign)
: m_callsignAsSet(callsign), m_callsign(CCallsign::unifyCallsign(callsign)) : m_callsignAsSet(callsign), m_callsign(CCallsign::unifyCallsign(callsign))
{} {}
@@ -112,7 +103,7 @@ namespace BlackMisc
/*! /*!
* \brief Unify the callsign * \brief Unify the callsign
* \param callsign * \param callsign
* \return * \return unified callsign
*/ */
static QString unifyCallsign(const QString &callsign); static QString unifyCallsign(const QString &callsign);

View File

@@ -25,12 +25,6 @@ namespace BlackMisc
//! \brief Constructor //! \brief Constructor
CAvionicsBase(const QString &name) : m_name(name) {} CAvionicsBase(const QString &name) : m_name(name) {}
//! \brief Are set values valid?
virtual bool validValues() const
{
return true;
}
//! \brief Set name //! \brief Set name
void setName(const QString &name) void setName(const QString &name)
{ {
@@ -74,6 +68,12 @@ namespace BlackMisc
return this->m_name; return this->m_name;
} }
//! \brief Are set values valid?
virtual bool validValues() const
{
return true;
}
private: private:
BLACK_ENABLE_TUPLE_CONVERSION(CAvionicsBase) BLACK_ENABLE_TUPLE_CONVERSION(CAvionicsBase)
}; };

View File

@@ -92,47 +92,34 @@ namespace BlackMisc
return QVariant::fromValue(*this); return QVariant::fromValue(*this);
} }
/*! //! \brief Set active frequency
* \brief Set active frequency //! \remarks will be rounded to channel spacing
* \remarks will be rounded to channel spacing
* \see ChannelSpacing
*/
void setFrequencyActiveMHz(double frequencyMHz); void setFrequencyActiveMHz(double frequencyMHz);
/*! //! \brief Set standby frequency
* \brief Set standby frequency //! \remarks will be rounded to channel spacing
* \remarks will be rounded to channel spacing
*/
void setFrequencyStandbyMHz(double frequencyMHz); void setFrequencyStandbyMHz(double frequencyMHz);
/*! //! \brief Is active frequency within 8.3383kHz channel?
* \brief Is active frequency within 8.3383kHz channel?
*/
bool isActiveFrequencyWithin8_33kHzChannel(const BlackMisc::PhysicalQuantities::CFrequency &comFrequency) bool isActiveFrequencyWithin8_33kHzChannel(const BlackMisc::PhysicalQuantities::CFrequency &comFrequency)
{ {
return CComSystem::isWithinChannelSpacing(this->getFrequencyActive(), comFrequency, ChannelSpacing8_33KHz); return CComSystem::isWithinChannelSpacing(this->getFrequencyActive(), comFrequency, ChannelSpacing8_33KHz);
} }
/*! //! \brief Is active frequency within 25kHz channel?
* \brief Is active frequency within 25kHz channel?
*/
bool isActiveFrequencyWithin25kHzChannel(const BlackMisc::PhysicalQuantities::CFrequency &comFrequency) const bool isActiveFrequencyWithin25kHzChannel(const BlackMisc::PhysicalQuantities::CFrequency &comFrequency) const
{ {
return CComSystem::isWithinChannelSpacing(this->getFrequencyActive(), comFrequency, ChannelSpacing25KHz); return CComSystem::isWithinChannelSpacing(this->getFrequencyActive(), comFrequency, ChannelSpacing25KHz);
} }
/*! //! \brief Set UNICOM frequency as active
* \brief Set UNICOM frequency as active
*/
void setActiveUnicom() void setActiveUnicom()
{ {
this->toggleActiveStandby(); this->toggleActiveStandby();
this->setFrequencyActive(BlackMisc::PhysicalQuantities::CPhysicalQuantitiesConstants::FrequencyUnicom()); this->setFrequencyActive(BlackMisc::PhysicalQuantities::CPhysicalQuantitiesConstants::FrequencyUnicom());
} }
/*! //! \brief Set International Air Distress 121.5MHz
* \brief Set International Air Distress 121.5MHz
*/
void setActiveInternationalAirDistress() void setActiveInternationalAirDistress()
{ {
this->toggleActiveStandby(); this->toggleActiveStandby();
@@ -142,10 +129,8 @@ namespace BlackMisc
//! \copydoc CValueObject::getValueHash //! \copydoc CValueObject::getValueHash
virtual uint getValueHash() const override; virtual uint getValueHash() const override;
/*! //! \copydoc CValueObject::toJson
* \brief operator == virtual QJsonObject toJson() const override;
*/
bool operator ==(const CComSystem &other) const;
/*! /*!
* \brief operator != * \brief operator !=

View File

@@ -34,25 +34,15 @@ namespace BlackMisc
int m_digits; //!< digits used int m_digits; //!< digits used
protected: protected:
/*! //! \brief Default constructor
* \brief Default constructor
*/
CModulator() : CModulator() :
CAvionicsBase("default"), m_volumeInput(0), m_volumeOutput(0), m_enabled(true), m_digits(2) {} CAvionicsBase("default"), m_volumeInput(0), m_volumeOutput(0), m_enabled(true), m_digits(2) {}
/*! //! \brief Constructor
* \brief Constructor
* \param name
* \param activeFrequency
* \param standbyFrequency
* \param digits
*/
CModulator(const QString &name, const BlackMisc::PhysicalQuantities::CFrequency &activeFrequency, const BlackMisc::PhysicalQuantities::CFrequency &standbyFrequency, int digits) : CModulator(const QString &name, const BlackMisc::PhysicalQuantities::CFrequency &activeFrequency, const BlackMisc::PhysicalQuantities::CFrequency &standbyFrequency, int digits) :
CAvionicsBase(name), m_frequencyActive(activeFrequency), m_frequencyStandby(standbyFrequency), m_volumeInput(0), m_volumeOutput(0), m_enabled(true), m_digits(digits) {} CAvionicsBase(name), m_frequencyActive(activeFrequency), m_frequencyStandby(standbyFrequency), m_volumeInput(0), m_volumeOutput(0), m_enabled(true), m_digits(digits) {}
/*! //! \copydoc CValueObject::convertToQString
* \copydoc CValueObject::convertToQString
*/
virtual QString convertToQString(bool i18n = false) const override virtual QString convertToQString(bool i18n = false) const override
{ {
QString s(this->getName()); QString s(this->getName());
@@ -61,254 +51,166 @@ namespace BlackMisc
return s; return s;
} }
/*! //! \brief Set active frequency
* \brief Set active frequency
* \param frequencyKHz
*/
void setFrequencyActiveKHz(double frequencyKHz) void setFrequencyActiveKHz(double frequencyKHz)
{ {
this->m_frequencyActive = BlackMisc::PhysicalQuantities::CFrequency(frequencyKHz, BlackMisc::PhysicalQuantities::CFrequencyUnit::kHz()); this->m_frequencyActive = BlackMisc::PhysicalQuantities::CFrequency(frequencyKHz, BlackMisc::PhysicalQuantities::CFrequencyUnit::kHz());
} }
/*! //! \brief Set standby frequency
* \brief Set standby frequency
* \param frequencyKHz
*/
void setFrequencyStandbyKHz(double frequencyKHz) void setFrequencyStandbyKHz(double frequencyKHz)
{ {
this->m_frequencyStandby = BlackMisc::PhysicalQuantities::CFrequency(frequencyKHz, BlackMisc::PhysicalQuantities::CFrequencyUnit::kHz()); this->m_frequencyStandby = BlackMisc::PhysicalQuantities::CFrequency(frequencyKHz, BlackMisc::PhysicalQuantities::CFrequencyUnit::kHz());
} }
/*! //! \brief Set active frequency
* \brief Set active frequency
* \param frequencyMHz
*/
void setFrequencyActiveMHz(double frequencyMHz) void setFrequencyActiveMHz(double frequencyMHz)
{ {
frequencyMHz = CMath::round(frequencyMHz, 3); frequencyMHz = CMath::round(frequencyMHz, 3);
this->m_frequencyActive = BlackMisc::PhysicalQuantities::CFrequency(frequencyMHz, BlackMisc::PhysicalQuantities::CFrequencyUnit::MHz()); this->m_frequencyActive = BlackMisc::PhysicalQuantities::CFrequency(frequencyMHz, BlackMisc::PhysicalQuantities::CFrequencyUnit::MHz());
} }
/*! //! \brief Set standby frequency
* \brief Set standby frequency
* \param frequencyMHz
*/
void setFrequencyStandbyMHz(double frequencyMHz) void setFrequencyStandbyMHz(double frequencyMHz)
{ {
frequencyMHz = CMath::round(frequencyMHz, 3); frequencyMHz = CMath::round(frequencyMHz, 3);
this->m_frequencyStandby = BlackMisc::PhysicalQuantities::CFrequency(frequencyMHz, BlackMisc::PhysicalQuantities::CFrequencyUnit::MHz()); this->m_frequencyStandby = BlackMisc::PhysicalQuantities::CFrequency(frequencyMHz, BlackMisc::PhysicalQuantities::CFrequencyUnit::MHz());
} }
/*! //! \brief operator ==
* \brief operator ==
* \param other
* \return
*/
bool operator ==(const CModulator &other) const; bool operator ==(const CModulator &other) const;
/*! //! \brief operator !=
* \brief operator !=
* \param other
* \return
*/
bool operator !=(const CModulator &other) const; bool operator !=(const CModulator &other) const;
/*! //! \copydoc CValueObject::compareImpl(otherBase)
* \copydoc CValueObject::compareImpl(otherBase)
*/
virtual int compareImpl(const CValueObject &otherBase) const override; virtual int compareImpl(const CValueObject &otherBase) const override;
/*! //! \brief COM1
* \brief COM1
* \return
*/
static const QString &NameCom1() static const QString &NameCom1()
{ {
static QString n("COM1"); static QString n("COM1");
return n; return n;
} }
/*! //! \brief COM2
* \brief COM2
* \return
*/
static const QString &NameCom2() static const QString &NameCom2()
{ {
static QString n("COM2"); static QString n("COM2");
return n; return n;
} }
/*! //! \brief COM3
* \brief COM3
* \return
*/
static const QString &NameCom3() static const QString &NameCom3()
{ {
static QString n("COM3"); static QString n("COM3");
return n; return n;
} }
/*! //! \brief NAV1
* \brief NAV1
* \return
*/
static const QString &NameNav1() static const QString &NameNav1()
{ {
static QString n("NAV1"); static QString n("NAV1");
return n; return n;
} }
/*! //! \brief NAV2
* \brief NAV2
* \return
*/
static const QString &NameNav2() static const QString &NameNav2()
{ {
static QString n("NAV2"); static QString n("NAV2");
return n; return n;
} }
/*! //! \brief NAV3
* \brief NAV2
* \return
*/
static const QString &NameNav3() static const QString &NameNav3()
{ {
static QString n("NAV3"); static QString n("NAV3");
return n; return n;
} }
/*! //! \brief ADF1
* \brief ADF1
* \return
*/
static const QString &NameAdf1() static const QString &NameAdf1()
{ {
static QString n("ADF1"); static QString n("ADF1");
return n; return n;
} }
/*! //! \brief ADF2
* \brief ADF2
* \return
*/
static const QString &NameAdf2() static const QString &NameAdf2()
{ {
static QString n("ADF2"); static QString n("ADF2");
return n; return n;
} }
/*! //! \brief Frequency not set
* \brief Frequency not set
* \return
*/
static const BlackMisc::PhysicalQuantities::CFrequency &FrequencyNotSet() static const BlackMisc::PhysicalQuantities::CFrequency &FrequencyNotSet()
{ {
static BlackMisc::PhysicalQuantities::CFrequency f; static BlackMisc::PhysicalQuantities::CFrequency f;
return f; return f;
} }
/*! //! \copydoc CValueObject::marshallFromDbus()
* \copydoc CValueObject::marshallFromDbus()
*/
virtual void marshallToDbus(QDBusArgument &argument) const override; virtual void marshallToDbus(QDBusArgument &argument) const override;
/*! //! \copydoc CValueObject::unmarshallFromDbus()
* \copydoc CValueObject::unmarshallFromDbus()
*/
virtual void unmarshallFromDbus(const QDBusArgument &argument) override; virtual void unmarshallFromDbus(const QDBusArgument &argument) override;
/*! //! \copydoc CValueObject::getValueHash()
* \copydoc CValueObject::getValueHash()
*/
virtual uint getValueHash() const override; virtual uint getValueHash() const override;
public: public:
/*! //! \brief Virtual destructor
* \brief Virtual destructor
*/
virtual ~CModulator() {} virtual ~CModulator() {}
/*! //! \brief Default value?
* \brief Default value
* \return
*/
virtual bool isDefaultValue() const virtual bool isDefaultValue() const
{ {
return this->m_frequencyActive == CModulator::FrequencyNotSet(); return this->m_frequencyActive == CModulator::FrequencyNotSet();
} }
/*! //! \brief Toggle active and standby frequencies
* \brief Toggle active and standby frequencies
*/
void toggleActiveStandby(); void toggleActiveStandby();
/*! //! \brief Active frequency
* \brief Active frequency
* \return
*/
BlackMisc::PhysicalQuantities::CFrequency getFrequencyActive() const BlackMisc::PhysicalQuantities::CFrequency getFrequencyActive() const
{ {
return this->m_frequencyActive; return this->m_frequencyActive;
} }
/*! //! \brief Standby frequency
* \brief Standby frequency
* \return
*/
BlackMisc::PhysicalQuantities::CFrequency getFrequencyStandby() const BlackMisc::PhysicalQuantities::CFrequency getFrequencyStandby() const
{ {
return this->m_frequencyStandby; return this->m_frequencyStandby;
} }
/*! //! \brief Set active frequency
* \brief Set active frequency
* \param frequency
*/
void setFrequencyActive(const BlackMisc::PhysicalQuantities::CFrequency &frequency) void setFrequencyActive(const BlackMisc::PhysicalQuantities::CFrequency &frequency)
{ {
this->m_frequencyActive = frequency; this->m_frequencyActive = frequency;
} }
/*! //! \brief Set standby frequency
* \brief Set standby frequency
* \param frequency
*/
void setFrequencyStandby(const BlackMisc::PhysicalQuantities::CFrequency &frequency) void setFrequencyStandby(const BlackMisc::PhysicalQuantities::CFrequency &frequency)
{ {
this->m_frequencyStandby = frequency; this->m_frequencyStandby = frequency;
} }
/*! //! \brief Output volume
* \brief Output volume
* \return
*/
qint32 getVolumeOutput() const { return this->m_volumeOutput; } qint32 getVolumeOutput() const { return this->m_volumeOutput; }
/*! //! \brief Input volume
* \brief Input volume
* \return
*/
qint32 getVolumeInput() const { return this->m_volumeInput; } qint32 getVolumeInput() const { return this->m_volumeInput; }
/*! //! \brief Output volume
* \brief Output volume
*/
void setVolumeOutput(qint32 volume) { this->m_volumeOutput = volume; } void setVolumeOutput(qint32 volume) { this->m_volumeOutput = volume; }
/*! //! \brief Input volume
* \brief Input volume
*/
void setVolumeInput(qint32 volume) { this->m_volumeInput = volume; } void setVolumeInput(qint32 volume) { this->m_volumeInput = volume; }
/*! //! \brief Enabled?
* \brief Enabled?
*/
bool isEnabled() const { return this->m_enabled;} bool isEnabled() const { return this->m_enabled;}
/*! //! \brief Enabled?
* \brief Enabled?
*/
void setEnabled(bool enable) { this->m_enabled = enable;} void setEnabled(bool enable) { this->m_enabled = enable;}
/*! /*!

View File

@@ -48,24 +48,13 @@ namespace BlackMisc
virtual int compareImpl(const CValueObject &other) const override; virtual int compareImpl(const CValueObject &other) const override;
public: public:
/*! //! \brief Default constructor: 0 Track magnetic
* \brief Default constructor: 0 Track magnetic
*/
CTrack() : BlackMisc::PhysicalQuantities::CAngle(0, BlackMisc::PhysicalQuantities::CAngleUnit::rad()), m_north(Magnetic) {} CTrack() : BlackMisc::PhysicalQuantities::CAngle(0, BlackMisc::PhysicalQuantities::CAngleUnit::rad()), m_north(Magnetic) {}
/*! //! \brief Constructor
* \brief Constructor
* \param value
* \param north
* \param unit
*/
CTrack(double value, ReferenceNorth north, const BlackMisc::PhysicalQuantities::CAngleUnit &unit) : BlackMisc::PhysicalQuantities::CAngle(value, unit), m_north(north) {} CTrack(double value, ReferenceNorth north, const BlackMisc::PhysicalQuantities::CAngleUnit &unit) : BlackMisc::PhysicalQuantities::CAngle(value, unit), m_north(north) {}
/*! //! \brief Constructor by CAngle
* \brief Constructor by CAngle
* \param track
* \param north
*/
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) {}
//! \copydoc CValueObject::toQVariant //! \copydoc CValueObject::toQVariant

View File

@@ -18,9 +18,7 @@ namespace BlackMisc
{ {
namespace Hardware namespace Hardware
{ {
/*! //! \brief Value object representing a keyboard key.
* \brief Value object representing a keyboard key.
*/
class CKeyboardKey : public CValueObject class CKeyboardKey : public CValueObject
{ {
public: public:
@@ -195,11 +193,7 @@ namespace BlackMisc
return this->m_modifier1 != ModifierNone || this->m_modifier2 != ModifierNone; return this->m_modifier1 != ModifierNone || this->m_modifier2 != ModifierNone;
} }
/*! //! \brief Do we have this modifier?
* \brief Do we have this modifier?
* \param modifier
* \return
*/
bool hasModifier(Modifier modifier) const bool hasModifier(Modifier modifier) const
{ {
return m_modifier1 == modifier || m_modifier2 == modifier; return m_modifier1 == modifier || m_modifier2 == modifier;

View File

@@ -63,9 +63,7 @@ namespace BlackMisc
virtual void unmarshallFromDbus(const QDBusArgument &argument) override; virtual void unmarshallFromDbus(const QDBusArgument &argument) override;
public: public:
/*! //! \brief Default constructor
* \brief Default constructor
*/
CMatrixBase() : m_matrix() {} CMatrixBase() : m_matrix() {}
/*! /*!
@@ -77,65 +75,39 @@ namespace BlackMisc
this->fill(fillValue); this->fill(fillValue);
} }
/*! //! \brief Virtual destructor
* \brief Virtual destructor
*/
virtual ~CMatrixBase() {} virtual ~CMatrixBase() {}
/*! //! \brief List of values
* \brief List of values
* \return
*/
QList<double> toList() const; QList<double> toList() const;
/*! //! \brief List of values
* \copydoc CValueObject::getValueHash
*/
virtual uint getValueHash() const override;
/*!
* \brief List of values
* \return
*/
void fromList(const QList<double> &list); void fromList(const QList<double> &list);
/*! //! \copydoc CValueObject::getValueHash
* \brief Equal operator == virtual uint getValueHash() const override;
* \param other
* \return //! \brief Equal operator ==
*/
bool operator ==(const ImplMatrix &other) const bool operator ==(const ImplMatrix &other) const
{ {
if (this == &other) return true; if (this == &other) return true;
return this->m_matrix == other.m_matrix; return this->m_matrix == other.m_matrix;
} }
/*! //! \brief Unequal operator !=
* \brief Unequal operator !=
* \param other
* \return
*/
bool operator !=(const ImplMatrix &other) const bool operator !=(const ImplMatrix &other) const
{ {
return !((*this) == other); return !((*this) == other);
} }
/*! //! \brief Operator *=
* \brief Operator *=
* \param factor
* \return
*/
CMatrixBase &operator *=(double factor) CMatrixBase &operator *=(double factor)
{ {
this->m_matrix *= factor; this->m_matrix *= factor;
return *this; return *this;
} }
/*! //! \brief Operator *
* \brief Operator *
* \param factor
* \return
*/
ImplMatrix operator *(double factor) const ImplMatrix operator *(double factor) const
{ {
ImplMatrix m = *derived(); ImplMatrix m = *derived();
@@ -143,33 +115,20 @@ namespace BlackMisc
return m; return m;
} }
/*! //! \brief Operator to support commutative scalar multiplication
* \brief Operator to support commutative scalar multiplication
* \param factor
* \param other
* \return
*/
friend ImplMatrix operator *(double factor, const ImplMatrix &other) friend ImplMatrix operator *(double factor, const ImplMatrix &other)
{ {
return other * factor; return other * factor;
} }
/*! //! \brief Operator /=
* \brief Operator /=
* \param factor
* \return
*/
CMatrixBase &operator /=(double factor) CMatrixBase &operator /=(double factor)
{ {
this->m_matrix /= factor; this->m_matrix /= factor;
return *this; return *this;
} }
/*! //! \brief Operator /
* \brief Operator /
* \param factor
* \return
*/
ImplMatrix operator /(double factor) const ImplMatrix operator /(double factor) const
{ {
ImplMatrix m = *derived(); ImplMatrix m = *derived();
@@ -177,22 +136,14 @@ namespace BlackMisc
return m; return m;
} }
/*! //! \brief Operator +=
* \brief Operator +=
* \param other
* \return
*/
CMatrixBase &operator +=(const CMatrixBase &other) CMatrixBase &operator +=(const CMatrixBase &other)
{ {
this->m_matrix += other.m_matrix; this->m_matrix += other.m_matrix;
return *this; return *this;
} }
/*! //! \brief Operator +
* \brief Operator +
* \param other
* \return
*/
ImplMatrix operator +(const ImplMatrix &other) const ImplMatrix operator +(const ImplMatrix &other) const
{ {
ImplMatrix m = *derived(); ImplMatrix m = *derived();
@@ -200,22 +151,14 @@ namespace BlackMisc
return m; return m;
} }
/*! //! \brief Operator -=
* \brief Operator -=
* \param other
* \return
*/
CMatrixBase &operator -=(const CMatrixBase &other) CMatrixBase &operator -=(const CMatrixBase &other)
{ {
this->m_matrix -= other.m_matrix; this->m_matrix -= other.m_matrix;
return *this; return *this;
} }
/*! //! \brief Operator -
* \brief Operator -
* \param other
* \return
*/
ImplMatrix operator -(const ImplMatrix &other) const ImplMatrix operator -(const ImplMatrix &other) const
{ {
ImplMatrix m = *derived(); ImplMatrix m = *derived();
@@ -223,19 +166,13 @@ namespace BlackMisc
return m; return m;
} }
/*! //! \brief Is identity matrix?
* \brief Is identity matrix?
* \return
*/
bool isIdentity() const bool isIdentity() const
{ {
return this->m_matrix.isIdentity(); return this->m_matrix.isIdentity();
} }
/*! //! \brief Is identity matrix? Epsilon considered.
* \brief Is identity matrix? Epsilon considered.
* \return
*/
bool isIdentityEpsilon() const bool isIdentityEpsilon() const
{ {
ImplMatrix m = *derived(); ImplMatrix m = *derived();
@@ -243,35 +180,19 @@ namespace BlackMisc
return m.isIdentity(); return m.isIdentity();
} }
/*! //! \brief Set as identity matrix
* \brief Set as identity matrix
* \return
*/
void setToIdentity() void setToIdentity()
{ {
this->m_matrix.setToIdentity(); this->m_matrix.setToIdentity();
} }
/*! //! \brief All values to zero
* \brief All values to zero
*/
void setZero() { this->m_matrix.fill(0.0); } void setZero() { this->m_matrix.fill(0.0); }
/*! //! \brief Is zero?
* \brief Is zero
* \return
*/
bool isZero() const; bool isZero() const;
/*! //! \brief Is zero matrix? Epsilon considered.
* \brief Each cell gets a unique index (used primarily for testing)
*/
void setCellIndex();
/*!
* \brief Is identity matrix? Epsilon considered.
* \return
*/
bool isZeroEpsilon() const bool isZeroEpsilon() const
{ {
ImplMatrix m = *derived(); ImplMatrix m = *derived();
@@ -279,21 +200,16 @@ namespace BlackMisc
return m.isZero(); return m.isZero();
} }
/*! //! \brief Each cell gets a unique index (used primarily for testing)
* \brief Set all elements the same void setCellIndex();
* \param value
*/ //! \brief Set all elements the same
void fill(double value) { this->m_matrix.fill(value); } void fill(double value) { this->m_matrix.fill(value); }
/*! //! \brief Round all values
* \brief Round all values
*/
void round(); void round();
/*! //! \brief Return a rounded matrix
* \brief Return a rounded matrix
* \return
*/
ImplMatrix roundedMatrix() const ImplMatrix roundedMatrix() const
{ {
ImplMatrix m = *derived(); ImplMatrix m = *derived();
@@ -301,57 +217,30 @@ namespace BlackMisc
return m; return m;
} }
/*! //! \brief Get element
* \brief Get element
* \param row
* \param column
* \return
*/
double getElement(int row, int column) const; double getElement(int row, int column) const;
/*! //! \brief Set element
* \brief Get element
* \param row
* \param column
* \param value
*/
void setElement(int row, int column, double value); void setElement(int row, int column, double value);
/*! //! \brief Get element by operator () modifying
* \brief Get element by operator () modifying
* \param row
* \param column
* \return
*/
double &operator()(int row, int column) double &operator()(int row, int column)
{ {
this->checkRange(row, column); this->checkRange(row, column);
return this->m_matrix(row, column); return this->m_matrix(row, column);
} }
/*! //! \brief Get element by operator () read only
* \brief Get element by operator () read only
* \param row
* \param column
* \return
*/
double operator()(int row, int column) const double operator()(int row, int column) const
{ {
return this->getElement(row, column); return this->getElement(row, column);
} }
/*! //! \brief Register metadata
* \brief Register metadata
*/
static void registerMetadata(); static void registerMetadata();
private: private:
/*! //! \brief Check range of row / column
* \brief Check range of row / column
* \param row
* \param column
* \throws std::range_error if index out of bounds
*/
void checkRange(int row, int column) const; void checkRange(int row, int column) const;
}; };

View File

@@ -20,136 +20,98 @@ namespace BlackMisc
namespace Network namespace Network
{ {
/*! /*!
* Value object encapsulating information of a textserver * Value object encapsulating information of a text message
*/ */
class CTextMessage : public BlackMisc::CValueObject class CTextMessage : public BlackMisc::CValueObject
{ {
public: public:
/*! //! \brief Default constructor.
* Default constructor.
*/
CTextMessage() : m_received(QDateTime::currentDateTimeUtc()), m_frequency(0, BlackMisc::PhysicalQuantities::CFrequencyUnit::nullUnit()) {} CTextMessage() : m_received(QDateTime::currentDateTimeUtc()), m_frequency(0, BlackMisc::PhysicalQuantities::CFrequencyUnit::nullUnit()) {}
/*! //! \brief Constructor, radio message
* Constructor, radio message
*/
CTextMessage(const QString &message, const BlackMisc::PhysicalQuantities::CFrequency &frequency, const BlackMisc::Aviation::CCallsign &senderCallsign = BlackMisc::Aviation::CCallsign()) CTextMessage(const QString &message, const BlackMisc::PhysicalQuantities::CFrequency &frequency, const BlackMisc::Aviation::CCallsign &senderCallsign = BlackMisc::Aviation::CCallsign())
: m_message(message), m_received(QDateTime::currentDateTimeUtc()), m_senderCallsign(senderCallsign), m_frequency(frequency) : m_message(message), m_received(QDateTime::currentDateTimeUtc()), m_senderCallsign(senderCallsign), m_frequency(frequency)
{ {
this->m_frequency.switchUnit(BlackMisc::PhysicalQuantities::CFrequencyUnit::MHz()); this->m_frequency.switchUnit(BlackMisc::PhysicalQuantities::CFrequencyUnit::MHz());
} }
/*! //! \brief Constructor, private message
* Constructor, private message
*/
CTextMessage(const QString &message, const BlackMisc::Aviation::CCallsign &senderCallsign, const BlackMisc::Aviation::CCallsign &recipientCallsign = BlackMisc::Aviation::CCallsign()) CTextMessage(const QString &message, const BlackMisc::Aviation::CCallsign &senderCallsign, const BlackMisc::Aviation::CCallsign &recipientCallsign = BlackMisc::Aviation::CCallsign())
: m_message(message), m_received(QDateTime::currentDateTimeUtc()), m_senderCallsign(senderCallsign), m_recipientCallsign(recipientCallsign), m_frequency(0, BlackMisc::PhysicalQuantities::CFrequencyUnit::nullUnit()) {} : m_message(message), m_received(QDateTime::currentDateTimeUtc()), m_senderCallsign(senderCallsign), m_recipientCallsign(recipientCallsign), m_frequency(0, BlackMisc::PhysicalQuantities::CFrequencyUnit::nullUnit()) {}
/*! //! \brief Get callsign (from)
* Get callsign (from)
*/
const BlackMisc::Aviation::CCallsign &getSenderCallsign() const const BlackMisc::Aviation::CCallsign &getSenderCallsign() const
{ {
return m_senderCallsign; return m_senderCallsign;
} }
/*! //! \brief Set callsign (from)
* Set callsign (from)
*/
void setSenderCallsign(const BlackMisc::Aviation::CCallsign &callsign) void setSenderCallsign(const BlackMisc::Aviation::CCallsign &callsign)
{ {
m_senderCallsign = callsign; m_senderCallsign = callsign;
} }
/*! //! \brief Get callsign (to)
* Get callsign (to)
*/
const BlackMisc::Aviation::CCallsign &getRecipientCallsign() const const BlackMisc::Aviation::CCallsign &getRecipientCallsign() const
{ {
return m_recipientCallsign; return m_recipientCallsign;
} }
/*! //! \brief Set callsign (recipient)
* Set callsign (to)
*/
void setRecipientCallsign(const BlackMisc::Aviation::CCallsign &callsign) void setRecipientCallsign(const BlackMisc::Aviation::CCallsign &callsign)
{ {
m_recipientCallsign = callsign; m_recipientCallsign = callsign;
} }
/*! //! \brief Send to particular frequency?
* Send to particular frequency?
*/
bool isSendToFrequency(const BlackMisc::PhysicalQuantities::CFrequency &frequency) const; bool isSendToFrequency(const BlackMisc::PhysicalQuantities::CFrequency &frequency) const;
/*! //! \brief Send to UNICOM?
* Send to UNICOM?
*/
bool isSendToUnicom() const; bool isSendToUnicom() const;
/*! //! \brief Valid receviver?
* \brief Valid receviver?
*/
bool hasValidRecipient() const; bool hasValidRecipient() const;
/*! //! \brief Get message
* Get message
*/
const QString &getMessage() const const QString &getMessage() const
{ {
return m_message; return m_message;
} }
/*! //! \brief Empty message
* Empty message
*/
bool isEmpty() const bool isEmpty() const
{ {
return m_message.isEmpty(); return m_message.isEmpty();
} }
/*! //! \brief Set message
* Set message
*/
void setMessage(const QString &message) void setMessage(const QString &message)
{ {
m_message = message.trimmed(); m_message = message.trimmed();
} }
/*! //! \brief Get frequency
* Get frequency
*/
const BlackMisc::PhysicalQuantities::CFrequency &getFrequency() const const BlackMisc::PhysicalQuantities::CFrequency &getFrequency() const
{ {
return m_frequency; return m_frequency;
} }
/*! //! \brief Set frequency
* Set frequency
*/
void setFrequency(const BlackMisc::PhysicalQuantities::CFrequency &frequency) void setFrequency(const BlackMisc::PhysicalQuantities::CFrequency &frequency)
{ {
m_frequency = frequency; m_frequency = frequency;
} }
/*! //! \brief Is private message?
* \brief Is private message?
*/
bool isPrivateMessage() const; bool isPrivateMessage() const;
/*! //! \brief Is radio message?
* \brief Is radio message?
*/
bool isRadioMessage() const; bool isRadioMessage() const;
/*! //! \brief Initial message of server?
* \brief Initial message of server?
*/
bool isServerMessage() const; bool isServerMessage() const;
/*! //! \brief Received (hh mm ss)
* \brief Received (hh mm ss)
*/
QString receivedTime() const QString receivedTime() const
{ {
QString rt = this->m_received.toString("hh::mm::ss"); QString rt = this->m_received.toString("hh::mm::ss");
@@ -166,9 +128,7 @@ namespace BlackMisc
*/ */
QString asString(bool withSender, bool withRecipient, const QString separator = ", ") const; QString asString(bool withSender, bool withRecipient, const QString separator = ", ") const;
/*! //! \brief Toggle sender receiver, can be used to ping my own message
* Toggle sender receiver, can be used to ping my own message
*/
void toggleSenderRecipient(); void toggleSenderRecipient();
/*! /*!
@@ -182,37 +142,25 @@ namespace BlackMisc
*/ */
bool isSelcalMessageFor(const QString &selcal) const; bool isSelcalMessageFor(const QString &selcal) const;
/*! //! \brief Get SELCAL code (if applicable, e.g. ABCD), otherwise ""
* \brief Get SELCAL code (if applicable, e.g. ABCD), otherwise ""
*/
QString getSelcalCode() const; QString getSelcalCode() const;
/*! //! \brief Equal operator ==
* \brief Equal operator ==
*/
bool operator ==(const CTextMessage &other) const; bool operator ==(const CTextMessage &other) const;
/*! //! \brief Unequal operator !=
* \brief Unequal operator !=
*/
bool operator !=(const CTextMessage &other) const; bool operator !=(const CTextMessage &other) const;
/*! //! \copydoc CValueObject::getValueHash()
* \copydoc CValueObject::getValueHash()
*/
virtual uint getValueHash() const override; virtual uint getValueHash() const override;
/*! //! \copydoc CValueObject::toQVariant()
* \copydoc CValueObject::toQVariant()
*/
virtual QVariant toQVariant() const override virtual QVariant toQVariant() const override
{ {
return QVariant::fromValue(*this); return QVariant::fromValue(*this);
} }
/*! //! \brief Register metadata
* \brief Register metadata
*/
static void registerMetadata(); static void registerMetadata();
protected: protected:

View File

@@ -19,7 +19,7 @@ namespace BlackMisc
} }
if (this->hasValidCallsign()) if (this->hasValidCallsign())
{ {
s.append(this->getCallsign().getStringAsSet()); s.append(' ').append(this->getCallsign().getStringAsSet());
} }
return s; return s;
} }
@@ -38,7 +38,6 @@ namespace BlackMisc
bool CUser::isA(int metaTypeId) const bool CUser::isA(int metaTypeId) const
{ {
if (metaTypeId == qMetaTypeId<CUser>()) { return true; } if (metaTypeId == qMetaTypeId<CUser>()) { return true; }
return this->CValueObject::isA(metaTypeId); return this->CValueObject::isA(metaTypeId);
} }
@@ -48,7 +47,6 @@ namespace BlackMisc
int CUser::compareImpl(const CValueObject &otherBase) const int CUser::compareImpl(const CValueObject &otherBase) const
{ {
const auto &other = static_cast<const CUser &>(otherBase); const auto &other = static_cast<const CUser &>(otherBase);
return compare(TupleConverter<CUser>::toTuple(*this), TupleConverter<CUser>::toTuple(other)); return compare(TupleConverter<CUser>::toTuple(*this), TupleConverter<CUser>::toTuple(other));
} }

View File

@@ -29,67 +29,45 @@ namespace BlackMisc
double m_value; //!< numeric part double m_value; //!< numeric part
MU m_unit; //!< unit part MU m_unit; //!< unit part
/*! //! \brief Which subclass of CMeasurementUnit is used?
* Which subclass of CMeasurementUnit does this quantity use?
*/
typedef MU UnitClass; typedef MU UnitClass;
/*! //! \brief Easy access to derived class (CRTP template parameter)
* \brief Easy access to derived class (CRTP template parameter)
*/
PQ const *derived() const PQ const *derived() const
{ {
return static_cast<PQ const *>(this); return static_cast<PQ const *>(this);
} }
/*! //! \brief Easy access to derived class (CRTP template parameter)
* \brief Easy access to derived class (CRTP template parameter)
*/
PQ *derived() PQ *derived()
{ {
return static_cast<PQ *>(this); return static_cast<PQ *>(this);
} }
protected: protected:
/*! //! \brief Constructor with double
* \brief Constructor with double
*/
CPhysicalQuantity(double value, const MU &unit); CPhysicalQuantity(double value, const MU &unit);
/*! //! \brief Copy constructor
* \brief Copy constructor
*/
CPhysicalQuantity(const CPhysicalQuantity &other); CPhysicalQuantity(const CPhysicalQuantity &other);
/*! //! \copydoc CValueObject::convertToQString
* \copydoc CValueObject::convertToQString
*/
virtual QString convertToQString(bool i18n = false) const override; virtual QString convertToQString(bool i18n = false) const override;
/*! //! \copydoc CValueObject::getMetaTypeId
* \copydoc CValueObject::getMetaTypeId
*/
virtual int getMetaTypeId() const override; virtual int getMetaTypeId() const override;
/*! //! \copydoc CValueObject::isA
* \copydoc CValueObject::isA
*/
virtual bool isA(int metaTypeId) const override; virtual bool isA(int metaTypeId) const override;
/*! //! \copydoc CValueObject::compareImpl
* \copydoc CValueObject::compareImpl
*/
virtual int compareImpl(const CValueObject &other) const override; virtual int compareImpl(const CValueObject &other) const override;
public: public:
/*! //! \brief Virtual destructor
* \brief Virtual destructor
*/
virtual ~CPhysicalQuantity() {} virtual ~CPhysicalQuantity() {}
/*! //! \brief Unit
* \brief Unit
*/
MU getUnit() const MU getUnit() const
{ {
return this->m_unit; return this->m_unit;
@@ -104,217 +82,145 @@ namespace BlackMisc
this->m_unit = unit; this->m_unit = unit;
} }
/*! //! \brief Set unit by string
* \brief Set unit by string void setUnitBySymbol(const QString &unitName)
*/
void setUnitByString(const QString &unitName)
{ {
this->m_unit = CMeasurementUnit::unitFromSymbol<MU>(unitName); this->m_unit = CMeasurementUnit::unitFromSymbol<MU>(unitName);
} }
/*! //! \brief Unit
* \brief Unit
*/
QString getUnitSymbol() const QString getUnitSymbol() const
{ {
return this->m_unit.getSymbol(true); return this->m_unit.getSymbol(true);
} }
/*! //! \brief Change unit, and convert value to maintain the same quantity
* \brief Change unit, and convert value to maintain the same quantity
*/
PQ &switchUnit(const MU &newUnit); PQ &switchUnit(const MU &newUnit);
/*! //! Is quantity null?
* Is quantity null?
*/
bool isNull() const bool isNull() const
{ {
return this->m_unit.isNull(); return this->m_unit.isNull();
} }
/*! //! \brief Value in given unit
* \brief Value in given unit
*/
double value(const MU &unit) const; double value(const MU &unit) const;
/*! //! \brief Value in current unit
* \brief Value in current unit
*/
double value() const double value() const
{ {
return this->m_value; return this->m_value;
} }
/*! //! \brief Set value in current unit
* \brief Set value in current unit
*/
void setCurrentUnitValue(double value) void setCurrentUnitValue(double value)
{ {
this->m_value = value; this->m_value = value;
} }
/*! //! \brief Rounded value in given unit
* \brief Rounded value in given unit
*/
double valueRounded(const MU &unit, int digits = -1) const; double valueRounded(const MU &unit, int digits = -1) const;
/*! //! \brief Rounded value in current unit
* \brief Rounded value in current unit
*/
double valueRounded(int digits = -1) const double valueRounded(int digits = -1) const
{ {
return this->valueRounded(this->m_unit, digits); return this->valueRounded(this->m_unit, digits);
} }
/*! //! \brief Value to QString with the given unit, e.g. "5.00m"
* \brief Value to QString with the given unit, e.g. "5.00m"
*/
QString valueRoundedWithUnit(const MU &unit, int digits = -1, bool i18n = false) const; QString valueRoundedWithUnit(const MU &unit, int digits = -1, bool i18n = false) const;
/*! //! \brief Value to QString with the current unit, e.g. "5.00m"
* \brief Value to QString with the current unit, e.g. "5.00m"
*/
QString valueRoundedWithUnit(int digits = -1, bool i18n = false) const QString valueRoundedWithUnit(int digits = -1, bool i18n = false) const
{ {
return this->valueRoundedWithUnit(this->m_unit, digits, i18n); return this->valueRoundedWithUnit(this->m_unit, digits, i18n);
} }
/*! //! \brief Change value without changing unit
* \brief Change value without changing unit
*/
void setValueSameUnit(double value); void setValueSameUnit(double value);
/*! //! \brief Add to the value in the current unit.
* \brief Add to the value in the current unit.
*/
void addValueSameUnit(double value); void addValueSameUnit(double value);
/*! //! \brief Substract from the value in the current unit.
* \brief Substract from the value in the current unit.
*/
void substractValueSameUnit(double value); void substractValueSameUnit(double value);
/*! //! \brief Multiply operator *=
* \brief Multiply operator *=
*/
CPhysicalQuantity &operator *=(double multiply); CPhysicalQuantity &operator *=(double multiply);
/*! //! \brief Divide operator /=
* \brief Divide operator /=
*/
CPhysicalQuantity &operator /=(double divide); CPhysicalQuantity &operator /=(double divide);
/*! //! \brief Operator *
* \brief Operator *
*/
PQ operator *(double multiply) const; PQ operator *(double multiply) const;
/*! //! \brief Operator to support commutative multiplication
* \brief Operator to support commutative multiplication
*/
friend PQ operator *(double factor, const PQ &other) friend PQ operator *(double factor, const PQ &other)
{ {
return other * factor; return other * factor;
} }
/*! //! \brief Operator /
* \brief Operator /
*/
PQ operator /(double divide) const; PQ operator /(double divide) const;
/*! //! \brief Equal operator ==
* \brief Equal operator ==
*/
bool operator==(const CPhysicalQuantity &other) const; bool operator==(const CPhysicalQuantity &other) const;
/*! //! \brief Not equal operator !=
* \brief Not equal operator !=
*/
bool operator!=(const CPhysicalQuantity &other) const; bool operator!=(const CPhysicalQuantity &other) const;
/*! //! \brief Plus operator +=
* \brief Plus operator +=
*/
CPhysicalQuantity &operator +=(const CPhysicalQuantity &other); CPhysicalQuantity &operator +=(const CPhysicalQuantity &other);
/*! //! \brief Minus operator-=
* \brief Minus operator-=
*/
CPhysicalQuantity &operator -=(const CPhysicalQuantity &other); CPhysicalQuantity &operator -=(const CPhysicalQuantity &other);
/*! //! \brief Greater operator >
* \brief Greater operator >
*/
bool operator >(const CPhysicalQuantity &other) const; bool operator >(const CPhysicalQuantity &other) const;
/*! //! \brief Less operator <
* \brief Less operator <
*/
bool operator <(const CPhysicalQuantity &other) const; bool operator <(const CPhysicalQuantity &other) const;
/*! //! \brief Less equal operator <=
* \brief Less equal operator <=
*/
bool operator <=(const CPhysicalQuantity &other) const; bool operator <=(const CPhysicalQuantity &other) const;
/*! //! \brief Greater equal operator >=
* \brief Greater equal operator >=
*/
bool operator >=(const CPhysicalQuantity &other) const; bool operator >=(const CPhysicalQuantity &other) const;
/*! //! \brief Plus operator +
* \brief Plus operator +
*/
PQ operator +(const PQ &other) const; PQ operator +(const PQ &other) const;
/*! //! \brief Minus operator -
* \brief Minus operator -
*/
PQ operator -(const PQ &other) const; PQ operator -(const PQ &other) const;
/*! //! \brief Quantity value <= epsilon
* \brief Quantity value <= epsilon
*/
bool isZeroEpsilonConsidered() const bool isZeroEpsilonConsidered() const
{ {
return this->m_unit.isEpsilon(this->m_value); return this->m_unit.isEpsilon(this->m_value);
} }
/*! //! \brief Value >= 0 epsilon considered
* \brief Value >= 0 epsilon considered
*/
bool isPositiveWithEpsilonConsidered() const bool isPositiveWithEpsilonConsidered() const
{ {
return !this->isZeroEpsilonConsidered() && this->m_value > 0; return !this->isZeroEpsilonConsidered() && this->m_value > 0;
} }
/*! //! \brief Value <= 0 epsilon considered
* \brief Value <= 0 epsilon considered
*/
bool isNegativeWithEpsilonConsidered() const bool isNegativeWithEpsilonConsidered() const
{ {
return !this->isZeroEpsilonConsidered() && this->m_value < 0; return !this->isZeroEpsilonConsidered() && this->m_value < 0;
} }
/*! //! \copydoc CValueObject::marshallToDbus
* \copydoc CValueObject::marshallToDbus
*/
virtual void marshallToDbus(QDBusArgument &argument) const override; virtual void marshallToDbus(QDBusArgument &argument) const override;
/*! //! \copydoc CValueObject::unmarshallFromDbus
* \copydoc CValueObject::unmarshallFromDbus
*/
virtual void unmarshallFromDbus(const QDBusArgument &argument) override; virtual void unmarshallFromDbus(const QDBusArgument &argument) override;
/*! //! \copydoc CValueObject::getValueHash
* \copydoc CValueObject::getValueHash
*/
virtual uint getValueHash() const override; virtual uint getValueHash() const override;
/*! //! \brief Register metadata of unit and quantity
* \brief Register metadata of unit and quantity
*/
static void registerMetadata(); static void registerMetadata();
}; };

View File

@@ -24,54 +24,32 @@ namespace BlackMisc
{ {
public: public:
/*! //! \brief Default constructor.
* Default constructor. CVoiceRoom() : m_connected(false), m_audioPlaying(false) {}
*/
CVoiceRoom() :
m_connected(false), m_audioPlaying(false) {}
/*! //! \brief Constructor.
* Constructor.
* \param hostname
* \param channel
*/
CVoiceRoom(const QString &hostname, const QString &channel) : CVoiceRoom(const QString &hostname, const QString &channel) :
m_hostname(hostname), m_channel(channel), m_connected(false), m_audioPlaying(false) {} m_hostname(hostname), m_channel(channel), m_connected(false), m_audioPlaying(false) {}
/*! //! \brief Constructor.
* Constructor.
* \param serverUrl
* \param connected
*/
CVoiceRoom(const QString &serverUrl, bool connected = false); CVoiceRoom(const QString &serverUrl, bool connected = false);
/*! //! \copydoc CValueObject::toQVariant
* \copydoc CValueObject::toQVariant
*/
virtual QVariant toQVariant() const override virtual QVariant toQVariant() const override
{ {
return QVariant::fromValue(*this); return QVariant::fromValue(*this);
} }
/*! //! \brief Get the host name
* Get the host name
* \return
*/
const QString &getHostName() const { return m_hostname; } const QString &getHostName() const { return m_hostname; }
/*! //! \brief Get the voice room channel
* Get the voice room
*/
const QString &getChannel() const { return m_channel; } const QString &getChannel() const { return m_channel; }
/*! //! \brief Set the host name
* \brief Set the host name
*/
void setHostName(const QString &hostName) { m_hostname = hostName; } void setHostName(const QString &hostName) { m_hostname = hostName; }
/*! //! \brief Set the voice channel
* \brief Set the voice channel
*/
void setChannel(const QString &channel) { m_channel = channel; } void setChannel(const QString &channel) { m_channel = channel; }
/*! /*!
@@ -81,59 +59,31 @@ namespace BlackMisc
*/ */
QString getVoiceRoomUrl(bool noProtocol = true) const; QString getVoiceRoomUrl(bool noProtocol = true) const;
/*! //! \brief Valid voice room object?
* \brief Valid voice room object?
* \return
*/
bool isValid() const { return !this->m_hostname.isEmpty() && !this->m_channel.isEmpty(); } bool isValid() const { return !this->m_hostname.isEmpty() && !this->m_channel.isEmpty(); }
/*! //! \brief Is connected?
* \brief Is connected
* \return
*/
bool isConnected() const { return this->isValid() && this->m_connected; } bool isConnected() const { return this->isValid() && this->m_connected; }
/*! //! \brief Set connection status
* \brief Set connected status
* \param isConnected
*/
void setConnected(bool isConnected) { this->m_connected = isConnected; } void setConnected(bool isConnected) { this->m_connected = isConnected; }
/*! //! \brief Is audio playing in this room?
* \brief Is audio playing in this room?
* \return
*/
bool isAudioPlaying() const { return this->m_audioPlaying; } bool isAudioPlaying() const { return this->m_audioPlaying; }
/*! //! \brief Set audio playing
* \brief Set audio playing
* \param playing
*/
void setAudioPlaying(bool playing) { this->m_audioPlaying = playing; } void setAudioPlaying(bool playing) { this->m_audioPlaying = playing; }
/*! //! \brief Is ATIS voice channel
* \brief Is ATIS voice channel
* \return
*/
bool isAtis() const; bool isAtis() const;
/*! //! \brief Equal operator ==
* \brief Equal operator ==
* \param other
* @return
*/
bool operator ==(const CVoiceRoom &other) const; bool operator ==(const CVoiceRoom &other) const;
/*! //! \brief Unequal operator !=
* \brief Unequal operator ==
* \param other
* @return
*/
bool operator !=(const CVoiceRoom &other) const; bool operator !=(const CVoiceRoom &other) const;
/*! //! \copydoc CValueObject::getValueHash
* \copydoc CValueObject::getValueHash
*/
virtual uint getValueHash() const override; virtual uint getValueHash() const override;
/*! /*!