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