Commit Graph

1186 Commits

Author SHA1 Message Date
Mathew Sutcliffe
1afef03c6d refs #210 workaround an apparent bug in 64bit MSVC by using a signed type for tuple flags
(using a smaller unsigned type also worked)
2014-06-19 20:08:28 +01:00
Mathew Sutcliffe
fbb89375da refs #210 added jsonName in Private::Attribute
* Explicit JSON name can be set for tuple members
* Names can still be extracted by preprocessor stringification if not explicitly set
* In both cases, names are embedded in Attribute metadata, so no need to call jsonMembers() in the value classes
2014-06-18 23:46:31 +01:00
Mathew Sutcliffe
11824206a1 refs #210 added Private::Attribute
* An Attribute contains a reference to a data member, plus some metadata
* Creates the concept of a "meta tuple", a tuple of Attribute objects
* New facilities in TupleConverterBase to be used inside the macro
* Flags allow individual data members to be selectively enabled or disabled depending on how the tuple is used
* Selective enable/disable is implemented by removing the indices of the flagged members from the index_sequence
2014-06-18 23:45:01 +01:00
Mathew Sutcliffe
e89d5add0b fixed crash in xbus 2014-06-18 19:10:17 +01:00
Mathew Sutcliffe
8e3af6b8ce removed unnecessary workaround for problem which was due to a misunderstanding 2014-06-17 21:23:07 +01:00
Mathew Sutcliffe
fed270c068 Don't try to compile FSX driver for 64 bits.
This requires moving the config DEFINES into build.pri,
because projects include build.pri after config.pri,
and build.pri detects the WORD_SIZE.
2014-06-17 21:22:30 +01:00
Mathew Sutcliffe
976de540e8 refactored 32/64bit detection in qmake files to avoid duplication 2014-06-17 21:20:20 +01:00
Mathew Sutcliffe
072667b3b4 fixes #269 added parameter to CDBusServer constructor to choose a different service name,
allows two servers running on the same bus, needed when running xbus and sample_blackcore
2014-06-17 21:20:15 +01:00
Mathew Sutcliffe
c4a0207e4f refs #268 we can set the ICAO code of the CAircraft here 2014-06-17 21:19:00 +01:00
Mathew Sutcliffe
f430b65d39 refs #268 slots in XBus::CService to detect whether the aircraft is on the ground 2014-06-17 21:18:59 +01:00
Mathew Sutcliffe
19927ab9d4 refs #268 CSimulatorXPlane gets and sets radios and transponder via CXBusServiceProxy 2014-06-17 21:18:59 +01:00
Mathew Sutcliffe
48a4bfdd10 refs #268 initialize CFrequency from an int,
useful in combination with c++11 braced initializer lists,
which do not perform implicit conversion of argument types
2014-06-17 21:18:58 +01:00
Mathew Sutcliffe
b21adbe498 refs #268 added XBus::CService methods to get and set radios and transponder 2014-06-17 21:18:58 +01:00
Mathew Sutcliffe
4ebb03bd0d refs #268 populated CSimulatorXPlane with the implementation code to connect to XBus and get the aircraft situation and model via CXBusServiceProxy 2014-06-17 21:18:57 +01:00
Mathew Sutcliffe
271c973f6e refs #268 slots in XBus::CService to get the model strings 2014-06-17 21:18:56 +01:00
Mathew Sutcliffe
df67c249df refs #268 added DBus proxy object for XBus::CService 2014-06-17 21:18:56 +01:00
Mathew Sutcliffe
7d29049326 refs #268 added empty CSimulatorXPlane implementation of ISimulator, ready to be populated with code 2014-06-17 21:18:55 +01:00
Mathew Sutcliffe
4ed35ad539 refs #268 we can support X-Plane 8, 9, 10, and probably future versions, so CSimulatorInfo shouldn't specify a version 2014-06-17 21:18:55 +01:00
Mathew Sutcliffe
854b11ef10 refs #248 doxygen 2014-06-17 21:18:49 +01:00
Mathew Sutcliffe
ae5ce81d7f refs #248 fixed a GCC warning 2014-06-17 18:22:52 +01:00
Mathew Sutcliffe
edec05e41a refs #248 added actual XBus::CService class which is registered with DBus and provides access to the sim data 2014-06-17 18:22:51 +01:00
Mathew Sutcliffe
2393674088 refs #248 C++ API wrapper for the X-Plane Plugin SDK's C API for accessing datarefs 2014-06-17 18:22:50 +01:00
Mathew Sutcliffe
9669ebefe3 refs #248 added menu interface to start the XBus server 2014-06-17 18:22:49 +01:00
Mathew Sutcliffe
3b12ff93a3 refs #248 C++ API wrapper for the X-Plane Plugin SDK's C API for creating menus 2014-06-17 18:22:49 +01:00
Mathew Sutcliffe
d5e527ba16 refs #248 added an instance of CDBusServer as member of XBus::CPlugin 2014-06-17 18:22:48 +01:00
Mathew Sutcliffe
13f9d8c343 refs #248 replaced CStub with CPlugin 2014-06-17 18:22:47 +01:00
Roland Winklmeier
66bcea8e20 refs #265 Linux raw input handling 2014-06-15 20:30:48 +02:00
Roland Winklmeier
498dc5e1df refs #265 Linux raw keyboard mappings 2014-06-15 20:30:47 +02:00
Roland Winklmeier
2e485a324c Move settings loading into factory method, since read should not be called
by DBus proxy.
2014-06-15 20:24:40 +02:00
Roland Winklmeier
8cbff262d1 refs #256 Update CProject and project files to reflect BlackInput 2014-06-15 19:39:28 +02:00
Roland Winklmeier
a131e8c91c Move IKeyboard and subclasses to new library BlackInput
refs #256
2014-06-15 19:22:59 +02:00
Roland Winklmeier
14e9e01b90 Fix reading settings with factory created object.
Before we had factory methods, the allocated CContextSettings object
was reused. The temporary one can be deleted.
2014-06-15 19:02:46 +02:00
Mathew Sutcliffe
9d087dba44 refs #246 fixed a GCC warning 2014-06-14 21:56:44 +01:00
Mathew Sutcliffe
a34bcd3624 refs #246 workaround incorrect setting of Q_COMPILER_INITIALIZER_LISTS when compiling with MSVC2013 CTP_Nov2013 (QTBUG-39142) 2014-06-14 16:52:52 +01:00
Mathew Sutcliffe
9b27b93de0 refs #246 refactored construction of all remaining contexts into factory methods 2014-06-14 16:52:52 +01:00
Klaus Basan
9e0909666e removed redundant CONFIG += c++11 (is already in build.pri) 2014-06-14 16:52:51 +01:00
Mathew Sutcliffe
a6cd44be8d refs #246 added ISimulator::aircraftModelChanged signal which can be sent via the contexts to CAirspaceMonitor, which needs the model when sending FSIPI(R) custom packets 2014-06-14 16:52:50 +01:00
Mathew Sutcliffe
2e23f2fd8d refs #246 refactored FSIPI(R) custom packet encode/decode into INetwork 2014-06-14 16:52:50 +01:00
Mathew Sutcliffe
46e28a64dd refs #246 now context_network_atc.cpp is so short that it should be merged into context_network_impl.cpp 2014-06-14 16:52:49 +01:00
Mathew Sutcliffe
d2bb36a322 refs #246 moved network context logic concerned with monitoring other airspace entities (aircraft, ATC) into a support class to which the context can delegate,
following the separation of concerns principle and making class invariants easier to identify and verify
2014-06-14 16:52:48 +01:00
Mathew Sutcliffe
837964fe20 refs #246 fixed mistake 2014-06-14 16:52:48 +01:00
Mathew Sutcliffe
8dccc8d792 refs #246 renamed host to server to avoid ambiguity 2014-06-14 16:52:47 +01:00
Mathew Sutcliffe
ab72dce8b5 refs #246 removed unused private methods 2014-06-14 16:52:47 +01:00
Mathew Sutcliffe
cdca7343e4 refs #246 refactored construction of the network context into a factory method 2014-06-14 16:52:46 +01:00
Mathew Sutcliffe
695eb5c41c refs #246 reordered CContextNetwork constructor to keep related things close together 2014-06-14 16:52:45 +01:00
Mathew Sutcliffe
ac80bce171 refs #246 added comments to highlight issues of dependencies and large number of scenarios 2014-06-14 16:52:45 +01:00
Mathew Sutcliffe
81c6805822 refs #246 refactored isSlotLogForNetworkEnabled conditionals into CRuntime 2014-06-14 16:52:44 +01:00
Mathew Sutcliffe
26c270c9a6 refs #246 passing c++11 brace-initialized QStringList to CRuntime::logSlot 2014-06-14 16:52:44 +01:00
Mathew Sutcliffe
cdd0ae6324 refs #246 refactor setting of timer intervals 2014-06-14 16:52:43 +01:00
Mathew Sutcliffe
6ee14128bd refs #246 style: using c++11 brace initialization of QStringList 2014-06-14 16:52:42 +01:00