mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-31 12:47:03 +08:00
CTransponder::setModeAsString
This commit is contained in:
@@ -84,6 +84,53 @@ namespace BlackMisc
|
||||
return m;
|
||||
}
|
||||
|
||||
/*
|
||||
* Mode as readable string
|
||||
*/
|
||||
void CTransponder::setModeAsString(const QString &m)
|
||||
{
|
||||
if (m == "Ident")
|
||||
{
|
||||
this->setTransponderMode(StateIdent);
|
||||
}
|
||||
else if (m == "Standby")
|
||||
{
|
||||
this->setTransponderMode(StateStandby);
|
||||
}
|
||||
else if (m == "Mode C")
|
||||
{
|
||||
this->setTransponderMode(ModeC);
|
||||
}
|
||||
else if (m == "Mode S")
|
||||
{
|
||||
this->setTransponderMode(ModeS);
|
||||
}
|
||||
else if (m == "Mil.Mode 1")
|
||||
{
|
||||
this->setTransponderMode(ModeMil1);
|
||||
}
|
||||
else if (m == "Mil.Mode 2")
|
||||
{
|
||||
this->setTransponderMode(ModeMil2);
|
||||
}
|
||||
else if (m == "Mil.Mode 3")
|
||||
{
|
||||
this->setTransponderMode(ModeMil3);
|
||||
}
|
||||
else if (m == "Mil.Mode 4")
|
||||
{
|
||||
this->setTransponderMode(ModeMil4);
|
||||
}
|
||||
else if (m == "Mil.Mode 5")
|
||||
{
|
||||
this->setTransponderMode(ModeMil5);
|
||||
}
|
||||
else
|
||||
{
|
||||
throw std::range_error("Illegal Transponder Mode");
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Formatted transponder code
|
||||
*/
|
||||
|
||||
@@ -139,7 +139,20 @@ namespace BlackMisc
|
||||
* \param transponderCode
|
||||
* \param transponderMode
|
||||
*/
|
||||
CTransponder(const QString &name, const QString &transponderCode, TransponderMode transponderMode) :
|
||||
CTransponder(const QString &name, qint32 transponderCode, QString transponderMode) :
|
||||
CAvionicsBase(name), m_transponderCode(transponderCode), m_transponderMode(StateStandby)
|
||||
{
|
||||
this->setModeAsString(transponderMode);
|
||||
this->validate(true);
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Constructor
|
||||
* \param name
|
||||
* \param transponderCode
|
||||
* \param transponderMode
|
||||
*/
|
||||
CTransponder(const QString &name, QString transponderCode, TransponderMode transponderMode) :
|
||||
CAvionicsBase(name), m_transponderCode(0), m_transponderMode(transponderMode)
|
||||
{
|
||||
bool ok = false;
|
||||
@@ -148,6 +161,22 @@ namespace BlackMisc
|
||||
this->validate(true);
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Constructor
|
||||
* \param name
|
||||
* \param transponderCode
|
||||
* \param transponderMode
|
||||
*/
|
||||
CTransponder(const QString &name, QString transponderCode, QString transponderMode) :
|
||||
CAvionicsBase(name), m_transponderCode(0), m_transponderMode(StateStandby)
|
||||
{
|
||||
bool ok = false;
|
||||
this->m_transponderCode = transponderCode.toUInt(&ok);
|
||||
if (!ok) this->m_transponderCode = -1; // will cause assert / exception
|
||||
this->setModeAsString(transponderMode);
|
||||
this->validate(true);
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief QVariant, required for DBus QVariant lists
|
||||
* \return
|
||||
@@ -160,13 +189,20 @@ namespace BlackMisc
|
||||
/*!
|
||||
* \brief Transponder mode as string
|
||||
* \return
|
||||
* \throws std::range_erros
|
||||
*/
|
||||
QString getModeAsString() const;
|
||||
|
||||
/*!
|
||||
* \brief Transponder mode as string
|
||||
* \param mode
|
||||
* \throws std::range_error
|
||||
*/
|
||||
void setModeAsString(const QString &mode);
|
||||
|
||||
/*!
|
||||
* \brief Transponder mode
|
||||
* \return
|
||||
* \throws std::range_error
|
||||
*/
|
||||
TransponderMode getTransponderMode() const
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user