MS & KB workshop: removed CAvionicsBase.

This commit is contained in:
Mathew Sutcliffe
2015-05-12 21:55:01 +01:00
parent 069f4749f4
commit c136724cd0
14 changed files with 46 additions and 103 deletions

View File

@@ -735,14 +735,14 @@ namespace BlackCore
CTransponder transponder;
if (CTransponder::isValidTransponderCode(position->transponderCode))
{
transponder = CTransponder(transponderName, position->transponderCode, mode);
transponder = CTransponder(position->transponderCode, mode);
}
else
{
CLogMessage(static_cast<CNetworkVatlib *>(nullptr)).warning("Wrong transponder code %1 for %2") << position->transponderCode << callsign;
// default
transponder = CTransponder(transponderName, 7000, mode);
transponder = CTransponder(7000, mode);
}
emit cbvar_cast(cbvar)->aircraftPositionUpdate(situation, transponder);
}

View File

@@ -75,7 +75,7 @@ namespace BlackMisc
}
protected:
//! \copydoc CAvionicsBase::validValues
//! \copydoc CModulator::validValues
virtual bool validValues() const override
{
if (this->isDefaultValue()) return true; // special case

View File

@@ -155,7 +155,7 @@ namespace BlackMisc
void CAircraft::initTransponder()
{
CTransponder xpdr("TRANSPONDER", 7000, CTransponder::StateStandby);
CTransponder xpdr(7000, CTransponder::StateStandby);
this->setTransponder(xpdr);
}

View File

@@ -1,64 +0,0 @@
/* Copyright (C) 2013 VATSIM Community / contributors
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef BLACKMISC_AVIATION_AVIONICSBASE_H
#define BLACKMISC_AVIATION_AVIONICSBASE_H
//! \file
#include "blackmisc/blackmiscexport.h"
#include "blackmisc/valueobject.h"
#include "blackmisc/pq/constants.h"
#include <QtGlobal>
namespace BlackMisc
{
namespace Aviation
{
//! Base class for avionics
class BLACKMISC_EXPORT CAvionicsBase :
public Mixin::HashByTuple<CAvionicsBase>,
public Mixin::DBusByTuple<CAvionicsBase>,
public Mixin::JsonByTuple<CAvionicsBase>,
public Mixin::EqualsByTuple<CAvionicsBase>,
public Mixin::LessThanByTuple<CAvionicsBase>,
public Mixin::CompareByTuple<CAvionicsBase>,
public Mixin::String<CAvionicsBase>
{
public:
//! Name
QString getName() const { return this->m_name; }
//! Are set values valid?
virtual bool validValues() const { return true; }
//! Virtual destructor
virtual ~CAvionicsBase() {}
protected:
//! Constructor
CAvionicsBase() : m_name("default") {}
//! Constructor
CAvionicsBase(const QString &name) : m_name(name) {}
//! Set name
void setName(const QString &name) { this->m_name = name; }
//! \copydoc CValueObject::convertToQString
QString convertToQString(bool i18n = false) const { Q_UNUSED(i18n); return ""; }
private:
QString m_name; //!< name of the unit
BLACK_ENABLE_TUPLE_CONVERSION(CAvionicsBase)
};
} // namespace
} // namespace
BLACK_DECLARE_TUPLE_CONVERSION(BlackMisc::Aviation::CAvionicsBase, (o.m_name))
#endif // guard

View File

@@ -153,7 +153,7 @@ namespace BlackMisc
static bool isWithinChannelSpacing(const BlackMisc::PhysicalQuantities::CFrequency &setFrequency, const BlackMisc::PhysicalQuantities::CFrequency &compareFrequency, ChannelSpacing channelSpacing);
protected:
//! \copydoc CAvionicsBase::validValues
//! \copydoc CModulator::validValues
virtual bool validValues() const override;
private:

View File

@@ -49,7 +49,7 @@ namespace BlackMisc
case IndexOutputVolume:
return CVariant::from(this->getVolumeOutput());
default:
return CValueObject<CModulator<AVIO>, CAvionicsBase>::propertyByIndex(index);
return CValueObject<CModulator<AVIO>>::propertyByIndex(index);
}
}
@@ -80,7 +80,7 @@ namespace BlackMisc
this->setVolumeOutput(variant.toInt());
break;
default:
CValueObject<CModulator<AVIO>, CAvionicsBase>::setPropertyByIndex(variant, index);
CValueObject<CModulator<AVIO>>::setPropertyByIndex(variant, index);
break;
}
}

View File

@@ -13,9 +13,10 @@
#define BLACKMISC_AVIATION_MODULATORUNIT_H
#include "blackmisc/propertyindex.h"
#include "blackmisc/aviation/avionicsbase.h"
#include "blackmisc/math/mathutils.h"
#include "blackmisc/blackmiscfreefunctions.h"
#include "blackmisc/pq/constants.h"
#include "blackmisc/pq/frequency.h"
namespace BlackMisc
{
@@ -23,7 +24,7 @@ namespace BlackMisc
{
//! Base class for COM, NAV, Squawk units.
template <class AVIO> class CModulator : public CValueObject<CModulator<AVIO>, CAvionicsBase>
template <class AVIO> class CModulator : public CValueObject<CModulator<AVIO>>
{
public:
//! Column indexes
@@ -81,12 +82,18 @@ namespace BlackMisc
//! Input volume 0..100
void setVolumeInput(int volume) { this->m_volumeInput = volume; }
//! Name
QString getName() const { return this->m_name; }
//! Enabled?
bool isEnabled() const { return this->m_enabled;}
//! Enabled?
void setEnabled(bool enable) { this->m_enabled = enable;}
//! Are set values valid?
virtual bool validValues() const { return true; }
//! \copydoc CValueObject::propertyByIndex
CVariant propertyByIndex(const BlackMisc::CPropertyIndex &index) const;
@@ -98,11 +105,11 @@ namespace BlackMisc
protected:
//! Default constructor
CModulator() : CModulator::CValueObject("default") {}
CModulator() : m_name("default") {}
//! Constructor
CModulator(const QString &name, const BlackMisc::PhysicalQuantities::CFrequency &activeFrequency, const BlackMisc::PhysicalQuantities::CFrequency &standbyFrequency) :
CModulator::CValueObject(name), m_frequencyActive(activeFrequency), m_frequencyStandby(standbyFrequency) {}
m_name(name), m_frequencyActive(activeFrequency), m_frequencyStandby(standbyFrequency) {}
//! Set active frequency
void setFrequencyActiveKHz(double frequencyKHz)
@@ -195,6 +202,7 @@ namespace BlackMisc
private:
BLACK_ENABLE_TUPLE_CONVERSION(CModulator)
QString m_name; //!< name of the unit
BlackMisc::PhysicalQuantities::CFrequency m_frequencyActive; //!< active frequency
BlackMisc::PhysicalQuantities::CFrequency m_frequencyStandby; //!< standby frequency
int m_volumeInput = 0; //!< volume input
@@ -223,6 +231,7 @@ namespace BlackMisc
} // namespace
BLACK_DECLARE_TUPLE_CONVERSION_TEMPLATE(BlackMisc::Aviation::CModulator, (
o.m_name,
o.m_frequencyActive,
o.m_frequencyStandby,
o.m_volumeInput ,

View File

@@ -93,7 +93,7 @@ namespace BlackMisc
}
protected:
//! \copydoc CAvionicsBase::validValues
//! \copydoc CModulator::validValues
virtual bool validValues() const override
{
if (this->isDefaultValue()) return true; // special case

View File

@@ -44,9 +44,7 @@ namespace BlackMisc
QString CTransponder::convertToQString(bool /* i18n */) const
{
QString s = this->getName();
s = s.append(" ").append(this->getTransponderCodeFormatted()).append(" ").append(this->getModeAsString());
return s;
return this->getTransponderCodeFormatted().append(" ").append(this->getModeAsString());
}
CTransponder::TransponderMode CTransponder::modeFromString(const QString &modeString)

