Ref T171, count of aircraft supporting parts

* added functions in providers, aware class
* some utility functions in aircraft list
This commit is contained in:
Klaus Basan
2017-10-10 20:59:01 +02:00
parent c553d5cdfd
commit c882c64824
8 changed files with 66 additions and 0 deletions

View File

@@ -192,6 +192,12 @@ namespace BlackCore
return m_aircraftSupportingParts.contains(callsign); return m_aircraftSupportingParts.contains(callsign);
} }
int CAirspaceMonitor::getRemoteAircraftSupportingPartsCount() const
{
QReadLocker l(&m_lockParts);
return m_aircraftSupportingParts.size();
}
CCallsignSet CAirspaceMonitor::remoteAircraftSupportingParts() const CCallsignSet CAirspaceMonitor::remoteAircraftSupportingParts() const
{ {
QReadLocker l(&m_lockParts); QReadLocker l(&m_lockParts);

View File

@@ -95,6 +95,7 @@ namespace BlackCore
virtual int remoteAircraftSituationsCount(const BlackMisc::Aviation::CCallsign &callsign) const override; virtual int remoteAircraftSituationsCount(const BlackMisc::Aviation::CCallsign &callsign) const override;
virtual BlackMisc::Aviation::CAircraftPartsList remoteAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, qint64 cutoffTimeValuesBefore = -1) const override; virtual BlackMisc::Aviation::CAircraftPartsList remoteAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, qint64 cutoffTimeValuesBefore = -1) const override;
virtual bool isRemoteAircraftSupportingParts(const BlackMisc::Aviation::CCallsign &callsign) const override; virtual bool isRemoteAircraftSupportingParts(const BlackMisc::Aviation::CCallsign &callsign) const override;
virtual int getRemoteAircraftSupportingPartsCount() const override;
virtual BlackMisc::Aviation::CCallsignSet remoteAircraftSupportingParts() const override; virtual BlackMisc::Aviation::CCallsignSet remoteAircraftSupportingParts() const override;
virtual bool updateAircraftEnabled(const BlackMisc::Aviation::CCallsign &callsign, bool enabledForRedering) override; virtual bool updateAircraftEnabled(const BlackMisc::Aviation::CCallsign &callsign, bool enabledForRedering) override;
virtual bool updateAircraftModel(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Simulation::CAircraftModel &model, const BlackMisc::CIdentifier &originator) override; virtual bool updateAircraftModel(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Simulation::CAircraftModel &model, const BlackMisc::CIdentifier &originator) override;

View File

@@ -553,6 +553,12 @@ namespace BlackCore
return m_airspace->remoteAircraftParts(callsign, cutoffTimeValuesBefore); return m_airspace->remoteAircraftParts(callsign, cutoffTimeValuesBefore);
} }
int CContextNetwork::getRemoteAircraftSupportingPartsCount() const
{
if (this->isDebugEnabled()) { CLogMessage(this, BlackMisc::CLogCategory::contextSlot()).debug() << Q_FUNC_INFO; }
return m_airspace->getRemoteAircraftSupportingPartsCount();
}
bool CContextNetwork::isAircraftPartsHistoryEnabled() const bool CContextNetwork::isAircraftPartsHistoryEnabled() const
{ {
if (this->isDebugEnabled()) { CLogMessage(this, BlackMisc::CLogCategory::contextSlot()).debug() << Q_FUNC_INFO; } if (this->isDebugEnabled()) { CLogMessage(this, BlackMisc::CLogCategory::contextSlot()).debug() << Q_FUNC_INFO; }

View File

@@ -124,6 +124,7 @@ namespace BlackCore
virtual void enableReverseLookupMessages(bool enabled) override; virtual void enableReverseLookupMessages(bool enabled) override;
virtual BlackMisc::CStatusMessageList getAircraftPartsHistory(const BlackMisc::Aviation::CCallsign &callsign) const override; virtual BlackMisc::CStatusMessageList getAircraftPartsHistory(const BlackMisc::Aviation::CCallsign &callsign) const override;
virtual BlackMisc::Aviation::CAircraftPartsList getRemoteAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, qint64 cutoffTimeValuesBefore) const override; virtual BlackMisc::Aviation::CAircraftPartsList getRemoteAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, qint64 cutoffTimeValuesBefore) const override;
virtual int getRemoteAircraftSupportingPartsCount() const override;
virtual bool isAircraftPartsHistoryEnabled() const override; virtual bool isAircraftPartsHistoryEnabled() const override;
virtual void enableAircraftPartsHistory(bool enabled) override; virtual void enableAircraftPartsHistory(bool enabled) override;
//! @} //! @}

