7#include <QLatin1String>
14using namespace swift::misc::aviation;
16namespace swift::misc::simulation::fsx
18 QString CSimConnectUtilities::resolveEnumToString(
const DWORD id,
const char *enumName)
20 const int i = CSimConnectUtilities::staticMetaObject.indexOfEnumerator(enumName);
23 return QStringLiteral(
"No enumerator for %1").arg(enumName);
25 const QMetaEnum m = CSimConnectUtilities::staticMetaObject.enumerator(i);
26 const char *k = m.
valueToKey(
static_cast<int>(
id));
27 return (k) ? QLatin1String(k) : QStringLiteral(
"Id '%1' not found for %2").arg(id).arg(enumName);
32 return CSimConnectUtilities::resolveEnumToString(
id,
"SIMCONNECT_EXCEPTION");
37 QString sf = CSimConnectUtilities::resolveEnumToString(type,
"SIMCONNECT_SURFACE");
38 return beautify ? sf.
replace(
'_',
' ') : sf;
43 const QString ri = CSimConnectUtilities::resolveEnumToString(type,
"SIMCONNECT_RECV_ID");
79 qRegisterMetaType<CSimConnectUtilities::SIMCONNECT_EXCEPTION>();
80 qRegisterMetaType<CSimConnectUtilities::SIMCONNECT_SURFACE>();
89 info.
errorMsg =
"No SimConnect.dll loaded";
static DLLInfo getDllInfo(const QString &dllFile)
Get DDL.
static QList< ProcessModule > getModules(qint64 processId=-1, const QString &nameFilter={})
Process modules per id.
Value object encapsulating information about aircraft's lights.
bool isLandingOn() const
Landing lights on?
bool isBeaconOn() const
Beacon lights on?
bool isNavOn() const
Nac lights on?
bool isLogoOn() const
Logo lights on?
bool isTaxiOn() const
Taxi lights on?
bool isStrobeOn() const
Strobes lights on?
static int lightsToLightStates(const aviation::CAircraftLights &lights)
Lights to states.
static void registerMetadata()
Register metadata.
static swift::misc::CWinDllUtils::DLLInfo simConnectDllInfo()
Get info about SimConnect DLL.
static QString simConnectReceiveIdToString(DWORD type)
Receive id to string.
static QString simConnectSurfaceTypeToString(const DWORD type, bool beautify=true)
Resolve SimConnect surface (based on Qt metadata).
static QString simConnectExceptionToString(const DWORD id)
Resolve SimConnect exception (based on Qt metadata).
Free functions in swift::misc.
bool isEmpty() const const
QString & replace(QChar before, QChar after, Qt::CaseSensitivity cs)
unsigned long DWORD
Fake Windows DWORD.
QString errorMsg
error message if any