swift
xplaneutil.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (C) 2015 swift Project Community / Contributors
2 // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
3 
5 
6 #ifndef SWIFT_MISC_SIMULATION_XPLANE_XPLANEUTIL_H
7 #define SWIFT_MISC_SIMULATION_XPLANE_XPLANEUTIL_H
8 
9 #include <QStringList>
10 
11 #include "misc/logcategories.h"
12 #include "misc/statusmessagelist.h"
13 #include "misc/swiftmiscexport.h"
14 
15 namespace swift::misc::simulation::xplane
16 {
19  {
20  public:
22  CXPlaneUtil() = delete;
23 
25  static const QStringList &getLogCategories();
26 
28  static QString xplane9Dir();
29 
31  static QString xplane10Dir();
32 
34  static QString xplane11Dir();
35 
38  static const QString &xplaneRootDir();
39 
41  static bool isXplaneRootDirExisting();
42 
45  static const QString &xplanePluginDir();
46 
48  static QString pluginDirFromRootDir(const QString &rootDir = CXPlaneUtil::xplaneRootDir());
49 
51  static QStringList modelDirectoriesFromSimDir(const QString &simulatorDir);
52 
54  static bool isXplanePluginDirDirExisting();
55 
58  static QStringList pluginSubdirectories(const QString &pluginDir = {});
59 
61  static const QStringList &xplaneModelDirectories();
62 
64  static const QStringList &xplaneModelExcludeDirectoryPatterns();
65 
67  static QString xswiftbusPluginDir(const QString &xplaneRootDir = CXPlaneUtil::xplaneRootDir());
68 
70  static QString xswiftbusLegacyDir(const QString &xplaneRootDir = CXPlaneUtil::xplaneRootDir());
71 
73  static bool hasXSwiftBusBuildAndPluginDir(const QString &xplaneRootDir);
74 
77  static QStringList findConflictingPlugins(const QString &pluginDir = {});
78 
80  static QStringList findAllXplFiles(const QString &pluginDir = {});
81 
83  static bool hasNewerXSwiftBusBuild(const QString &xplaneRootDir = CXPlaneUtil::xplaneRootDir());
84 
87  static int copyXSwiftBusBuildFiles(const QString &xplaneRootDir = CXPlaneUtil::xplaneRootDir());
88 
90  static const QString &xplanePluginPathName();
91 
93  static const QString &xswiftbusPathName();
94 
96  static const QStringList &xplFileFilter();
97 
99  static CStatusMessageList validateModelDirectories(const QString &simDir, const QStringList &modelDirectories);
100 
101  private:
103  static QString xplaneDir(const QString &xplaneInstallFile);
104  };
105 } // namespace swift::misc::simulation::xplane
106 
107 #endif // SWIFT_MISC_SIMULATION_XPLANE_XPLANEUTIL_H
Status messages, e.g. from Core -> GUI.
static const QString & xplaneRootDir()
XPlane root directory In case more then one XPlane version is found, the path to the highest version ...
Definition: xplaneutil.cpp:99
#define SWIFT_MISC_EXPORT
Export a class or function from the library.