Commit Graph

96 Commits

Author SHA1 Message Date
Klaus Basan
c609c555b4 refs #848, parse command line in simulator
* added default implementation
* sims can override parseDetails for specific cmd lines
* enable/disable FSUIPC in fscommon part
* added useFsuipc(bool on)
2017-01-10 23:46:21 +00:00
Klaus Basan
c20b54466f refs #848, some upfront cleanup 2017-01-10 23:46:17 +00:00
Klaus Basan
667009c85e refs #840, moved interpolator classes into Simulation namespace 2017-01-10 23:45:27 +00:00
Mathew Sutcliffe
6c36cd202b refs #837 ICoordinateGeodetic::geodeticHeight is a CAltitude. 2017-01-10 23:44:34 +00:00
Klaus Basan
1f57f7ca61 refs #812, use individual signals for web services
* trigger other operations directly when data have been read (do not wait for "all data read")
* avoid retriggering for no reason
* new entity flag for all data req. for model matching
2016-12-13 19:01:16 +01:00
Klaus Basan
10d43798b0 refs #811, airports default implementation
* if no sim data are available use reader data
* merge airport data for FSX
* Added "network" in .pro (needed for network classes such as readers)
2016-12-13 19:01:15 +01:00
Klaus Basan
c4dd888fa7 refs #808, added support for internals object
* initInternalsObject
* some formatting
2016-12-13 19:01:00 +01:00
Klaus Basan
c70b1ccb00 refs #808, adjusted FSUIPC class 2016-12-13 19:00:59 +01:00
Mathew Sutcliffe
132ffa9ec2 refs #802 Fixed Clang warning (read beyond the end of a string literal). 2016-12-13 19:00:48 +01:00
Klaus Basan
3f6cef1c9f refs #796, allow to toggle full interpolation
* add setup class, metadata registration, property index ...
* removed enableDebugMessages, added setInterpolatorSetup
* adjusted contexts
* used in interolator
2016-12-06 09:47:01 +01:00
Mathew Sutcliffe
b5dfd15d66 When dealing with pitch and bank as signed ints, it is desirable to
round down, rather than toward zero, to get a linear distribution.

refs #790
2016-12-06 09:46:51 +01:00
Roland Winklmeier
6f5193a74f [FS9] Read and update own aircraft model via FSUIPC
FS9 plugin did not detect own aircraft model under all circumstances.
FS9 does not initially send it when connecting - only
during initial selection and if it is changed later. In order
to get the initial model if swift is started while FS9 was already
running, read it regularly from FSUIPC.
2016-12-06 09:46:46 +01:00
Roland Winklmeier
ea561cf723 Warn in case pitch value from simulator is out of limits
refs #790
2016-12-06 09:46:43 +01:00
Roland Winklmeier
7f90652b2f Use bitwise negation operator to invert integer pitch and bank angles
refs #790
2016-12-06 09:46:41 +01:00
Klaus Basan
4f447cd408 refs #791, further improve reverse lookup
* utility function if web data are already available
* moved setOwnAircraftModel as reverseLookupAndUpdateOwnAircraftModel to CSimulatorCommon
* reverseLookupAndUpdateOwnAircraftModel also handles async lookup when data are not yet available
* removed context ps_allSwiftWebDataRead reverse lookup, done in CSimulatorCommon now
2016-12-06 09:34:43 +01:00
Klaus Basan
4478af119d refs #791, also perform lookup in simulator plugin`s CSimulatorFsCommon::setOwnAircraftModel 2016-12-06 09:34:41 +01:00
Klaus Basan
df60474510 refs #789, added signal when adding models fails
Signatures in context and simulator
2016-12-06 09:34:25 +01:00
Roland Winklmeier
42737faf2c Fix wrong pitch and bank value interpolation
Pitch and bank angle in CAircraftSituation are according to the
common aeronautical convention:
* Bank in degrees, positive = roll right
* Pitch in degrees, positive = pitch up

Microsoft Flight Simulator is using inverted angles, which was incorrectly
adjusted in the interpolator. This caused wrong values for X-Plane.
This angle correction is now moved into the MSFS specific plugins.
Additionally, so far the pitch and bank angles from own aircraft were
not yet corrected for MSFS. So we did send wrong values to the network.

refs #790
2016-12-06 09:34:24 +01:00
Klaus Basan
313aa9f679 refs #780, formatting simulator common class 2016-12-06 09:34:22 +01:00
Klaus Basan
45a620dab5 refs #768, some minor formatting during debugging of mapping wizard
(found that some unnecessary model changed events are sent, will result in some refactoring)
2016-12-06 09:33:27 +01:00
Klaus Basan
bf8198e2c2 refs #768, misc adjustments
* changed signature of ownAircraftModelChanged to model
* added function for a reverse lookup of a model (string->model) and use it when model changed
* renamed function to updateByLocalFileNames
2016-10-17 14:34:15 +01:00
Roland Winklmeier
fb3df51013 Move aircraft matching out of simulator plugins
All model matching will be done simulator independent in
CContextSimulator. The simulator specific part is kept in the model
set.
This also caused the signal modelMatchingCompleted to be renamed to
aircraftRenderingChanged, since the name wasn't accurate anymore.
Both getInstalledModels(), getInstalledModelsCount() and iconForModel()
were removed from the ISimulator interface.

