Add implementation to remove remote aircrafts

refs #229
This commit is contained in:
Roland Winklmeier
2014-05-05 00:28:49 +02:00
committed by Klaus Basan
parent 9bc0226fd1
commit 83776c5cc9
3 changed files with 11 additions and 4 deletions

View File

@@ -62,7 +62,8 @@ namespace BlackSimPlugin
//! \brief SimConnect request ID's
enum Requests {
RequestOwnAircraft = 1000
RequestOwnAircraft = 1000,
RequestRemoveAircraft = 2000
};
//! \brief Constructor

View File

@@ -162,9 +162,9 @@ namespace BlackSimPlugin
m_simConnectObjects.insert(callsign, simObj);
}
void CSimulatorFsx::removeRemoteAircraft(const CCallsign &/*callsign*/)
void CSimulatorFsx::removeRemoteAircraft(const CCallsign &callsign)
{
// TODO
removeRemoteAircraft(m_simConnectObjects.value(callsign));
}
CSimulatorInfo CSimulatorFsx::getSimulatorInfo() const
@@ -356,7 +356,12 @@ namespace BlackSimPlugin
}
else
emit statusChanged(ConnectionFailed);
}
void CSimulatorFsx::removeRemoteAircraft(const CSimConnectObject &simObject)
{
SimConnect_AIRemoveObject(m_hSimConnect, simObject.getObjectId(), simObject.getRequestId());
m_simConnectObjects.remove(simObject.getCallsign());
}
HRESULT CSimulatorFsx::initSystemEvents()

View File

@@ -144,6 +144,7 @@ namespace BlackSimPlugin
private:
void removeRemoteAircraft(const CSimConnectObject &simObject);
/*!
* \brief Initialize SimConnect system events