refs #666 Moved interpolator to BlackMisc so xbus doesn't need to link BlackCore.

This commit is contained in:
Mathew Sutcliffe
2016-06-02 21:54:23 +01:00
parent 37b4b81b9b
commit 7ae453b532
16 changed files with 39 additions and 47 deletions

View File

@@ -7,10 +7,10 @@
* contained in the LICENSE file. * contained in the LICENSE file.
*/ */
#include "blackcore/interpolator.h"
#include "blackcore/simulatorcommon.h" #include "blackcore/simulatorcommon.h"
#include "blackmisc/aviation/aircraftsituation.h" #include "blackmisc/aviation/aircraftsituation.h"
#include "blackmisc/aviation/callsign.h" #include "blackmisc/aviation/callsign.h"
#include "blackmisc/interpolator.h"
#include "blackmisc/logmessage.h" #include "blackmisc/logmessage.h"
#include "blackmisc/pq/physicalquantity.h" #include "blackmisc/pq/physicalquantity.h"
#include "blackmisc/simulation/aircraftmodellist.h" #include "blackmisc/simulation/aircraftmodellist.h"

View File

@@ -35,6 +35,8 @@
namespace BlackMisc namespace BlackMisc
{ {
class IInterpolator;
namespace Aviation namespace Aviation
{ {
class CAircraftParts; class CAircraftParts;
@@ -50,8 +52,6 @@ namespace BlackMisc
namespace BlackCore namespace BlackCore
{ {
class IInterpolator;
//! Common base class with providers, interface and some base functionality //! Common base class with providers, interface and some base functionality
class BLACKCORE_EXPORT CSimulatorCommon : class BLACKCORE_EXPORT CSimulatorCommon :
public BlackCore::ISimulator, public BlackCore::ISimulator,
@@ -127,7 +127,7 @@ namespace BlackCore
bool setInitialAircraftSituation(BlackMisc::Simulation::CSimulatedAircraft &aircraft) const; bool setInitialAircraftSituation(BlackMisc::Simulation::CSimulatedAircraft &aircraft) const;
protected: protected:
IInterpolator *m_interpolator = nullptr; //!< interpolator instance BlackMisc::IInterpolator *m_interpolator = nullptr; //!< interpolator instance
bool m_pausedSimFreezesInterpolation = false; //!< paused simulator will also pause interpolation (so AI aircraft will hold) bool m_pausedSimFreezesInterpolation = false; //!< paused simulator will also pause interpolation (so AI aircraft will hold)
BlackMisc::Simulation::CSimulatorSetup m_simulatorSetup; //!< setup object BlackMisc::Simulation::CSimulatorSetup m_simulatorSetup; //!< setup object

View File

@@ -7,14 +7,13 @@
* contained in the LICENSE file. * contained in the LICENSE file.
*/ */
#include "blackcore/interpolator.h" #include "blackmisc/interpolator.h"
#include "blackmisc/aviation/callsign.h" #include "blackmisc/aviation/callsign.h"
using namespace BlackMisc;
using namespace BlackMisc::Aviation; using namespace BlackMisc::Aviation;
using namespace BlackMisc::Simulation; using namespace BlackMisc::Simulation;
namespace BlackCore namespace BlackMisc
{ {
IInterpolator::IInterpolator(IRemoteAircraftProvider *provider, const QString &objectName, QObject *parent) : IInterpolator::IInterpolator(IRemoteAircraftProvider *provider, const QString &objectName, QObject *parent) :
@@ -25,7 +24,7 @@ namespace BlackCore
this->setObjectName(objectName); this->setObjectName(objectName);
} }
CAircraftPartsList IInterpolator::getPartsBeforeTime(const CCallsign &callsign, qint64 cutoffTime, BlackCore::IInterpolator::PartsStatus &partsStatus) CAircraftPartsList IInterpolator::getPartsBeforeTime(const CCallsign &callsign, qint64 cutoffTime, BlackMisc::IInterpolator::PartsStatus &partsStatus)
{ {
Q_ASSERT_X(!callsign.isEmpty(), Q_FUNC_INFO, "empty callsign"); Q_ASSERT_X(!callsign.isEmpty(), Q_FUNC_INFO, "empty callsign");
partsStatus.reset(); partsStatus.reset();

View File

@@ -9,10 +9,10 @@
//! \file //! \file
#ifndef BLACKCORE_INTERPOLATOR_H #ifndef BLACKMISC_INTERPOLATOR_H
#define BLACKCORE_INTERPOLATOR_H #define BLACKMISC_INTERPOLATOR_H
#include "blackcore/blackcoreexport.h" #include "blackmisc/blackmiscexport.h"
#include "blackmisc/aviation/aircraftpartslist.h" #include "blackmisc/aviation/aircraftpartslist.h"
#include "blackmisc/aviation/aircraftsituation.h" #include "blackmisc/aviation/aircraftsituation.h"
#include "blackmisc/simulation/remoteaircraftprovider.h" #include "blackmisc/simulation/remoteaircraftprovider.h"
@@ -21,12 +21,12 @@
#include <QString> #include <QString>
#include <QtGlobal> #include <QtGlobal>
namespace BlackMisc { namespace Aviation { class CCallsign; } } namespace BlackMisc
namespace BlackCore
{ {
namespace Aviation { class CCallsign; }
//! Interpolator, calculation inbetween positions //! Interpolator, calculation inbetween positions
class BLACKCORE_EXPORT IInterpolator : class BLACKMISC_EXPORT IInterpolator :
public QObject, public QObject,
public BlackMisc::Simulation::CRemoteAircraftAware public BlackMisc::Simulation::CRemoteAircraftAware
{ {
@@ -40,7 +40,7 @@ namespace BlackCore
static QString getLogCategory() { return "swift.interpolator"; } static QString getLogCategory() { return "swift.interpolator"; }
//! Status of interpolation //! Status of interpolation
struct BLACKCORE_EXPORT InterpolationStatus struct BLACKMISC_EXPORT InterpolationStatus
{ {
public: public:
bool changedPosition = false; //!< position was changed bool changedPosition = false; //!< position was changed
@@ -54,7 +54,7 @@ namespace BlackCore
}; };
//! Status regarding parts //! Status regarding parts
struct PartsStatus struct BLACKMISC_EXPORT PartsStatus
{ {
bool supportsParts = false; //!< supports parts for given callsign bool supportsParts = false; //!< supports parts for given callsign

View File

@@ -7,7 +7,7 @@
* contained in the LICENSE file. * contained in the LICENSE file.
*/ */
#include "blackcore/interpolatorlinear.h" #include "blackmisc/interpolatorlinear.h"
#include "blackmisc/aviation/aircraftsituation.h" #include "blackmisc/aviation/aircraftsituation.h"
#include "blackmisc/aviation/aircraftsituationlist.h" #include "blackmisc/aviation/aircraftsituationlist.h"
#include "blackmisc/aviation/altitude.h" #include "blackmisc/aviation/altitude.h"
@@ -29,13 +29,12 @@
#include <QList> #include <QList>
#include <array> #include <array>
using namespace BlackMisc;
using namespace BlackMisc::Geo; using namespace BlackMisc::Geo;
using namespace BlackMisc::Math; using namespace BlackMisc::Math;
using namespace BlackMisc::PhysicalQuantities; using namespace BlackMisc::PhysicalQuantities;
using namespace BlackMisc::Aviation; using namespace BlackMisc::Aviation;
namespace BlackCore namespace BlackMisc
{ {
CAircraftSituation CInterpolatorLinear::getInterpolatedSituation(const CCallsign &callsign, qint64 currentTimeMsSinceEpoc, bool vtolAiracraft, InterpolationStatus &status) const CAircraftSituation CInterpolatorLinear::getInterpolatedSituation(const CCallsign &callsign, qint64 currentTimeMsSinceEpoc, bool vtolAiracraft, InterpolationStatus &status) const
{ {

View File

@@ -9,11 +9,11 @@
//! \file //! \file
#ifndef BLACKCORE_INTERPOLATOR_LINEAR_H #ifndef BLACKMISC_INTERPOLATOR_LINEAR_H
#define BLACKCORE_INTERPOLATOR_LINEAR_H #define BLACKMISC_INTERPOLATOR_LINEAR_H
#include "blackcore/blackcoreexport.h" #include "blackmisc/blackmiscexport.h"
#include "blackcore/interpolator.h" #include "blackmisc/interpolator.h"
#include "blackmisc/aviation/aircraftsituation.h" #include "blackmisc/aviation/aircraftsituation.h"
#include <QString> #include <QString>
@@ -25,12 +25,9 @@ namespace BlackMisc
{ {
namespace Aviation { class CCallsign; } namespace Aviation { class CCallsign; }
namespace Simulation { class IRemoteAircraftProvider; } namespace Simulation { class IRemoteAircraftProvider; }
}
namespace BlackCore
{
//! Linear interpolator, calculation inbetween positions //! Linear interpolator, calculation inbetween positions
class BLACKCORE_EXPORT CInterpolatorLinear : public IInterpolator class BLACKMISC_EXPORT CInterpolatorLinear : public IInterpolator
{ {
public: public:
//! Constructor //! Constructor

View File

@@ -20,7 +20,6 @@
#include <QScopedArrayPointer> #include <QScopedArrayPointer>
using namespace BlackMisc; using namespace BlackMisc;
using namespace BlackCore;
using namespace BlackMisc::Aviation; using namespace BlackMisc::Aviation;
using namespace BlackMisc::Simulation; using namespace BlackMisc::Simulation;
using namespace BlackMisc::PhysicalQuantities; using namespace BlackMisc::PhysicalQuantities;
@@ -114,7 +113,7 @@ namespace BlackSimPlugin
} }
CFs9Client::CFs9Client(const CCallsign &callsign, const QString &modelName, CFs9Client::CFs9Client(const CCallsign &callsign, const QString &modelName,
BlackCore::IInterpolator *interpolator, const CTime &updateInterval, QObject *owner) : BlackMisc::IInterpolator *interpolator, const CTime &updateInterval, QObject *owner) :
CDirectPlayPeer(owner, callsign), CDirectPlayPeer(owner, callsign),
m_updateInterval(updateInterval), m_interpolator(interpolator), m_modelName(modelName) m_updateInterval(updateInterval), m_interpolator(interpolator), m_modelName(modelName)
{ {

View File

@@ -11,7 +11,7 @@
#define DIRECTPLAY_CLIENT_H #define DIRECTPLAY_CLIENT_H
#include "directplaypeer.h" #include "directplaypeer.h"
#include "blackcore/interpolator.h" #include "blackmisc/interpolator.h"
#include "blackmisc/aviation/aircraftsituation.h" #include "blackmisc/aviation/aircraftsituation.h"
#include "blackmisc/pq/time.h" #include "blackmisc/pq/time.h"
#include "blackmisc/aviation/callsign.h" #include "blackmisc/aviation/callsign.h"
@@ -40,7 +40,7 @@ namespace BlackSimPlugin
//! Constructor //! Constructor
CFs9Client(const BlackMisc::Aviation::CCallsign &callsign, const QString &modelName, CFs9Client(const BlackMisc::Aviation::CCallsign &callsign, const QString &modelName,
BlackCore::IInterpolator *interpolator, const BlackMisc::PhysicalQuantities::CTime &updateInterval, BlackMisc::IInterpolator *interpolator, const BlackMisc::PhysicalQuantities::CTime &updateInterval,
QObject *owner); QObject *owner);
//! Destructor //! Destructor
@@ -90,7 +90,7 @@ namespace BlackSimPlugin
void sendMultiplayerParamaters(); void sendMultiplayerParamaters();
BlackMisc::PhysicalQuantities::CTime m_updateInterval; BlackMisc::PhysicalQuantities::CTime m_updateInterval;
BlackCore::IInterpolator *m_interpolator = nullptr; BlackMisc::IInterpolator *m_interpolator = nullptr;
QString m_modelName; QString m_modelName;
int m_timerId = 0; int m_timerId = 0;

View File

@@ -14,7 +14,7 @@
#include "multiplayerpackets.h" #include "multiplayerpackets.h"
#include "multiplayerpacketparser.h" #include "multiplayerpacketparser.h"
#include "registermetadata.h" #include "registermetadata.h"
#include "blackcore/interpolatorlinear.h" #include "blackmisc/interpolatorlinear.h"
#include "blackmisc/network/textmessage.h" #include "blackmisc/network/textmessage.h"
#include "blackmisc/simulation/simulatorplugininfo.h" #include "blackmisc/simulation/simulatorplugininfo.h"
#include "blackmisc/logmessage.h" #include "blackmisc/logmessage.h"
@@ -106,7 +106,7 @@ namespace BlackSimPlugin
m_lobbyClient(lobbyClient) m_lobbyClient(lobbyClient)
{ {
connect(lobbyClient.data(), &CLobbyClient::disconnected, this, std::bind(&CSimulatorFs9::simulatorStatusChanged, this, 0)); connect(lobbyClient.data(), &CLobbyClient::disconnected, this, std::bind(&CSimulatorFs9::simulatorStatusChanged, this, 0));
this->m_interpolator = new BlackCore::CInterpolatorLinear(remoteAircraftProvider, this); this->m_interpolator = new BlackMisc::CInterpolatorLinear(remoteAircraftProvider, this);
m_modelMatcher.setDefaultModel(CAircraftModel( m_modelMatcher.setDefaultModel(CAircraftModel(
"Boeing 737-400", "Boeing 737-400",
CAircraftModel::TypeModelMatchingDefaultModel, CAircraftModel::TypeModelMatchingDefaultModel,

View File

@@ -17,7 +17,7 @@
#include "lobbyclient.h" #include "lobbyclient.h"
#include "../fscommon/simulatorfscommon.h" #include "../fscommon/simulatorfscommon.h"
#include "blackcore/simulator.h" #include "blackcore/simulator.h"
#include "blackcore/interpolator.h" #include "blackmisc/interpolator.h"
#include "blackmisc/simulation/simulatedaircraft.h" #include "blackmisc/simulation/simulatedaircraft.h"
#include "blackmisc/simulation/simulatorplugininfo.h" #include "blackmisc/simulation/simulatorplugininfo.h"
#include "blackmisc/pixmap.h" #include "blackmisc/pixmap.h"

View File

@@ -13,7 +13,7 @@
#define BLACKSIMPLUGIN_SIMULATOR_COMMON_H #define BLACKSIMPLUGIN_SIMULATOR_COMMON_H
#include "blackcore/simulatorcommon.h" #include "blackcore/simulatorcommon.h"
#include "blackcore/interpolator.h" #include "blackmisc/interpolator.h"
#include "blackmisc/simulation/fscommon/aircraftcfgparser.h" #include "blackmisc/simulation/fscommon/aircraftcfgparser.h"
#include "fsuipc.h" #include "fsuipc.h"

View File

@@ -8,9 +8,6 @@
*/ */
#include "simconnectobject.h" #include "simconnectobject.h"
#include "blackcore/interpolatorlinear.h"
using namespace BlackCore;
namespace BlackSimPlugin namespace BlackSimPlugin
{ {

View File

@@ -15,7 +15,8 @@
#include "blackmisc/aviation/callsign.h" #include "blackmisc/aviation/callsign.h"
#include <QSharedPointer> #include <QSharedPointer>
namespace BlackCore { class IInterpolator; } namespace BlackMisc { class IInterpolator; }
namespace BlackSimPlugin namespace BlackSimPlugin
{ {
namespace Fsx namespace Fsx

View File

@@ -8,8 +8,8 @@
*/ */
#include "simulatorfsx.h" #include "simulatorfsx.h"
#include "blackcore/interpolatorlinear.h"
#include "blackcore/application.h" #include "blackcore/application.h"
#include "blackmisc/interpolatorlinear.h"
#include "blackmisc/network/textmessage.h" #include "blackmisc/network/textmessage.h"
#include "blackmisc/simulation/fscommon/bcdconversions.h" #include "blackmisc/simulation/fscommon/bcdconversions.h"
#include "blackmisc/simulation/fsx/simconnectutilities.h" #include "blackmisc/simulation/fsx/simconnectutilities.h"

View File

@@ -16,7 +16,7 @@
#include "simconnectobject.h" #include "simconnectobject.h"
#include "../fscommon/simulatorfscommon.h" #include "../fscommon/simulatorfscommon.h"
#include "blackcore/simulator.h" #include "blackcore/simulator.h"
#include "blackcore/interpolatorlinear.h" #include "blackmisc/interpolatorlinear.h"
#include "blackmisc/simulation/simulatorplugininfo.h" #include "blackmisc/simulation/simulatorplugininfo.h"
#include "blackmisc/simulation/aircraftmodel.h" #include "blackmisc/simulation/aircraftmodel.h"
#include "blackmisc/simulation/simulatedaircraft.h" #include "blackmisc/simulation/simulatedaircraft.h"
@@ -171,7 +171,7 @@ namespace BlackSimPlugin
//! Update remote airacraft parts (send to FSX) //! Update remote airacraft parts (send to FSX)
bool updateRemoteAircraftParts(const CSimConnectObject &simObj, const BlackMisc::Aviation::CAircraftPartsList &parts, bool updateRemoteAircraftParts(const CSimConnectObject &simObj, const BlackMisc::Aviation::CAircraftPartsList &parts,
BlackCore::IInterpolator::PartsStatus partsStatus, const BlackMisc::Aviation::CAircraftSituation &interpolatedSituation, bool isOnGround) const; BlackMisc::IInterpolator::PartsStatus partsStatus, const BlackMisc::Aviation::CAircraftSituation &interpolatedSituation, bool isOnGround) const;
//! Format conversion //! Format conversion
SIMCONNECT_DATA_INITPOSITION aircraftSituationToFsxInitPosition(const BlackMisc::Aviation::CAircraftSituation &situation); SIMCONNECT_DATA_INITPOSITION aircraftSituationToFsxInitPosition(const BlackMisc::Aviation::CAircraftSituation &situation);

View File

@@ -15,8 +15,6 @@
*/ */
#include "testinterpolator.h" #include "testinterpolator.h"
#include "blackcore/interpolator.h"
#include "blackcore/interpolatorlinear.h"
#include "blackmisc/aviation/aircraftengine.h" #include "blackmisc/aviation/aircraftengine.h"
#include "blackmisc/aviation/aircraftenginelist.h" #include "blackmisc/aviation/aircraftenginelist.h"
#include "blackmisc/aviation/aircraftlights.h" #include "blackmisc/aviation/aircraftlights.h"
@@ -29,6 +27,8 @@
#include "blackmisc/geo/coordinategeodetic.h" #include "blackmisc/geo/coordinategeodetic.h"
#include "blackmisc/geo/latitude.h" #include "blackmisc/geo/latitude.h"
#include "blackmisc/geo/longitude.h" #include "blackmisc/geo/longitude.h"
#include "blackmisc/interpolator.h"
#include "blackmisc/interpolatorlinear.h"
#include "blackmisc/pq/angle.h" #include "blackmisc/pq/angle.h"
#include "blackmisc/pq/length.h" #include "blackmisc/pq/length.h"
#include "blackmisc/pq/physicalquantity.h" #include "blackmisc/pq/physicalquantity.h"
@@ -45,7 +45,7 @@
#include <QTime> #include <QTime>
#include <QtDebug> #include <QtDebug>
using namespace BlackCore; using namespace BlackMisc;
using namespace BlackMisc::Aviation; using namespace BlackMisc::Aviation;
using namespace BlackMisc::Geo; using namespace BlackMisc::Geo;
using namespace BlackMisc::PhysicalQuantities; using namespace BlackMisc::PhysicalQuantities;