View File

@@ -13,7 +13,7 @@
#define BLACKMISC_AVIATION_TRANSPONDER_H
#include "blackmisc/blackmiscexport.h"
#include "blackmisc/aviation/avionicsbase.h"
#include "blackmisc/valueobject.h"
namespace BlackMisc
{
@@ -21,7 +21,7 @@ namespace BlackMisc
namespace Aviation
{
//! Transponder
class BLACKMISC_EXPORT CTransponder : public CValueObject<CTransponder, CAvionicsBase>
class BLACKMISC_EXPORT CTransponder : public CValueObject<CTransponder>
{
public:
//! Transponder codes
@@ -46,23 +46,23 @@ namespace BlackMisc
};
//! Default constructor
CTransponder() : CValueObject("transponder"), m_transponderCode(0), m_transponderMode(StateStandby) {}
CTransponder() : m_transponderCode(0), m_transponderMode(StateStandby) {}
//! Constructor
CTransponder(const QString &name, int transponderCode, TransponderMode transponderMode) :
CValueObject(name), m_transponderCode(transponderCode), m_transponderMode(transponderMode)
CTransponder(int transponderCode, TransponderMode transponderMode) :
m_transponderCode(transponderCode), m_transponderMode(transponderMode)
{ }
//! Constructor with transponder mode as string
CTransponder(const QString &name, int transponderCode, QString transponderMode) :
CValueObject(name), m_transponderCode(transponderCode), m_transponderMode(StateStandby)
CTransponder(int transponderCode, QString transponderMode) :
m_transponderCode(transponderCode), m_transponderMode(StateStandby)
{
this->setModeAsString(transponderMode);
}
//! Constructor, code as string
CTransponder(const QString &name, QString transponderCode, TransponderMode transponderMode) :
CValueObject(name), m_transponderCode(0), m_transponderMode(transponderMode)
CTransponder(QString transponderCode, TransponderMode transponderMode) :
m_transponderCode(0), m_transponderMode(transponderMode)
{
bool ok = false;
this->m_transponderCode = transponderCode.toInt(&ok);
@@ -70,8 +70,8 @@ namespace BlackMisc
}
//! Constructor
CTransponder(const QString &name, QString transponderCode, QString transponderMode) :
CValueObject(name), m_transponderCode(0), m_transponderMode(StateStandby)
CTransponder(QString transponderCode, QString transponderMode) :
m_transponderCode(0), m_transponderMode(StateStandby)
{
bool ok = false;
this->m_transponderCode = transponderCode.toInt(&ok);
@@ -79,8 +79,8 @@ namespace BlackMisc
this->setModeAsString(transponderMode);
}
//! \copydoc CAvionicsBase::validValues
virtual bool validValues() const override;
//! Are set values valid?
bool validValues() const;
//! Transponder mode as string
QString getModeAsString() const
@@ -148,7 +148,7 @@ namespace BlackMisc
//! Transponder unit
static CTransponder getStandardTransponder(qint32 transponderCode, TransponderMode mode)
{
return CTransponder("Transponder", transponderCode, mode);
return CTransponder(transponderCode, mode);
}
//! \copydoc CValueObject::propertyByIndex