swift
|
Value object for a list of airports. More...
Public Member Functions | |
CLiveryList () | |
Default constructor. | |
CLiveryList (const CSequence< CLivery > &other) | |
Construct from a base class object. | |
CLiveryList | findByAirlineIcaoDesignator (const QString &icao) const |
Find livery by airline. More... | |
CLivery | findStdLiveryByAirlineIcaoVDesignator (const QString &icao) const |
Find livery by airline. More... | |
CLivery | findStdLiveryByAirlineIcaoVDesignator (const CAirlineIcaoCode &icao) const |
Find livery by airline. | |
CLivery | findColorLiveryOrDefault (const CRgbColor &fuselage, const CRgbColor &tail) const |
Search for colors. | |
CLivery | findClosestColorLiveryOrDefault (const CRgbColor &fuselage, const CRgbColor &tail) const |
Search for colors. | |
CLiveryList | findStdLiveriesBySimplifiedAirlineName (const QString &containedString) const |
By simplified name. | |
CLiveryList | findStdLiveriesByNamesOrTelephonyDesignator (const QString &candidate) const |
By names or telephony designator(aka callsign) | |
CLivery | findByCombinedCode (const QString &combinedCode) const |
Find livery by combined code. | |
QStringList | getCombinedCodes (bool sort=false) const |
All combined codes. | |
QStringList | getCombinedCodesPlusInfo (bool sort=false) const |
All combined codes plus more info. | |
QStringList | getCombinedCodesPlusInfoAndId (bool sort=false) const |
All combined codes plus more info. | |
CAirlineIcaoCodeList | getAirlines () const |
All aircraft codes. | |
CLivery | smartLiverySelector (const CLivery &liveryPattern) const |
Find by multiple criteria. | |
CSequence ()=default | |
Default constructor. | |
CSequence (std::initializer_list< T > il) | |
Initializer list constructor. | |
CSequence (QList< T > &&list) | |
By QList of type T. | |
CSequence (const QList< T > &list) | |
By QList of type T. | |
template<typename It > | |
CSequence (It first, It last) | |
Range constructor. | |
CSequence (const CSequence &other)=default | |
Copy constructor. | |
CSequence (CSequence &&other)=default | |
Move constructor. | |
![]() | |
CSequence ()=default | |
Default constructor. | |
CSequence (std::initializer_list< CLivery > il) | |
Initializer list constructor. | |
CSequence (QList< CLivery > &&list) | |
By QList of type T. | |
CSequence (const QList< CLivery > &list) | |
By QList of type T. | |
CSequence (It first, It last) | |
Range constructor. | |
CSequence (const CSequence &other)=default | |
Copy constructor. | |
CSequence (CSequence &&other)=default | |
Move constructor. | |
CSequence & | operator= (const CSequence &other)=default |
Copy assignment. | |
CSequence & | operator= (CSequence &&other)=default |
Move assignment. | |
~CSequence ()=default | |
Destructor. | |
QVector< CLivery > | toVector () const & |
Copy of internal vector. | |
QVector< CLivery > | toVector () && |
Copy of internal vector. | |
iterator | begin () |
Returns iterator at the beginning of the sequence. | |
const_iterator | begin () const |
Returns const iterator at the beginning of the sequence. | |
const_iterator | cbegin () const |
Returns const iterator at the beginning of the sequence. | |
iterator | end () |
Returns iterator one past the end of the sequence. | |
const_iterator | end () const |
Returns const iterator one past the end of the sequence. | |
const_iterator | cend () const |
Returns const iterator one past the end of the sequence. | |
reverse_iterator | rbegin () |
Returns iterator at the beginning of the reversed sequence. | |
const_reverse_iterator | rbegin () const |
Returns const iterator at the beginning of the reversed sequence. | |
const_reverse_iterator | crbegin () const |
Returns const iterator at the beginning of the reversed sequence. | |
reverse_iterator | rend () |
Returns iterator at the end of the reversed sequence. | |
const_reverse_iterator | rend () const |
Returns const iterator at the end of the reversed sequence. | |
const_reverse_iterator | crend () const |
Returns const iterator at the end of the reversed sequence. | |
void | swap (CSequence &other) noexcept |
Swap this sequence with another. | |
reference | operator[] (size_type index) |
Access an element by its index. | |
const_reference | operator[] (size_type index) const |
Access an element by its index. | |
reference | front () |
Access the first element. | |
const_reference | front () const |
Access the first element. | |
const_reference | frontOrDefault () const |
Access the first element, or a default-initialized value if the sequence is empty. | |
value_type | frontOrDefault (value_type def) const |
Access the first element, or a default-initialized value if the sequence is empty. | |
reference | back () |
Access the last element. | |
const_reference | back () const |
Access the last element. | |
const_reference | backOrDefault () const |
Access the last element, or a default value if the sequence is empty. | |
value_type | backOrDefault (value_type def) const |
Access the last element, or a default value if the sequence is empty. | |
size_type | size () const |
Returns number of elements in the sequence. | |
int | sizeInt () const |
Avoid compiler warnings when using with int. | |
QString | sizeString () const |
Convenience function. | |
bool | empty () const |
Returns true if the sequence is empty. | |
bool | isEmpty () const |
Synonym for empty. | |
void | clear () |
Removes all elements in the sequence. | |
void | truncate (size_type maxSize) |
Changes the size of the sequence, if it is bigger than the given size. | |
iterator | insert (iterator before, const CLivery &value) |
Inserts an element into the sequence. More... | |
iterator | insert (iterator before, CLivery &&value) |
Moves an element into the sequence. More... | |
void | push_back (const CLivery &value) |
Appends an element at the end of the sequence. | |
void | push_back (CLivery &&value) |
Move-appends an element at the end of the sequence. | |
void | push_back (const CSequence &other) |
Appends all elements from another sequence at the end of this sequence. | |
void | push_back (CSequence &&other) |
Appends all elements from another sequence at the end of this sequence. This version moves elements instead of copying. | |
void | push_back (const CRange< I > &range) |
Appends all elements from a range at the end of this sequence. | |
void | push_front (const CLivery &value) |
Insert as first element. | |
void | push_front (const CSequence &other) |
Inserts all elements from another sequence at the beginning of this sequence. | |
void | push_front (CLivery &&value) |
Move-insert as first element. | |
void | push_frontMaxElements (const CLivery &value, int maxElements) |
Insert as first element by keep maxElements. | |
void | push_backMaxElements (const CLivery &value, int maxElements) |
Insert as last element by keep maxElements. | |
CSequence | join (const CSequence &other) const |
Concatenates two sequences and returns the result. | |
CSequence | join (const CRange< I > &range) const |
Concatenates a sequence and a range and returns the result. | |
void | pop_back () |
Removes an element at the end of the sequence. | |
void | pop_front () |
Removes an element at the front of the sequence. | |
iterator | erase (iterator pos) |
Remove the element pointed to by the given iterator. More... | |
iterator | erase (iterator it1, iterator it2) |
Remove the range of elements between two iterators. More... | |
iterator | find (const CLivery &object) |
Return an iterator to the first element equal to the given object, or the end iterator if not found. O(n). | |
const_iterator | find (const CLivery &object) const |
Return an iterator to the first element equal to the given object, or the end iterator if not found. O(n). | |
CSequence | findBy (Predicate p) const |
Return a copy containing only those elements for which a given predicate returns true. More... | |
int | applyIf (Predicate p, const VariantMap &newValues, bool skipEqualValues=false) |
Modify by applying a value map to each element for which a given predicate returns true. More... | |
int | applyIf (K1 key1, V1 value1, const VariantMap &newValues, bool skipEqualValues=false) |
Modify by applying a value map to each element matching a particular key/value pair. More... | |
int | remove (const CLivery &object) |
Remove all elements equal to the given object, if it is contained. More... | |
int | removeIf (Predicate p) |
Remove elements for which a given predicate returns true. More... | |
int | removeIf (K0 k0, V0 v0, KeysValues... keysValues) |
Remove elements matching some particular key/value pair(s). More... | |
int | removeIfIn (const CSequence &other) |
Remove all elements if they are in other. More... | |
void | removeIfInSubset (const CSequence &other) |
Remove all elements if they are in other. More... | |
int | replace (const CLivery &original, const CLivery &replacement) |
Replace elements matching the given element with a replacement. More... | |
int | replaceIf (Predicate p, const CLivery &replacement) |
Replace elements for which a given predicate returns true. More... | |
int | replaceIf (K1 key1, V1 value1, const CLivery &replacement) |
Replace elements matching a particular key/value pair. More... | |
void | replaceOrAdd (const CLivery &original, const CLivery &replacement) |
Replace elements matching the given element. If there is no match, push the new element on the end. | |
void | replaceOrAdd (const CLivery &replacement) |
Replace elements matching the given element. If there is no match, push the new element on the end. | |
void | replaceOrAdd (const CSequence< CLivery > &replacements) |
Replace or add given elements. | |
void | replaceOrAdd (K1 key1, V1 value1, const CLivery &replacement) |
Replace elements matching a particular key/value pair. If there is no match, push the new element on the end. More... | |
void | reverse () |
In-place reverse. | |
Q_REQUIRED_RESULT CSequence | reversed () const |
Reversed order. | |
void | sort (Predicate p) |
In-place sort by a given comparator predicate. | |
void | sortBy (K1 key1, Keys... keys) |
In-place sort by some particular key(s). More... | |
Q_REQUIRED_RESULT CSequence | sorted (Predicate p) const |
Return a copy sorted by a given comparator predicate. | |
CSequence | sortedBy (K1 key1, Keys... keys) const |
Return a copy sorted by some particular key(s). More... | |
void | partiallySort (size_type n, Predicate p) |
In-place move the smallest n elements to the beginning and sort them. | |
void | partiallySortBy (size_type n, K1 key1, Keys... keys) |
In-place partially sort by some particular key(s). More... | |
Q_REQUIRED_RESULT CSequence | partiallySorted (size_type n, Predicate p) const |
Return a copy with the smallest n elements at the beginning and sorted. | |
CSequence | partiallySortedBy (size_type n, K1 key1, Keys... keys) const |
Return a copy partially sorted by some particular key(s). More... | |
bool | unorderedEqualsByKeys (const U &other, Key0 k0, Keys... keys) const |
Return true if this container equals another container, considering only the given element members. Order of elements is not considered; this is implemented using a transient sort, so don't overuse. | |
auto | separate (Predicate p) const -> QMap< decltype(p(std::declval< CLivery >())), CSequence > |
Split up the sequence into subsequences for which the given predicate returns the same value. | |
auto | separateBy (Key k) const -> QMap< decltype(std::invoke(k, std::declval< CLivery >())), CSequence > |
Split up the sequence into subsequences of elements having the same value for the given key. | |
void | marshalToDataStream (QDataStream &stream) const |
Marshal a value to a QDataStream. More... | |
void | unmarshalFromDataStream (QDataStream &stream) |
Unmarshal a value from a QDataStream. More... | |
![]() | |
template<template< class > class Other> | |
auto | to () const |
Return a new container of a different type, containing the same elements as this one. More... | |
template<template< class > class Other, class T > | |
Other< T > | to (Other< T > other) const |
Return a new container of a different type, containing the same elements as this one. More... | |
template<class K0 , class V0 , class... KeysValues> | |
int | removeIf (K0 k0, V0 v0, KeysValues... keysValues) |
Remove elements matching some particular key/value pair(s). More... | |
QJsonObject | toJson () const |
Cast to JSON object. More... | |
QString | toJsonString (QJsonDocument::JsonFormat format=QJsonDocument::Indented) const |
Convenience function JSON as string. | |
void | convertFromJson (const QJsonObject &json) |
Assign from JSON object. More... | |
void | convertFromJson (const QString &jsonString, bool acceptCacheFormat=false) |
Assign from JSON object string. | |
CStatusMessage | convertFromJsonNoThrow (const QJsonObject &json, const CLogCategoryList &categories, const QString &prefix) |
Call convertFromJson, catch any CJsonException that is thrown and return it as CStatusMessage. | |
CStatusMessage | convertFromJsonNoThrow (const QString &jsonString, const CLogCategoryList &categories, const QString &prefix) |
Call convertFromJson, catch any CJsonException that is thrown and return it as CStatusMessage. | |
QString | convertToQString (bool i18n=false) const |
Cast as QString. More... | |
QStringList | toStringList (bool i18n=false) const |
To string list. | |
void | marshallToDbus (QDBusArgument &argument) const |
Marshall without begin/endStructure, for when composed within another object. More... | |
void | unmarshallFromDbus (const QDBusArgument &argument) |
Unmarshall without begin/endStructure, for when composed within another object. More... | |
![]() | |
template<class F > | |
auto | transform (F function) const |
Return a new container generated by applying some transformation function to all elements of this one. | |
template<class Predicate > | |
auto | findBy (Predicate p) const |
Return a copy containing only those elements for which a given predicate returns true. | |
template<class K0 , class V0 , class... KeysValues> | |
auto | findBy (K0 k0, V0 v0, KeysValues... keysValues) const |
Return a copy containing only those elements matching some particular key/value pair(s). More... | |
template<class Predicate > | |
const auto & | findFirstBy (Predicate p) const |
Return a reference to the first element for which a given predicate returns true. Undefined if there is none. | |
template<class K , class V > | |
const auto & | findFirstBy (K key, V value) const |
Return a reference to the first element matching some particular key/value pair(s). Undefined if there is none. | |
template<class Predicate , class Value > | |
auto | findFirstByOrDefault (Predicate p, const Value &def) const |
Return a copy of the first element for which a given predicate returns true, or a default value if there is none. | |
template<class Predicate > | |
auto | findFirstByOrDefault (Predicate p) const |
Return a copy of the first element for which a given predicate returns true, or a default value if there is none. | |
template<class K , class V , class Value > | |
auto | findFirstByOrDefault (K key, V value, const Value &def) const |
Return a copy of the first element matching some particular key/value pair(s), or a default value if there is none. | |
template<class T , class K , class V > | |
auto | findFirstByOrDefault (K T::*key, V value) const |
Return a copy of the first element matching some particular key/value pair(s), or a default value if there is none. | |
template<class Predicate > | |
bool | containsBy (Predicate p) const |
Return true if there is an element for which a given predicate returns true. | |
template<class T > | |
bool | contains (const T &object) const |
Return true if there is an element equal to given object. Uses the most efficient implementation available in the derived container. | |
template<class K0 , class V0 , class... KeysValues> | |
bool | contains (K0 k0, V0 v0, KeysValues... keysValues) const |
Return a copy containing only those elements matching some particular key/value pair(s). More... | |
template<class T , class Predicate > | |
bool | equalsBy (const T &other, Predicate c) const |
Return true if this container equals another container according to the given element equality predicate. | |
template<class T , class Key0 , class... Keys> | |
bool | equalsByKeys (const T &other, Key0 k0, Keys... keys) const |
Return true if this container equals another container, considering only the given element members. | |
template<class T > | |
T | randomElement () const |
Pick one random element. | |
Derived | randomElements (int n) const |
Copy n elements from the container at random. | |
Derived | sampleElements (int n) const |
Copy n elements from the container, randomly selected but evenly distributed. | |
![]() | |
int | getMetaTypeId () const |
Returns the Qt meta type ID of this object. More... | |
QString | getClassName () const |
Class name. | |
bool | isA (int metaTypeId) const |
Returns true if this object is an instance of the class with the given meta type ID, or one of its subclasses. | |
![]() | |
QString | toQString (bool i18n=false) const |
Cast as QString. | |
std::string | toStdString (bool i18n=false) const |
To std string. | |
QString | stringForStreaming () const |
String for streaming operators. | |
![]() | |
CIcons::IconIndex | toIcon () const |
As icon, not implemented by all classes. | |
![]() | |
CLivery | findByKey (int key, const CLivery ¬Found=CLivery()) const |
Object with key, notFound otherwise. | |
CLiveryList | findByKeys (const QSet< int > &keys) const |
Object with key, notFound otherwise. | |
CLiveryList | findObjectsWithDbKey () const |
Objects with DB key. | |
CLiveryList | findObjectsWithoutDbKey () const |
Objects without DB key. | |
CLivery | maxKeyObject () const |
Object with max.key. | |
void | sortByKey () |
Sort by timestamp. | |
QSet< int > | toDbKeySet () const |
All keys as set. | |
QMap< int, CLivery > | toDbKeyValueMap () const |
As map with DB key/object. | |
QSet< QString > | toDbKeyStringSet () const |
All keys as string set (also integer keys will be converted to string) | |
QString | dbKeysAsString (const QString &separator) const |
The DB keys as string. | |
int | getMaxKey (bool *ok=nullptr) const |
Max.key value (making sense with integer key) | |
int | removeObjectsWithKeys (const QSet< int > &keys) |
Remove objects with keys. | |
int | removeObjectsWithoutDbKey () |
Remove objects without key. | |
int | replaceOrAddObjectsByKey (const CLiveryList &container) |
Update or insert data (based on DB key) | |
QDateTime | latestDbTimestamp () const |
Latest DB timestamp (means objects with DB key) | |
QDateTime | oldestDbTimestamp () const |
Latest DB timestamp (means objects with DB key) | |
int | countWithValidDbKey (bool withKey) const |
Number of objects with/without key. | |
int | countWithValidDbKey () const |
Number of entries with valid DB key. | |
bool | containsAnyObjectWithoutKey () const |
Any object without key? | |
bool | containsDbKey (int key) const |
Contains object with key? | |
![]() | |
CONTAINER | findBefore (const QDateTime &dateTime) const |
List of objects before dateTime (older) | |
CONTAINER | findBefore (qint64 msSinceEpoch) const |
List of objects before msSinceEpoch (older) | |
OBJ | findObjectBeforeOrDefault (qint64 msSinceEpoch) const |
Object before timestamp or default (older) | |
CONTAINER | findBeforeAndRemove (qint64 msSinceEpoch) |
Get objects before msSinceEpoch and remove those. | |
CONTAINER | findBeforeNowMinusOffset (qint64 msOffset) const |
List of objects before now - offset. | |
CONTAINER | findAfter (const QDateTime &dateTime) const |
List of objects after dateTime (newer) | |
CONTAINER | findAfter (qint64 msSinceEpoch) const |
List of objects after msSinceEpoch (newer) | |
CONTAINER | findAfterNowMinusOffset (qint64 msOffset) const |
List of objects before now - offset. | |
OBJ | findObjectAfterOrDefault (qint64 msSinceEpoch) const |
List of objects after msSinceEpoch (newer) | |
CONTAINER | findInvalidTimestamps () const |
Objects without valid timestamp. | |
OBJ | findClosestTimeDistance (qint64 msSinceEpoch) const |
Find closest (or default) | |
bool | hasInvalidTimestamps () const |
Has invalid timestamp. | |
void | setCurrentUtcTime () |
Set all timestamps to now. | |
void | setUtcTime (qint64 msSinceEpoch) |
Set all timestamps to given time. | |
void | setInvalidTimestampsToCurrentUtcTime () |
Set invalid timestamps to now. | |
QDateTime | latestTimestamp () const |
Latest timestamp. | |
qint64 | latestTimestampMsecsSinceEpoch () const |
Latest timestamp. | |
QDateTime | oldestTimestamp () const |
Oldest timestamp. | |
qint64 | oldestTimestampMsecsSinceEpoch () const |
Oldest timestamp. | |
OBJ | latestObject () const |
Latest object. | |
OBJ | oldestObject () const |
Latest object. | |
int | removeBefore (const QDateTime &dateTime) |
Remove objects with timestamp before dateTime. | |
int | removeBefore (qint64 msSinceEpoch) |
Remove objects with timestamp before dateTime. | |
int | removeOlderThanNowMinusOffset (qint64 offsetMs) |
Remove objects older than seconds. | |
void | sortLatestFirst () |
Sort by timestamp. | |
void | sortOldestFirst () |
Sort by timestamp. | |
void | push_frontKeepLatestFirst (const OBJ &value, bool replaceSameTimestamp=true, int maxElements=-1) |
Insert as first element by keeping maxElements and the latest first. | |
void | push_backIncreaseTimestamp (const OBJ &newObject) |
Push back and increase the timestamp at least by +1ms if equal to last element. More... | |
void | push_backOverrideTimestamp (const OBJ &newObject, qint64 newTsMsSinceEpoch) |
Push back, but set new timestamp. | |
void | setNewTimestampStartingLast (qint64 startTimeStampMs, qint64 deltaTimeMs) |
Set new timestamps starting with the last element. | |
int | replaceIfSameTimestamp (const OBJ &newObject) |
Replace if an object has the same timestamp. | |
bool | isSortedLatestLast () const |
Is completely sorted: latest last. More... | |
bool | isSortedLatestFirst () const |
Is completely sorted: latest last. More... | |
void | addMsecs (qint64 msToAdd) |
Adds a time to all values. | |
void | setSortHint (HintTimestampSort hint) |
Set the hint. | |
MillisecondsMinMaxMean | getTimestampDifferenceMinMaxMean () const |
Difference of timestamp values. More... | |
![]() | |
int | getMetaTypeId () const |
Returns the Qt meta type ID of this object. More... | |
QString | getClassName () const |
Class name. | |
bool | isA (int metaTypeId) const |
Returns true if this object is an instance of the class with the given meta type ID, or one of its subclasses. | |
Static Public Member Functions | |
static CLiveryList | fromDatabaseJsonCaching (const QJsonArray &array, const CAirlineIcaoCodeList &relatedAirlines={}) |
Caching version from DB data. More... | |
![]() | |
static Derived | fromJson (const QJsonObject &json) |
Static version of convertFromJson. | |
static Derived | fromJson (const QString &jsonString, bool acceptCacheJson=false) |
Static version of convertFromJson. | |
static Derived | fromJsonNoThrow (const QString &jsonString, bool acceptCacheJson, bool &success, QString &errMsg) |
Static version of convertFromJson. | |
![]() | |
static void | registerMetadata () |
Register metadata. | |
![]() | |
static CLiveryList | fromMultipleJsonFormats (const QJsonObject &jsonObject) |
From multiple JSON formats. More... | |
static CLiveryList | fromMultipleJsonFormats (const QString &jsonString) |
From multiple JSON formats. More... | |
static CLiveryList | fromDatabaseJson (const QJsonArray &array) |
From DB JSON with default prefixes. More... | |
static CLiveryList | fromDatabaseJson (const QJsonArray &array, const QString &prefix) |
From DB JSON. More... | |
![]() | |
static void | registerMetadata () |
Register metadata. | |
Additional Inherited Members | |
![]() | |
typedef CLivery | key_type |
STL compatibility. | |
typedef CLivery | value_type |
STL compatilibty. | |
typedef CLivery & | reference |
STL compatibility. | |
typedef const CLivery & | const_reference |
STL compatibility. | |
typedef CLivery * | pointer |
STL compatibility. | |
typedef const CLivery * | const_pointer |
STL compatibility. | |
typedef QVector< CLivery >::const_iterator | const_iterator |
STL compatibility. | |
typedef QVector< CLivery >::iterator | iterator |
STL compatibility. | |
typedef QVector< CLivery >::const_reverse_iterator | const_reverse_iterator |
STL compatibility. | |
typedef QVector< CLivery >::reverse_iterator | reverse_iterator |
STL compatibility. | |
typedef ptrdiff_t | difference_type |
STL compatibility. | |
typedef int | size_type |
STL compatibility. | |
![]() | |
enum | HintTimestampSort { NoTimestampSortHint , TimestampLatestFirst , TimestampLatestLast } |
Hint if the list is sorted. | |
![]() | |
int | getMetaTypeId () const |
Returns the Qt meta type ID of this object. More... | |
![]() | |
IDatastoreObjectList ()=default | |
Constructor. | |
![]() | |
ITimestampObjectList ()=default | |
Constructor. | |
const CONTAINER & | container () const |
Container. | |
CONTAINER & | container () |
Container. | |
![]() | |
template<typename T , typename U > | |
static bool | equalPointers (const T *a, const U *b) |
Efficiently compare addresses of two objects. Return false if types are not compatible. | |
![]() | |
HintTimestampSort | m_tsSortHint = NoTimestampSortHint |
sort hint | |
Value object for a list of airports.
Definition at line 25 of file liverylist.h.
CLiveryList swift::misc::aviation::CLiveryList::findByAirlineIcaoDesignator | ( | const QString & | icao | ) | const |
Find livery by airline.
Definition at line 19 of file liverylist.cpp.
CLivery swift::misc::aviation::CLiveryList::findStdLiveryByAirlineIcaoVDesignator | ( | const QString & | icao | ) | const |
Find livery by airline.
Definition at line 49 of file liverylist.cpp.
|
static |
Caching version from DB data.
array | JSON data |
relatedAirlines | passing the airline can skip the parsing from livery |
Definition at line 194 of file liverylist.cpp.