Sur cette page

QCborArray Class

La classe QCborArray sert à stocker un tableau d'éléments CBOR. En savoir plus...

En-tête : #include <QCborArray>
CMake : find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake : QT += core

Remarque : toutes les fonctions de cette classe sont réentrantes.

Comparaisons de QCborArray

CatégorieTypes comparables
strongQCborArray
strongQCborValueConstRef.

Types publics

Fonctions publiques

QCborArray()
QCborArray(std::initializer_list<QCborValue> args)
QCborArray(const QCborArray &other)
(since 6.10) QCborArray(QCborArray &&other)
~QCborArray()
void append(QCborValue &&value)
void append(const QCborValue &value)
QCborValue at(qsizetype i) const
QCborArray::iterator begin()
QCborArray::const_iterator begin() const
QCborArray::const_iterator cbegin() const
QCborArray::const_iterator cend() const
void clear()
int compare(const QCborArray &other) const
QCborArray::const_iterator constBegin() const
QCborArray::const_iterator constEnd() const
bool contains(const QCborValue &value) const
bool empty() const
QCborArray::iterator end()
QCborArray::const_iterator end() const
QCborArray::iterator erase(QCborArray::const_iterator it)
QCborArray::iterator erase(QCborArray::iterator it)
QCborValue extract(QCborArray::ConstIterator it)
QCborValue extract(QCborArray::Iterator it)
QCborValueRef first()
QCborValue first() const
void insert(qsizetype i, QCborValue &&value)
void insert(qsizetype i, const QCborValue &value)
QCborArray::iterator insert(QCborArray::const_iterator before, const QCborValue &value)
QCborArray::iterator insert(QCborArray::iterator before, const QCborValue &value)
bool isEmpty() const
QCborValueRef last()
QCborValue last() const
void pop_back()
void pop_front()
void prepend(QCborValue &&value)
void prepend(const QCborValue &value)
void push_back(const QCborValue &t)
void push_front(const QCborValue &t)
void removeAt(qsizetype i)
void removeFirst()
void removeLast()
qsizetype size() const
void swap(QCborArray &other)
QCborValue takeAt(qsizetype i)
QCborValue takeFirst()
QCborValue takeLast()
QCborValue toCborValue() const
QJsonArray toJsonArray() const
QVariantList toVariantList() const
QCborArray operator+(const QCborValue &v) const
QCborArray &operator+=(const QCborValue &v)
QCborArray &operator<<(const QCborValue &v)
(since 6.10) QCborArray &operator=(QCborArray &&other)
QCborArray &operator=(const QCborArray &other)
QCborValueRef operator[](qsizetype i)
const QCborValue operator[](qsizetype i) const

Membres publics statiques

QCborArray fromJsonArray(const QJsonArray &array)
(since 6.3) QCborArray fromJsonArray(QJsonArray &&array)
QCborArray fromStringList(const QStringList &list)
QCborArray fromVariantList(const QVariantList &list)
bool operator!=(const QCborArray &lhs, const QCborArray &rhs)
bool operator<(const QCborArray &lhs, const QCborArray &rhs)
bool operator<=(const QCborArray &lhs, const QCborArray &rhs)
bool operator==(const QCborArray &lhs, const QCborArray &rhs)
bool operator>(const QCborArray &lhs, const QCborArray &rhs)
bool operator>=(const QCborArray &lhs, const QCborArray &rhs)

Description détaillée

Cette classe permet de contenir un conteneur séquentiel au format CBOR (un tableau). Le CBOR (Concise Binary Object Representation) est un format très compact de codage de données binaires qui constitue un sur-ensemble du JSON. Il a été créé par le groupe de travail CoRE (Constrained RESTful Environments) de l’IETF, qui l’a utilisé dans de nombreuses nouvelles RFC. Il est destiné à être utilisé avec le protocole CoAP.

QCborArray est très similaire à QVariantList et QJsonArray, et son API est presque identique à celle de ces deux classes. Elle peut également être convertie vers et depuis ces deux classes, bien qu’il puisse y avoir une perte d’informations lors de certaines conversions.

Voir également QCborValue, QCborMap, QJsonArray, QList, Analyse et affichage des données CBOR, Convertisseur de sérialisation, et Enregistrement et chargement d'une partie.

