refs #863 Move interpolator logging into a separate class.

A single logger instance can be shared between multiple interpolator instances.
This commit is contained in:
Mathew Sutcliffe
2017-02-06 19:24:39 +00:00
parent e67b5fccc4
commit 04ddd3bfa5
16 changed files with 419 additions and 318 deletions

View File

@@ -118,13 +118,14 @@ namespace BlackSimPlugin
return positionSlewMode;
}
CFs9Client::CFs9Client(const CCallsign &callsign, const QString &modelName,
const CTime &updateInterval, QObject *owner) :
CFs9Client::CFs9Client(const CCallsign &callsign, const QString &modelName, const CTime &updateInterval,
BlackMisc::Simulation::CInterpolationLogger *logger, QObject *owner) :
CDirectPlayPeer(owner, callsign),
m_updateInterval(updateInterval),
m_interpolator(callsign),
m_modelName(modelName)
{
m_interpolator.attachLogger(logger);
}
CFs9Client::~CFs9Client()

View File

@@ -41,7 +41,8 @@ namespace BlackSimPlugin
//! Constructor
CFs9Client(const BlackMisc::Aviation::CCallsign &callsign, const QString &modelName,
const BlackMisc::PhysicalQuantities::CTime &updateInterval, QObject *owner);
const BlackMisc::PhysicalQuantities::CTime &updateInterval,
BlackMisc::Simulation::CInterpolationLogger *logger, QObject *owner);
//! Destructor
virtual ~CFs9Client();

View File

@@ -171,7 +171,7 @@ namespace BlackSimPlugin
bool rendered = true;
updateAircraftRendered(callsign, rendered);
CFs9Client *client = new CFs9Client(callsign, newRemoteAircraft.getModelString(), CTime(25, CTimeUnit::ms()), this);
CFs9Client *client = new CFs9Client(callsign, newRemoteAircraft.getModelString(), CTime(25, CTimeUnit::ms()), &m_interpolationLogger, this);
client->setHostAddress(m_fs9Host->getHostAddress());
client->setPlayerUserId(m_fs9Host->getPlayerUserId());
client->start();