View File

@@ -118,6 +118,12 @@ namespace BlackMisc
return m_remoteAircraftProvider->isRemoteAircraftSupportingParts(callsign); return m_remoteAircraftProvider->isRemoteAircraftSupportingParts(callsign);
} }
int CRemoteAircraftAware::getRemoteAircraftSupportingPartsCount() const
{
Q_ASSERT_X(m_remoteAircraftProvider, Q_FUNC_INFO, "No object available");
return m_remoteAircraftProvider->getRemoteAircraftSupportingPartsCount();
}
bool CRemoteAircraftAware::updateAircraftEnabled(const Aviation::CCallsign &callsign, bool enabledForRedering) bool CRemoteAircraftAware::updateAircraftEnabled(const Aviation::CCallsign &callsign, bool enabledForRedering)
{ {
Q_ASSERT_X(m_remoteAircraftProvider, Q_FUNC_INFO, "No object available"); Q_ASSERT_X(m_remoteAircraftProvider, Q_FUNC_INFO, "No object available");

View File

@@ -100,6 +100,10 @@ namespace BlackMisc
//! \threadsafe //! \threadsafe
virtual bool isRemoteAircraftSupportingParts(const BlackMisc::Aviation::CCallsign &callsign) const = 0; virtual bool isRemoteAircraftSupportingParts(const BlackMisc::Aviation::CCallsign &callsign) const = 0;
//! Number of aircraft supporting parts
//! \threadsafe
virtual int getRemoteAircraftSupportingPartsCount() const = 0;
//! Remote aircraft supporting parts. //! Remote aircraft supporting parts.
//! \threadsafe //! \threadsafe
virtual BlackMisc::Aviation::CCallsignSet remoteAircraftSupportingParts() const = 0; virtual BlackMisc::Aviation::CCallsignSet remoteAircraftSupportingParts() const = 0;
@@ -214,6 +218,9 @@ namespace BlackMisc
//! \copydoc IRemoteAircraftProvider::isRemoteAircraftSupportingParts //! \copydoc IRemoteAircraftProvider::isRemoteAircraftSupportingParts
bool isRemoteAircraftSupportingParts(const BlackMisc::Aviation::CCallsign &callsign) const; bool isRemoteAircraftSupportingParts(const BlackMisc::Aviation::CCallsign &callsign) const;
//! \copydoc IRemoteAircraftProvider::getRemoteAircraftSupportingPartsCount
int getRemoteAircraftSupportingPartsCount() const;
//! \copydoc IRemoteAircraftProvider::updateAircraftEnabled //! \copydoc IRemoteAircraftProvider::updateAircraftEnabled
bool updateAircraftEnabled(const BlackMisc::Aviation::CCallsign &callsign, bool enabledForRedering); bool updateAircraftEnabled(const BlackMisc::Aviation::CCallsign &callsign, bool enabledForRedering);

View File

@@ -195,5 +195,35 @@ namespace BlackMisc
this->push_back(aircraft); this->push_back(aircraft);
return true; return true;
} }
int CSimulatedAircraftList::countEnabled() const
{
int c = 0;
for (const CSimulatedAircraft &aircraft : (*this))
{
if (aircraft.isEnabled()) { c++; }
}
return c;
}
int CSimulatedAircraftList::countRendered() const
{
int c = 0;
for (const CSimulatedAircraft &aircraft : (*this))
{
if (aircraft.isRendered()) { c++; }
}
return c;
}
int CSimulatedAircraftList::countAircraftPartsSyncronized() const
{
int c = 0;
for (const CSimulatedAircraft &aircraft : (*this))
{
if (aircraft.isPartsSynchronized()) { c++; }
}
return c;
}
} // namespace } // namespace
} // namespace } // namespace

View File

@@ -100,6 +100,15 @@ namespace BlackMisc
//! Replace or add by callsign //! Replace or add by callsign
bool replaceOrAddByCallsign(const CSimulatedAircraft &aircraft); bool replaceOrAddByCallsign(const CSimulatedAircraft &aircraft);
//! Number of enabled aircraft
int countEnabled() const;
//! Number of rendered aircraft
int countRendered() const;
//! Number of aircraft with parts
int countAircraftPartsSyncronized() const;
}; };
} //namespace } //namespace
} // namespace } // namespace