Files
pilotclient/src/plugins/simulator/fsxcommon/simconnectsymbols.h
Lars Toenning bcc4bdd31e Add SPDX identifiers for REUSE compliance
Co-authored-by: Mat Sutcliffe <oktal3700@gmail.com>
2023-10-03 09:29:49 +02:00

49 lines
1.4 KiB
C

// SPDX-FileCopyrightText: Copyright (C) 2018 swift Project Community / Contributors
// SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
//! \file
#ifndef BLACKSIMPLUGIN_FSXCOMMON_SIMCONNECTSYMBOLS_H
#define BLACKSIMPLUGIN_FSXCOMMON_SIMCONNECTSYMBOLS_H
#include "plugins/simulator/fsxcommon/fsxcommonexport.h"
#include <QtGlobal>
#ifdef Q_OS_WIN64
//! P3D versions
enum P3DSimConnectVersion
{
P3DSimConnectv40,
P3DSimConnectv41,
P3DSimConnectv42,
P3DSimConnectv43,
P3DSimConnectv44,
P3DSimConnectv45
};
//! String to the enum
FSXCOMMON_EXPORT P3DSimConnectVersion stringToP3DVersion(const QString &p3d);
//! Load and resolve versioned P3D SimConnect.
//! If a another version was already loaded previously, it won't unload it.
//! You have to call /sa unloadSimConnect() before.
FSXCOMMON_EXPORT bool loadAndResolveP3DSimConnect(P3DSimConnectVersion version);
//! Same but string version
inline bool loadAndResolveP3DSimConnectByString(const QString &version) { return loadAndResolveP3DSimConnect(stringToP3DVersion(version)); }
FSXCOMMON_EXPORT bool loadAndResolveMSFSimConnect();
#else
//! Load and resolve FSX SimConnect.
//! \param manifestProbing Set to true if you want to try loading from the assembly cache with manifests.
//! Otherwise the library in the bin folder will be loaded.
FSXCOMMON_EXPORT bool loadAndResolveFsxSimConnect(bool manifestProbing);
#endif
#endif // guard