Commit Graph

2834 Commits

Author SHA1 Message Date
Klaus Basan
bedcc675be refs #649, refs #656, register metadata for value objects and further adjustments
* .pro files for new subdirs
* property index
2016-06-08 03:59:02 +02:00
Klaus Basan
2e4d5fd40e Added operator for QFlags 2016-06-08 03:59:01 +02:00
Klaus Basan
2df190514f refs #649, added flags amd configuration class for caching strategies of DB data
(use cache? TTL? ...)
2016-06-08 03:59:00 +02:00
Klaus Basan
7767e53652 refs #649, refs #656, move swift DB classes to own namespace/directory 2016-06-08 03:58:59 +02:00
Klaus Basan
f7659e9021 refs #656, value objects for DB metadata (latest changes) 2016-06-08 03:58:57 +02:00
Mathew Sutcliffe
e67c07f8c5 refs #659, #657 Fixed a mistake where admitting an uncached value could cause synchronize() to wait forever. 2016-06-06 18:27:52 +01:00
Mathew Sutcliffe
d53237cebc refs #659, #657 Fixed mistake in synchronize() where a future would be broken prematurely if async load had not yet started after 1 second timeout. 2016-06-06 18:27:51 +01:00
Mathew Sutcliffe
aefef81cd7 refs #659 Read-only versions of cache value access classes. 2016-06-05 21:18:52 +01:00
Mathew Sutcliffe
a2b0602c53 refs #659 Fixed minor mistakes. 2016-06-05 21:18:49 +01:00
Mathew Sutcliffe
36cb07cb1f refs #665 Cache will only load and save the values that it really needs to. 2016-06-04 01:15:31 +01:00
Mathew Sutcliffe
50de252ff6 refs #659 Fixed a bug where valid timestamps of unloaded values would be lost when writing a new .rev file. 2016-06-04 00:51:01 +01:00
Mathew Sutcliffe
0bb17414ac refs #659 Cache value with timestamp of 0 should still be loadable. 2016-06-04 00:51:00 +01:00
Mathew Sutcliffe
8377ab2e51 refs #659 Method to get timestamp from revision file without loading value. 2016-06-04 00:50:59 +01:00
Mathew Sutcliffe
5559d1fcc6 refs #659 Use a threadsafe queue for admit(), to avoid a race with synchronize(). 2016-06-04 00:50:54 +01:00
Mathew Sutcliffe
f1a9ae5a13 refs #659 Add the method CData::admit() which causes a value with deferred loading to be loaded. 2016-06-04 00:50:47 +01:00
Mathew Sutcliffe
29cea55bc9 refs #659 Allow setting a "deferred" flag in data cache values, causing the value not to be loaded. 2016-05-26 20:03:13 +01:00
Mathew Sutcliffe
4c08d1cc86 refs #659 Use constexpr with isPinned method of data cache traits. 2016-05-26 19:57:22 +01:00
Mathew Sutcliffe
d0d100da5e refs #664 Use timestamps from .rev file instead of the filesystem timestamps of the json files. 2016-05-26 18:03:21 +01:00
Mathew Sutcliffe
4bc8326389 refs #664 Fixed bug in data cache log message creation. 2016-05-26 18:01:42 +01:00
Mathew Sutcliffe
fa7aa6446b refs #662 Work around MSVC2015 bug causing failure to detect getLogCategories() in some conditions. 2016-05-25 19:25:52 +01:00
Roland Winklmeier
3e4e49a6b6 Set last modification timestamp when loading X-Plane models
This feature was already implemented for MS Flight Simulator model
loaders and missing in the X-Plane model loader.
2016-05-24 16:59:16 +02:00
Roland Winklmeier
602beb0da2 Remove obsolete plugin storage
Plugin storage was used before the value cache existed. With the
value cache this is no longer used and can be removed.

refs #660
2016-05-24 16:45:14 +02:00
Roland Winklmeier
2d8f56a598 Link CBuildConfig and CVersion into static library blackconfig
CBuildConfig including private keys etc. should not be part of a
public library API. Therefore link it into a static library, which
is not available to end users.

