Commit Graph

38 Commits

Author SHA1 Message Date
Roland Winklmeier
6a8ae67e06 [xswiftbus] Make xswiftbus completely Qt free 2018-05-08 16:06:30 +02:00
Roland Winklmeier
b0a8fcaa45 [xswiftbus] Remove BlackMisc dependency
There were only very few classes used from Blackmisc after the interpolator
was moved to the driver. Therefore replace those few classes with
a simple alternative and remove BlackMisc from xswiftbus.
2018-05-08 16:06:30 +02:00
Roland Winklmeier
d77931e5ec [xswiftbus] Replace QtDBus with a libevent driven C++ wrapper on top of libdbus
QtDBus was the main component of xswiftbus' Qt dependency. This is the
first preparation step to get xswiftbus Qt free.
The new implementation is based on the low level libdbus library, which
was also in use by QtDBus itself. But instead of QtDBus, we use now a thin
C++ wrapper. To keep DBus handling async, libevent is used to monitor
timeouts and fds.
2018-05-08 16:06:29 +02:00
Roland Winklmeier
e1538573fe Remove old xswiftbus interpolator code
ref T259
2018-04-13 23:37:45 +02:00
Klaus Basan
9abc57bb3d Ref T259, Ref T243 remove aircraft parts and situations from interpolator
* no longer using the add parts/situations signals
* will use the remote aircraft provider parts directly

Result: all parts/situations are stored only once in memory and in one single place
2018-04-13 23:37:37 +02:00
Klaus Basan
0c06ac26f7 Ref T259, Ref T243 removed interpolation hints
* no longer needed with providers in that form
* pure refactoring commit, just guarantees compilation
* already minor adjustments to use providers
2018-04-13 23:37:18 +02:00
Klaus Basan
333a92ff63 Ref T259, Ref T243 renaming to CInterpolationAndRenderingSetupPerCallsign 2018-04-13 23:36:34 +02:00
Klaus Basan
d6e99ad313 Ref T259, use fixes from libplanemp 2018-04-05 02:53:52 +02:00
Klaus Basan
9827353f32 Ref T131, formatting 2018-04-05 02:53:33 +02:00
Klaus Basan
e1c49d6e7c Ref T131, formatting 2018-04-05 02:53:22 +02:00
Klaus Basan
6fab2fd60f Ref T259, further checks of Plane pointer 2018-04-05 02:53:19 +02:00
Roland Winklmeier
64ea29dd39 Don't show message window again once it was hidden
The message window was shown again after a new message.
2018-04-05 02:53:07 +02:00
Roland Winklmeier
af8779142c Place X-Plane message window into the screen top center 2018-04-05 02:53:04 +02:00
Klaus Basan
d4b7d7d181 Ref T259, check if plane object is in m_planesByCallsign 2018-04-05 02:52:56 +02:00
Klaus Basan
9517ce7d7c Ref T259, formatting 2018-04-05 02:52:50 +02:00
Roland Winklmeier
09de945242 Add experimental X-Plane CG offset fetching
ref T231
2018-04-05 02:52:28 +02:00
Roland Winklmeier
72497fdefc Regularly request remote aircraft data from X-Plane
This includes
* ground elevation
* model offset (to be implemented)

ref T259
2018-04-05 02:52:26 +02:00
Roland Winklmeier
2ab6a96d57 Adapt to libxplanemp improvements
* XPMPMultiplayerInit API change
* New CSL command 'VERT_OFFSET'
* OBJ8 objects can have multiple textures now. Therefore use the same model
name convention as with OBJ7.
2018-04-05 02:52:24 +02:00
Roland Winklmeier
e64e7feb28 Use XPLM native path on MacOS 2018-04-05 02:52:22 +02:00
Roland Winklmeier
4db0b83310 Move X-Plane interpolation into driver
ref T259
2018-04-05 02:52:20 +02:00
Roland Winklmeier
7f6dd61bb3 X-Plane menu improvements
* Remove start items with DBus details and replace them with a single start
* Add an item to toggle the message box
2018-02-22 01:26:33 +01:00
Klaus Basan
14fb35a975 Formatting 2018-02-05 03:45:36 +01:00
Klaus Basan
47d1915e17 Ref T231, using fudge factor in XP as CG (same as in FSX/P3D)
Ref T207
2018-01-30 20:31:03 +01:00
Klaus Basan
fae5e6ac0a Ref T229, FS9 and XPlane adjustments for changed CInterpolationStatus
Ref T207, maybe MS should review the XP part
2018-01-30 20:29:56 +01:00
Roland Winklmeier
de4fe44156 Fix sending the correct pressure altitude for a pilot position
* Before this commit, only the true altitude was known for an aircraft situation. The pressure altitude was not available anywhere yet.
* This caused a wrong altitude in radar clients.
* We fix this reading the pressure altitude from the simulators and set it in the own aircraft situation.
* MS Flight Simulators have the pressure altitude in the APIs available.
* For X-Plane and emulated simulator, we need to calculate it from the pressure at sea level.
* Finally, we use the new available pressure altitude to send it to the FSD server.