Documentation sur les types de membres

QCborArray::const_iterator

Un synonyme de « QCborArray::ConstIterator ».

QCborArray::const_pointer

Une définition de type (« typedef ») pour « const QCborValue * », à des fins de compatibilité avec les algorithmes génériques.

QCborArray::const_reference

Une définition de type (typedef) vers ` const QCborValue &`, pour assurer la compatibilité avec les algorithmes génériques.

QCborArray::difference_type

Une définition de type pour `qsizetype`.

QCborArray::iterator

Un synonyme de « QCborArray::Iterator ».

QCborArray::pointer

Une définition de type (typedef) vers ` QCborValue *`, pour assurer la compatibilité avec les algorithmes génériques.

QCborArray::reference

Une définition de type (typedef) pour ` QCborValue &`, à des fins de compatibilité avec les algorithmes génériques.

QCborArray::size_type

Une définition de type pour `qsizetype`.

QCborArray::value_type

Le type de valeurs pouvant être stockées dans une « QCborArray » : c'est-à-dire « QCborValue ».

Documentation sur les fonctions membres

[noexcept] QCborArray::QCborArray()

Crée un objet QCborArray vide.

QCborArray::QCborArray(std::initializer_list<QCborValue> args)

Initialise ce QCborArray à partir de la liste entre accolades C++ disponible à l'adresse args, comme dans l'exemple suivant :

QCborArray a = { null, 0, 1, 1.5, 2, "Hello", QByteArray("World") };

[noexcept] QCborArray::QCborArray(const QCborArray &other)

Copie le contenu de other dans cet objet.

[constexpr noexcept default, since 6.10] QCborArray::QCborArray(QCborArray &&other)

Constructeur de déplacement.

L'objet d'origine other est placé dans l'état de construction par défaut.

Cette fonction a été introduite dans Qt 6.10.

Voir aussi ` QCborArray::QCborArray()`.

[noexcept] QCborArray::~QCborArray()

Supprime cette instance QCborArray et libère toutes les ressources associées.

void QCborArray::append(QCborValue &&value)

void QCborArray::append(const QCborValue &value)

Ajoute value au tableau après tous les autres éléments qu'il peut déjà contenir.

Voir également at(), operator[](), first(), last(), insert(), prepend(), removeAt() et takeAt().

QCborValue QCborArray::at(qsizetype i) const

Renvoie l’élément de type « QCborValue » situé à la position « i » dans le tableau.

Si le tableau contient moins d’ i éléments, cette fonction renvoie un QCborValue contenant une valeur indéfinie. C’est pourquoi il n’est pas possible, avec cette fonction, de distinguer le cas où le tableau n’est pas assez grand de celui où le tableau commence par une valeur indéfinie.

Voir également operator[](), first(), last(), insert(), prepend(), append(), removeAt() et takeAt().

QCborArray::iterator QCborArray::begin()

Renvoie un itérateur de tableau pointant vers le premier élément de ce tableau. Si le tableau est vide, cette fonction renvoie la même valeur que end().

Voir également constBegin() et end().

QCborArray::const_iterator QCborArray::begin() const

Renvoie un itérateur de tableau pointant vers le premier élément de ce tableau. Si le tableau est vide, cette fonction renvoie la même valeur que end().

Voir également constBegin() et constEnd().

QCborArray::const_iterator QCborArray::cbegin() const

Renvoie un itérateur de tableau pointant vers le premier élément de ce tableau. Si le tableau est vide, cette fonction renvoie le même résultat que end().

Voir également constBegin() et constEnd().

QCborArray::const_iterator QCborArray::cend() const

Renvoie un itérateur de tableau pointant juste après le dernier élément de ce tableau.

Voir également constBegin() et constEnd().

void QCborArray::clear()

Vide ce tableau.

Voir aussi isEmpty().

[noexcept] int QCborArray::compare(const QCborArray &other) const

Compare ce tableau et other, en comparant chaque élément l'un après l'autre, et renvoie un entier indiquant si ce tableau doit être trié avant (si le résultat est négatif) ou après other (si le résultat est positif). Si cette fonction renvoie 0, les deux tableaux sont égaux et contiennent les mêmes éléments.

Pour plus d’informations sur l’ordre de tri CBOR, voir QCborValue::compare().