refs #645
2016-05-24 13:12:23 +02:00
Roland Winklmeier
26a78ac2a6 Workaround gcc warning -Wmissing-field-initializers
gcc raises a warning when initializing std::array with
empty-braces. This is fixed in gcc 5.1.1, so a workaround
for 4.9 was necessary.

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36750
2016-05-24 13:12:00 +02:00
Mathew Sutcliffe
fe5e122f12 Comparison mixins implemented with forEachMemberPair instead of toCaseAwareTuple. 2016-05-22 15:34:05 +01:00
Mathew Sutcliffe
f523197dfd refs #657 Fixed race condition in synchronize(). 2016-05-22 15:34:05 +01:00
Mathew Sutcliffe
6aa67f638a refs #657 Applications started at the same time should write to different log files. 2016-05-22 15:34:05 +01:00
Mathew Sutcliffe
9da53bd58b refs #646 Added timestamps in data cache load/save log messages. 2016-05-22 15:34:05 +01:00
Mathew Sutcliffe
74f577eec9 refs #646 Using new CStatusMessage construction style in CValueCache. 2016-05-22 15:34:05 +01:00
Mathew Sutcliffe
05b5971caf refs #646 Log messages when saving and loading data cache values. 2016-05-22 15:34:05 +01:00
Mathew Sutcliffe
5a43ff8d20 refs #646 Fixed race condition between synchronize() and saveToStoreAsync(). 2016-05-22 15:34:05 +01:00
Roland Winklmeier
b671089c66 Finish workaround for xbus causing X-Plane infinite loop on Mac OS X
In the first commit of this workaround, not all QApplications were
replaced by QCoreApplications. For unknown reasons, the single
replacement solved the problem. With Qt 5.6 it appeared again. This
commit finishes now the workaround.

refs #293
2016-05-20 01:42:50 +02:00
Roland Winklmeier
df4ac9538a Fix launching of shipped dbus-daemon
When using QProcess::startDetached on Windows, a console Window is
visible. Since dbus-daemon should run silently in the background,
use our customized CProcess instead which supports starting without
console.
This commit also fixes a race condition. CDBusServer launched the
dbus-daemon and immediatly tried to register. If dbus-daemon was not yet
initialized and ready to accept connections, registering the service
failed. This is fixed by a small timeout.

refs #615
2016-05-20 01:42:47 +02:00
Roland Winklmeier
e12e655d70 CProcessCtrl
Derives from QProcess and adds a static method to start a detached
application without a console window.

refs #615
2016-05-20 01:42:32 +02:00
Roland Winklmeier
31b20bb2fb Fix size of allocated memory in xbus strdup 2016-05-20 01:41:22 +02:00
Roland Winklmeier
014c218afa Fix swiftlauncher executable names for Linux platforms
refs #615
2016-05-20 01:41:21 +02:00
Roland Winklmeier
ab1491f085 Rename share/dbus-1 to etc/dbus-1 to not mix it up with data/shared
refs #615
2016-05-20 01:41:19 +02:00
Roland Winklmeier
20aa59c537 Properly cleanup open QDBusConnection's
Everytime you connect to DBus, the connection stays open until it
is manually disconnected or cleaned up by the QCoreApplication
destructor. In case of xbus, ~QCoreApplication is not necessarily
be called and the connection not cleaned up. Hence do it manually.

refs #615
2016-05-20 01:41:18 +02:00
Roland Winklmeier
25482f5d35 Let xbus retry to connect to dbus in case it is not available
refs #615
2016-05-20 01:41:16 +02:00
Roland Winklmeier
21fe8d46ea xbus modifies library search path in order for QtDBus to find libdbus
refs #615
2016-05-20 01:41:15 +02:00
Roland Winklmeier
d4248d2661 Util methods to modify the custom library search path
refs #615
2016-05-20 01:41:10 +02:00
Roland Winklmeier
71d9439537 Install all xbus dependencies
refs #615
2016-05-20 01:40:16 +02:00
Roland Winklmeier
cc302bd4fd Add xbus legacy data without CSL
refs #615
2016-05-20 01:40:15 +02:00
Roland Winklmeier
45b0503896 Include Mac OS X platform in installer project
refs #615
2016-05-20 01:40:04 +02:00
Roland Winklmeier
7b5e306bab xbus install target
refs #615
2016-05-20 01:36:50 +02:00
Roland Winklmeier
0ba46360dd Move sounds and stylesheet directory configuration to buildconfig.h.in
refs #615
2016-05-20 01:36:44 +02:00
Roland Winklmeier
9ef34c4b96 Group all resources in data/ subfolder
refs #615
2016-05-20 01:35:19 +02:00
Roland Winklmeier
675255acf6 Fix access violation trying to use already destroyed context 2016-05-20 01:32:42 +02:00
Roland Winklmeier
cbc3946306 Fix xplane plugin header includes
* Include only what is used
* Use forward declaration when possible
* Sorted includes

refs #598
2016-05-20 01:32:04 +02:00
Roland Winklmeier
0326d1fc81 Fix swiftguistd header includes
* Include only what is used
* Use forward declaration when possible
* Sorted includes

refs #598
2016-05-20 01:31:53 +02:00