Maniphest Tasks: Ref T223
2018-01-15 22:49:08 +01:00
Roland Winklmeier
f53ec46d20 Change the operating system name from OSX to MacOS everywhere
Summary:
- Changed the name in all build artifacts
- Everywhere in C++

Reviewers: #swift_pilot_client, kbasan

Reviewed By: #swift_pilot_client, kbasan

Subscribers: jenkins

Maniphest Tasks: T205

Differential Revision: https://dev.swift-project.org/D69
2017-12-06 22:50:19 +01:00
Mathew Sutcliffe
27dc7ad329 Update libxplanemp. 2017-11-23 22:25:17 +00:00
Mathew Sutcliffe
c5a3db49b0 Request own aircraft info upon connecting to XSwiftBus
Summary:
Ref T83
Also removed an unused parameter of the "own aircraft changed" signal of XSwiftBus.

Reviewers: #swift_developers, rwinklmeier

Reviewed By: #swift_developers, rwinklmeier

Subscribers: jenkins

Tags: #swift_pilot_client

Maniphest Tasks: T83

Differential Revision: https://dev.swift-project.org/D63
2017-11-23 22:15:41 +00:00
Mathew Sutcliffe
a7124ec589 Removed unused code. 2017-11-12 13:48:09 +00:00
Roland Winklmeier
fb47a5356a Install libdbus-1 into xswiftbus on Mac OS
ref T174
2017-10-18 22:58:19 +02:00
Roland Winklmeier
6d8c833464 Preserve symbolic links while installing Qt frameworks
ref T174
2017-10-18 22:58:18 +02:00
Mathew Sutcliffe
c6c2c86d30 Install DBus dependencies alongside XSwiftBus on Windows
Summary:
XSwiftBus needs to be able to locate dbus-1-3.dll, expat.dll, and dbus-daemon.exe.

We simply need to install them in the same folder as XSwiftBus itself (as we already do with blackmisc.dll).

Then we need to install session.conf in a share/dbus-1 subfolder where dbus-daemon.exe can find it.

Reviewers: rwinklmeier

Reviewed By: rwinklmeier

Subscribers: jenkins

Tags: #swift_pilot_client

Differential Revision: https://dev.swift-project.org/D54
2017-10-16 14:08:52 +01:00
Mathew Sutcliffe
98e0f8c875 T37 T127 Send timestamps to XSwiftBus as separate timestamp and offset
as the offset is needed for reliable interpolation.
2017-09-24 19:52:46 +01:00
Roland Winklmeier
c8a9f76a32 Remove the workaround to install libstdc++-6.dll
Summary: In version 5.9.0, Qt fixed installing file names containing the plus sign.

Reviewers: #swift_pilot_client, msutcliffe

Reviewed By: #swift_pilot_client, msutcliffe

Subscribers: jenkins

Differential Revision: https://dev.swift-project.org/D45
2017-09-24 19:50:52 +01:00
Roland Winklmeier
b9c06c8581 Fix xswiftbus library install on Unix
Summary:
With Qt 5.9, the install executable changed from coreutils 'install'
 to qmake. This changed the behaviour for symbol links and wild cards.
 Previously, the symbol link target was installed as deep copy but with
 the name of the symbol link on MacOS. Now qmake just creates a new symbol
 link everywhere. Wild cards at install time also do not work anymore.
 Install files are only resolved properly, if they existed when qmake was
 running. This is not the case for our build products.
 To address both issues, we need to manually call cp command. cp command
 does deep copy symbol links, therefore copy only one with the major version
 number only.

Reviewers: #swift_pilot_client, msutcliffe

Reviewed By: #swift_pilot_client, msutcliffe

Subscribers: msutcliffe, jenkins

Differential Revision: https://dev.swift-project.org/D38
2017-09-24 19:50:46 +01:00
Mathew Sutcliffe
bc80fd3bd5 [feature][XPlane] Set own aircraft model string when own aircraft changes.
Summary:
Refactored parts of CAircraftModelLoaderXPlane::parseFlyableAirplanes into static method extractAcfProperties that can be called by xswiftbus.

Used extractAcfProperties in xswiftbus to provide the model string to the driver. Implemented CSimulatorXPlane::ps_emitOwnAircraftModelChanged.

Implements T74.

Reviewers: rwinklmeier

Reviewed By: rwinklmeier

Subscribers: jenkins

Tags: #swift_pilot_client

Differential Revision: https://dev.swift-project.org/D23
2017-05-14 17:21:39 +01:00
Mathew Sutcliffe
f34c48cf6c T79 Improved log messages. 2017-05-11 16:37:54 +01:00
Mathew Sutcliffe
4a4dea8d4d Rename xbus to xswiftbus
Summary:
I wanted to rename xbus because its relation to //swift// is not immediately clear from the name.

xswiftbus seems reasonable.

Reviewers: #swift_pilot_client, kbasan

Reviewed By: kbasan

Subscribers: kbasan, jenkins

Tags: #swift_pilot_client

Differential Revision: https://dev.swift-project.org/D14
2017-05-05 23:07:11 +01:00