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)
This commit is contained in:
Klaus Basan
2016-12-31 05:09:26 +01:00
committed by Mathew Sutcliffe
parent 15020b2d5f
commit c609c555b4
5 changed files with 78 additions and 6 deletions

View File

@@ -37,6 +37,8 @@
namespace BlackMisc
{
class CSimpleCommandParser;
namespace Aviation
{
class CAircraftParts;
@@ -69,8 +71,7 @@ namespace BlackCore
//! Destructor
virtual ~CSimulatorCommon();
//! \name ISimulator implementations
//! @{
// --------- ISimulator implementations ------------
virtual BlackMisc::Simulation::CAircraftModel getDefaultModel() const override;
virtual void setInterpolationAndRenderingSetup(const BlackMisc::Simulation::CInterpolationAndRenderingSetup &setup) override;
virtual BlackMisc::Simulation::CInterpolationAndRenderingSetup getInterpolationAndRenderingSetup() const override;
@@ -80,7 +81,8 @@ namespace BlackCore
virtual BlackMisc::Aviation::CAirportList getAirportsInRange() const override;
virtual void unload() override;
virtual int physicallyRemoveMultipleRemoteAircraft(const BlackMisc::Aviation::CCallsignSet &callsigns) override;
//! @}
virtual bool parseCommandLine(const QString &commandLine, const BlackMisc::CIdentifier &originator) override;
// --------- ISimulator implementations ------------
protected slots:
//! \name Connected with remote aircraft provider signals
@@ -154,6 +156,9 @@ namespace BlackCore
//! Set own model
void reverseLookupAndUpdateOwnAircraftModel(const QString &modelString);
//! Parse driver specific details for ISimulator::parseCommandLine
virtual bool parseDetails(const BlackMisc::CSimpleCommandParser &parser);
BlackMisc::Simulation::IInterpolator *m_interpolator = nullptr; //!< interpolator instance
bool m_pausedSimFreezesInterpolation = false; //!< paused simulator will also pause interpolation (so AI aircraft will hold)
BlackMisc::Simulation::CAircraftModel m_defaultModel; //!< default model