Voir également QCborValue::compare(), QCborMap::compare() et operator==().

QCborArray::const_iterator QCborArray::constBegin() const

Renvoie un itérateur de tableau pointant vers le premier élément de ce tableau. Si le tableau est vide, cette fonction renvoie la même valeur que end().

Voir également begin() et constEnd().

QCborArray::const_iterator QCborArray::constEnd() const

Renvoie un itérateur de tableau pointant juste après le dernier élément de ce tableau.

Voir également constBegin() et end().

bool QCborArray::contains(const QCborValue &value) const

Renvoie « true » si ce tableau contient un élément égal à « value ».

bool QCborArray::empty() const

Synonyme de ` isEmpty()`. Cette fonction est fournie à des fins de compatibilité avec le code générique qui utilise l'API de la bibliothèque standard.

Renvoie « true » si ce tableau est vide (size() == 0).

Voir également isEmpty() et size().

QCborArray::iterator QCborArray::end()

Renvoie un itérateur de tableau pointant juste après le dernier élément de ce tableau.

Voir également begin() et constEnd().

QCborArray::const_iterator QCborArray::end() const

Renvoie un itérateur de tableau pointant juste après le dernier élément de ce tableau.

Voir également constBegin() et constEnd().

Supprime de ce tableau l'élément pointé par l'itérateur de tableau it, puis renvoie un itérateur vers l'élément suivant (celui qui occupe désormais la position dans le tableau précédemment occupée par it ).

Voir également insert(), removeAt(), takeAt(), takeFirst() et takeLast().

QCborValue QCborArray::extract(QCborArray::ConstIterator it)

QCborValue QCborArray::extract(QCborArray::Iterator it)

Extrait une valeur du tableau à la position indiquée par l'itérateur it et renvoie la valeur ainsi extraite.

Voir également insert(), erase(), takeAt() et removeAt().

QCborValueRef QCborArray::first()

Renvoie une référence au premier élément QCborValue de ce tableau. Le tableau ne doit pas être vide.

QCborValueRef possède exactement la même API que QCborValue, à une différence importante près : si vous lui attribuez de nouvelles valeurs, ce tableau sera mis à jour avec ces nouvelles valeurs.

Voir également operator[](), at(), last(), insert(), prepend(), append(), removeAt() et takeAt().

QCborValue QCborArray::first() const

Renvoie le premier élément QCborValue de ce tableau.

Si le tableau est vide, cette fonction renvoie un QCborValue contenant une valeur indéfinie. C'est pourquoi il n'est pas possible, avec cette fonction, de distinguer le cas où le tableau n'est pas assez grand de celui où il se termine par une valeur indéfinie.

Voir également operator[](), at(), last(), insert(), prepend(), append(), removeAt() et takeAt().

[static] QCborArray QCborArray::fromJsonArray(const QJsonArray &array)

Convertit tous les éléments JSON présents dans le tableau ` array ` au format CBOR à l'aide de la fonction `QCborValue::fromJson()`, puis renvoie le tableau CBOR composé de ces éléments.

Cette conversion s'effectue sans perte, car le système de types CBOR est un sur-ensemble de celui de JSON. De plus, le tableau renvoyé par cette fonction peut être reconverti en array d'origine à l'aide de toJsonArray().

Voir également toJsonArray(), toVariantList(), QCborValue::fromJsonValue() et QCborMap::fromJsonObject().

[static noexcept, since 6.3] QCborArray QCborArray::fromJsonArray(QJsonArray &&array)

Il s'agit d'une fonction surchargée.

Cette fonction a été introduite dans Qt 6.3.

[static] QCborArray QCborArray::fromStringList(const QStringList &list)

Renvoie un objet ` QCborArray ` contenant toutes les chaînes de caractères présentes dans la liste ` list `.

Voir également fromVariantList() et fromJsonArray().

[static] QCborArray QCborArray::fromVariantList(const QVariantList &list)

Convertit tous les éléments de l'list au format CBOR à l'aide de la fonction QCborValue::fromVariant() et renvoie le tableau composé de ces éléments.

La conversion à partir de ` QVariant ` n'est pas totalement sans perte. Veuillez consulter la documentation relative à ` QCborValue::fromVariant()` pour plus d'informations.

