mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-23 07:15:35 +08:00
Convenience functions for aircraft list
This commit is contained in:
@@ -10,7 +10,9 @@
|
||||
#include "avaircraftlist.h"
|
||||
#include "nwuser.h"
|
||||
#include "predicates.h"
|
||||
#include "propertyindexallclasses.h"
|
||||
|
||||
using namespace BlackMisc;
|
||||
using namespace BlackMisc::PhysicalQuantities;
|
||||
using namespace BlackMisc::Network;
|
||||
|
||||
@@ -30,6 +32,23 @@ namespace BlackMisc
|
||||
CSequence<CAircraft>(other)
|
||||
{ }
|
||||
|
||||
/*
|
||||
* Contains callsign
|
||||
*/
|
||||
bool CAircraftList::containsCallsign(const CCallsign &callsign) const
|
||||
{
|
||||
if (callsign.isEmpty()) { return false; }
|
||||
return this->contains(&CAircraft::getCallsign, callsign);
|
||||
}
|
||||
|
||||
/*
|
||||
* Change for callsign
|
||||
*/
|
||||
int CAircraftList::applyIfCallsign(const CCallsign &callsign, const CPropertyIndexVariantMap &variantMap)
|
||||
{
|
||||
return this->applyIf(&CAircraft::getCallsign, callsign, variantMap, false);
|
||||
}
|
||||
|
||||
/*
|
||||
* Register metadata
|
||||
*/
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
#include "nwuserlist.h"
|
||||
#include "collection.h"
|
||||
#include "sequence.h"
|
||||
#include "propertyindexvariantmap.h"
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
#include <QList>
|
||||
@@ -25,7 +26,7 @@ namespace BlackMisc
|
||||
{
|
||||
namespace Aviation
|
||||
{
|
||||
//! Value object encapsulating a list of aircrafts.
|
||||
//! Value object encapsulating a list of aircraft.
|
||||
class CAircraftList : public CSequence<CAircraft>
|
||||
{
|
||||
public:
|
||||
@@ -35,6 +36,12 @@ namespace BlackMisc
|
||||
//! Construct from a base class object.
|
||||
CAircraftList(const CSequence<CAircraft> &other);
|
||||
|
||||
//! Contains callsign?
|
||||
bool containsCallsign(const BlackMisc::Aviation::CCallsign &callsign) const;
|
||||
|
||||
//! Apply for given callsign
|
||||
int applyIfCallsign(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::CPropertyIndexVariantMap &variantMap);
|
||||
|
||||
//! Find 0..n stations by callsign
|
||||
CAircraftList findByCallsign(const CCallsign &callsign) const;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user