refs #765
2016-09-19 16:30:05 +02:00
Roland Winklmeier
2040ff21c5 Physically remove only physically rendered aircrafts
Physically removing an aircraft which was not yet rendered or known is
undefined behavior.
In this particular case, adding an aircraft the first time caused
its model to be updated, which called slot
ISimulator::changeRemoteAircraftModel, trying to remove an aircraft
which was not yet added and adding it again. This ends up
in an endless loop.
2016-09-19 16:18:50 +02:00
Klaus Basan
86d85c6b60 refs #707, removed originator from some signatures
* not used in remote aircraft provider
* adjusted all using interfaces
2016-07-14 18:49:15 +02:00
Klaus Basan
d782839cb8 refs #703, moved context to subdir
* ns: Context
* adjusted using classes
2016-07-14 18:49:08 +02:00
Mathew Sutcliffe
7ae453b532 refs #666 Moved interpolator to BlackMisc so xbus doesn't need to link BlackCore. 2016-06-08 23:54:13 +01:00
Mathew Sutcliffe
0246767e31 Fixed method name. 2016-06-08 23:54:13 +01: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
Klaus Basan
96189f530b Fixed typo setGroundSpeed 2016-05-07 20:11:50 +02:00
Klaus Basan
ddc7347927 refs #643, moved aircraft model icon loading to model class
* removed iconForModel from interface and aircraft config parser
* CPixmap support for loading pixmap from file
* Access to model of model set loader by model string
* icon path as member of CAircraftModel
2016-05-05 20:49:16 +02:00
Klaus Basan
1953665c40 refs #637, move matcher to blackcore
(access to sApp/web services)
2016-04-11 20:24:57 +02:00
Klaus Basan
aa6370c325 refs #614, moved model set cache and matcher to simulator common class
* removed from FS common class
* formatting
2016-04-11 20:19:37 +02:00
Klaus Basan
a5d0453019 refs #614, changed matcher and applied changes
* new function in model list
* removed all models in matcher, only provider data will be used
2016-04-11 20:16:14 +02:00
Roland Winklmeier
781707fb7e Simulator driver fetches and injects weather from weather manager 2016-04-10 16:18:55 +02:00
Roland Winklmeier
9c869a16df Retrieve binary rain and snow information from GFS source
refs #612
2016-04-10 16:16:23 +02:00
Roland Winklmeier
dae31a1986 Use CWeatherManager as weathergrid provider in simulator plugins
refs #612
2016-04-10 16:13:58 +02:00
Klaus Basan
ab33ebe64d refs #485, commented out aircraft_cfg pluginData, per https://swift-project.slack.com/archives/general/p1458003081000034 2016-03-30 03:07:15 +02:00
Klaus Basan
4087d63d9c refs #619, change model loader to use caches (one per simulator)
* removed caching from GUI component
* added caches in model loader
* adjusted samples
2016-03-23 03:24:54 +01:00
Mathew Sutcliffe
1801616953 refs #624 Use conditional SUBDIRS instead of REQUIRES for enabling/disabling subprojects. 2016-03-22 16:03:00 +00:00
Mathew Sutcliffe
3001ca1f44 refs #624 Use std::make_unique instead of BlackMisc::make_unique. 2016-03-22 16:02:29 +00:00
Klaus Basan
30b5e5dade refs #485, changed to static preformatted as discussed (MS/KB) on slack 2016-03-18 01:09:42 +00:00
Klaus Basan
158efe819a refs #485, first version of a Gui/Core application class
Also specialized GUI application class for standard GUI
2016-03-18 01:08:02 +00:00
Roland Winklmeier
48fdfbea3e Cloud layers have a base and a top
refs #579
2016-03-02 23:04:29 +01:00
Roland Winklmeier
99ab20bcc5 Inject global weather grid to Flight Simulators via FSUIPC
In the short term FSUIPC is used for all MSFS simulators, but in the
mid term this will be superceded by the Simconnect Weather API.

refs #579
2016-03-02 23:04:13 +01:00
Roland Winklmeier
6932aaaec3 Fix missing include 2016-03-01 23:07:47 +01:00
Roland Winklmeier
1ea2f34f75 Fix doxygen documentation in src, samples and tests
refs #594
2016-02-16 20:01:33 +01:00
Klaus Basan
1b46e0400c refs #544 doxygen 2015-12-12 04:47:18 +00:00
Klaus Basan
c1b612e193 Some fixes as follow up of refs #533
* made plugin aware functions protected
* set setup for FSX ( refs #547 ) and made setup protected
* removed CLogHandler::instance()->disconnect(); as discussed in slack
* some formatting
2015-12-08 20:14:24 +01:00
Mathew Sutcliffe
9968ccbbdb refs #461 Use the REQUIRES variable in the leaf projects instead of conditions at the SUBDIRS level. 2015-11-23 23:29:29 +00:00
Roland Winklmeier
7ece093ee9 Refactor qmake SUBDIRS structure
The big swift.pro is refactored by the correct usage of SUBDIRS
template. The following additional changes are made:
- Removed '_' from all targets and folder names
- Aligned parent folder and target name

refs #461
2015-11-23 09:50:44 +01:00