Voir également toVariantList(), fromStringList(), fromJsonArray() et QCborMap::fromVariantMap().

void QCborArray::insert(qsizetype i, QCborValue &&value)

void QCborArray::insert(qsizetype i, const QCborValue &value)

Insère value dans le tableau à la position i de ce tableau. Si i vaut -1, l'élément est ajouté à la fin du tableau. Comble le tableau avec des éléments non valides si i est supérieur à la taille antérieure du tableau.

Voir également at(), operator[](), first(), last(), prepend(), append(), removeAt(), takeAt() et extract().

QCborArray::iterator QCborArray::insert(QCborArray::const_iterator before, const QCborValue &value)

QCborArray::iterator QCborArray::insert(QCborArray::iterator before, const QCborValue &value)

Insère value dans ce tableau avant l'élément before et renvoie un itérateur de tableau pointant vers l'élément qui vient d'être inséré.

Voir également erase(), removeAt(), prepend() et append().

bool QCborArray::isEmpty() const

Renvoie « true » si cette QCborArray est vide (c'est-à-dire si size() est égal à 0).

Voir également size() et clear().

QCborValueRef QCborArray::last()

Renvoie une référence à la dernière valeur QCborValue de ce tableau. Le tableau ne doit pas être vide.

QCborValueRef possède exactement la même API que QCborValue, à une différence importante près : si vous lui attribuez de nouvelles valeurs, ce tableau sera mis à jour avec ces nouvelles valeurs.

Voir également operator[](), at(), first(), insert(), prepend(), append(), removeAt() et takeAt().

QCborValue QCborArray::last() const

Renvoie le dernier QCborValue de ce tableau.

Si le tableau est vide, cette fonction renvoie un QCborValue contenant une valeur indéfinie. C'est pourquoi il n'est pas possible, avec cette fonction, de distinguer le cas où le tableau n'est pas assez grand de celui où il se termine par une valeur indéfinie.

Voir aussi operator[](), at(), first(), insert(), prepend(), append(), removeAt() et takeAt().

void QCborArray::pop_back()

Synonyme de ` removeLast()`. Cette fonction est fournie à des fins de compatibilité avec le code générique qui utilise l'API de la bibliothèque standard.

Supprime le dernier élément de ce tableau. Le tableau ne doit pas être vide avant la suppression

Voir également removeLast(), takeLast(), pop_front(), push_back(), append() et insert().

void QCborArray::pop_front()

Synonyme de ` removeFirst()`. Cette fonction est fournie à des fins de compatibilité avec le code générique utilisant l'API de la bibliothèque standard.

Supprime le premier élément de ce tableau. Le tableau ne doit pas être vide avant la suppression

Voir également removeFirst(), takeFirst(), pop_back(), push_front(), prepend() et insert().

void QCborArray::prepend(QCborValue &&value)

void QCborArray::prepend(const QCborValue &value)

Ajoute value au début du tableau, avant tous les autres éléments qu'il pourrait déjà contenir.

Voir également at(), operator[](), first(), last(), insert(), append(), removeAt() et takeAt().

void QCborArray::push_back(const QCborValue &t)

Synonyme de ` append()`. Cette fonction est fournie à des fins de compatibilité avec le code générique qui utilise l'API de la bibliothèque standard.

Ajoute l'élément t à ce tableau.

Voir également append(), push_front(), pop_back(), prepend() et insert().

void QCborArray::push_front(const QCborValue &t)

Synonyme de ` prepend()`. Cette fonction est fournie à des fins de compatibilité avec le code générique qui utilise l'API de la bibliothèque standard.

Ajoute l'élément t au début de ce tableau.

Voir également prepend(), push_back(), pop_front(), append() et insert().

void QCborArray::removeAt(qsizetype i)

Supprime l'élément situé à la position i du tableau. Le tableau doit comporter plus de i éléments avant la suppression.

Voir également takeAt(), removeFirst(), removeLast(), at(), operator[](), insert(), prepend() et append().

void QCborArray::removeFirst()

Supprime le premier élément du tableau, ce qui fait que le deuxième élément devient le premier. Le tableau ne doit pas être vide avant cet appel.

Voir également removeAt(), takeFirst(), removeLast(), at(), operator[](), insert(), prepend() et append().

void QCborArray::removeLast()

Supprime le dernier élément du tableau. Le tableau ne doit pas être vide avant cet appel.

Voir également removeAt(), takeLast(), removeFirst(), at(), operator[](), insert(), prepend() et append().

[noexcept] qsizetype QCborArray::size() const

Renvoie la taille de ce tableau.

Voir aussi isEmpty().

[noexcept] void QCborArray::swap(QCborArray &other)

Permute les éléments de ce tableau avec ceux d'other. Cette opération est très rapide et ne plante jamais.

QCborValue QCborArray::takeAt(qsizetype i)

Supprime l'élément situé à l'index i du tableau et le renvoie. Le tableau doit comporter plus de i éléments avant la suppression.

Voir également removeAt(), removeFirst(), removeLast(), at(), operator[](), insert(), prepend() et append().

QCborValue QCborArray::takeFirst()

Supprime le premier élément du tableau et le renvoie, ce qui fait que le deuxième élément devient le premier. Le tableau ne doit pas être vide avant cet appel.

Voir également takeAt(), removeFirst(), removeLast(), at(), operator[](), insert(), prepend() et append().

QCborValue QCborArray::takeLast()

Supprime le dernier élément du tableau et le renvoie. Le tableau ne doit pas être vide avant cet appel.

Voir également takeAt(), removeLast(), removeFirst(), at(), operator[](), insert(), prepend() et append().

QCborValue QCborArray::toCborValue() const

Construit explicitement un objet ` QCborValue ` représentant ce tableau. Cette fonction n’est généralement pas nécessaire, car ` QCborValue ` dispose d’un constructeur pour ` QCborArray`, ce qui rend la conversion implicite.

La conversion de ` QCborArray ` en ` QCborValue ` permet de l'utiliser dans n'importe quel contexte où `QCborValues` peut être utilisé, y compris en tant qu'éléments dans des `QCborArrays` et en tant que clés et types mappés dans ` QCborMap`. La conversion d'un tableau en ` QCborValue ` permet d'accéder à ` QCborValue::toCbor()`.

Voir également QCborValue::QCborValue(const QCborArray &).

QJsonArray QCborArray::toJsonArray() const

Convertit de manière récursive chaque élément de type « QCborValue » de ce tableau au format JSON à l'aide de la méthode QCborValue::toJsonValue() et renvoie l'objet QJsonArray correspondant, composé de ces éléments.

Veuillez noter que le CBOR contient un ensemble de types plus riche et plus large que le JSON ; certaines informations peuvent donc être perdues lors de cette conversion. Pour plus de détails sur les conversions appliquées, consultez QCborValue::toJsonValue().

Voir également fromJsonArray(), QCborValue::toJsonValue(), QCborMap::toJsonObject() et toVariantList().

QVariantList QCborArray::toVariantList() const

Convertit de manière récursive chaque élément de type « QCborValue » de ce tableau à l'aide de la fonction QCborValue::toVariant() et renvoie le tableau « QVariantList » composé des éléments convertis.

La conversion en QVariant n'est pas totalement sans perte. Veuillez consulter la documentation relative à QCborValue::toVariant() pour plus d'informations.

Voir également fromVariantList(), fromStringList(), toJsonArray(), QCborValue::toVariant() et QCborMap::toVariantMap().

QCborArray QCborArray::operator+(const QCborValue &v) const

Renvoie un nouvel objet ` QCborArray ` contenant les mêmes éléments que ce tableau, auxquels s'ajoute ` v ` en tant que dernier élément.

Voir également operator+=(), operator<<() et append().

QCborArray &QCborArray::operator+=(const QCborValue &v)

Ajoute v à ce tableau et renvoie une référence à ce tableau.

Voir également append(), insert(), operator+() et operator<<().

QCborArray &QCborArray::operator<<(const QCborValue &v)

Ajoute v à ce tableau et renvoie une référence à ce tableau.

Voir également append(), insert(), operator+() et operator+=().

[noexcept, since 6.10] QCborArray &QCborArray::operator=(QCborArray &&other)

Opérateur de déplacement-affectation.

L'objet « déplacé » other se retrouve dans un état valide, mais non spécifié.

Cette fonction a été introduite dans Qt 6.10.

[noexcept] QCborArray &QCborArray::operator=(const QCborArray &other)

Remplace le contenu de ce tableau par celui de other, puis renvoie une référence à cet objet.

QCborValueRef QCborArray::operator[](qsizetype i)

Renvoie une référence à l'élément QCborValue situé à l'index i dans le tableau. Les indices situés au-delà de la fin du tableau entraîneront l'extension de celui-ci, qui sera rempli d'entrées non définies, jusqu'à ce qu'il comporte une entrée à l'index spécifié.

QCborValueRef possède exactement la même API que QCborValue, à une différence importante près : si vous lui attribuez de nouvelles valeurs, ce tableau sera mis à jour avec ces nouvelles valeurs.

Voir également at(), first(), last(), insert(), prepend(), append(), removeAt() et takeAt().

const QCborValue QCborArray::operator[](qsizetype i) const

Renvoie l’élément d’ QCborValue situé à la position i dans le tableau.

Si le tableau contient moins de i éléments, cette fonction renvoie un QCborValue contenant une valeur indéfinie. C’est pourquoi il n’est pas possible, avec cette fonction, de distinguer le cas où le tableau n’est pas assez grand de celui où le tableau contient une valeur indéfinie à la position i.

Voir également at(), first(), last(), insert(), prepend(), append(), removeAt() et takeAt().

Personnes concernées non membres

[noexcept] bool operator!=(const QCborArray &lhs, const QCborArray &rhs)

Compare les tableaux lhs et rhs en comparant chaque élément l'un après l'autre, et renvoie « true » si le contenu des deux tableaux est différent, « false » dans le cas contraire.

Pour plus d’informations sur l’égalité CBOR dans Qt, voir QCborValue::compare().

Voir également compare(), QCborValue::operator==(), QCborMap::operator==(), operator==() et operator<().

[noexcept] bool operator<(const QCborArray &lhs, const QCborArray &rhs)

Compare les tableaux lhs et rhs en comparant chaque élément l'un après l'autre, et renvoie « true » si le tableau lhs doit être trié avant rhs, « false » dans le cas contraire.

Pour plus d’informations sur l’ordre de tri CBOR, voir QCborValue::compare().

Voir également compare(), QCborValue::operator==(), QCborMap::operator==(), operator==(), operator!=() et operator<=().

[noexcept] bool operator<=(const QCborArray &lhs, const QCborArray &rhs)

Compare les tableaux lhs et rhs en comparant chaque élément l'un après l'autre, et renvoie « true » si le tableau lhs doit être trié avant rhs, ou si les deux tableaux contiennent les mêmes éléments ; dans le cas contraire, elle renvoie « false ».

Pour plus d'informations sur l'ordre de tri CBOR, voir QCborValue::compare().

Voir également compare(), QCborValue::operator==(), QCborMap::operator==(), operator==(), operator!=() et operator<().

[noexcept] bool operator==(const QCborArray &lhs, const QCborArray &rhs)

Compare les tableaux lhs et rhs en comparant chaque élément l'un après l'autre, et renvoie « true » si les deux tableaux contiennent les mêmes éléments, « false » dans le cas contraire.

Pour plus d’informations sur l’égalité CBOR dans Qt, voir QCborValue::compare().

Voir également compare(), QCborValue::operator==(), QCborMap::operator==(), operator!=() et operator<().

[noexcept] bool operator>(const QCborArray &lhs, const QCborArray &rhs)

Compare les tableaux lhs et rhs en comparant chaque élément l'un après l'autre, et renvoie « true » si le tableau lhs doit être trié après rhs, « false » dans le cas contraire.

Pour plus d’informations sur l’ordre de tri CBOR, voir QCborValue::compare().

Voir également compare(), QCborValue::operator==(), QCborMap::operator==(), operator==(), operator!=() et operator>=().

[noexcept] bool operator>=(const QCborArray &lhs, const QCborArray &rhs)

Compare les tableaux lhs et rhs en comparant chaque élément l'un après l'autre, et renvoie « true » si le tableau lhs doit être trié après rhs, ou si les deux tableaux contiennent les mêmes éléments ; dans le cas contraire, il renvoie « false ».

Pour plus d’informations sur l’ordre de tri CBOR, voir QCborValue::compare().

Voir également compare(), QCborValue::operator==(), QCborMap::operator==(), operator==(), operator!=() et operator>().

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.