QCanUniqueIdDescription Class

Die Klasse QCanUniqueIdDescription beschreibt die Regeln für den Zugriff auf einen eindeutigen Bezeichner in einem QCanBusFrame. Mehr....

Kopfzeile: #include <QCanUniqueIdDescription>
CMake: find_package(Qt6 REQUIRED COMPONENTS SerialBus)
target_link_libraries(mytarget PRIVATE Qt6::SerialBus)
qmake: QT += serialbus
Seit: Qt 6.5
Status: Vorläufig

Diese Klasse befindet sich in der Entwicklung und kann sich noch ändern.

Öffentliche Funktionen

QCanUniqueIdDescription()
QCanUniqueIdDescription(const QCanUniqueIdDescription &other)
QCanUniqueIdDescription(QCanUniqueIdDescription &&other)
~QCanUniqueIdDescription()
quint8 bitLength() const
QSysInfo::Endian endian() const
bool isValid() const
void setBitLength(quint8 length)
void setEndian(QSysInfo::Endian endian)
void setSource(QtCanBus::DataSource source)
void setStartBit(quint16 bit)
QtCanBus::DataSource source() const
quint16 startBit() const
QCanUniqueIdDescription &operator=(QCanUniqueIdDescription &&other)
QCanUniqueIdDescription &operator=(const QCanUniqueIdDescription &other)

Detaillierte Beschreibung

Ein eindeutiger Identifier wird verwendet, um verschiedene CAN-Bus-Frames zu unterscheiden und sie mit Hilfe von QCanMessageDescriptionzu kodieren oder zu dekodieren. Verschiedene CAN-Protokolle können verschiedene Teile des CAN-Frames als eindeutigen Identifikator verwenden (z.B. verwendet das DBC-Protokoll die gesamte FrameId als eindeutigen Identifikator).

Diese Klasse enthält Parameter, um die Position des eindeutigen Identifiers innerhalb eines CAN-Frames auf flexible Weise festzulegen:

  • Der Teil des Frames, der zur Extraktion des eindeutigen Identifiers verwendet wird (FrameId oder Payload).
  • Das Startbit des eindeutigen Identifiers, bezogen auf den ausgewählten Teil des Frames. Die Bits werden beginnend mit dem LSB gezählt.
  • Die Anzahl der Bits, die zur Darstellung des eindeutigen Bezeichners verwendet werden.
  • Das zur Extraktion des Wertes verwendete Endian.

Im Abschnitt Data Endianness Processing der Dokumentation QCanSignalDescription können Sie nachlesen, wie der Startbit-Wert von der Endianness der Daten abhängt. Der dort beschriebene Ansatz wird auch für die Beschreibung der eindeutigen Kennung verwendet.

Der tatsächliche Wert eines eindeutigen Bezeichners wird durch den Typ QtCanBus::UniqueId dargestellt.

Siehe auch QCanMessageDescription.

Dokumentation der Mitgliedsfunktionen

QCanUniqueIdDescription::QCanUniqueIdDescription()

Erzeugt eine leere eindeutige Bezeichnerbeschreibung.

QCanUniqueIdDescription::QCanUniqueIdDescription(const QCanUniqueIdDescription &other)

Erzeugt eine eindeutige Bezeichnerbeschreibung mit den aus other kopierten Werten.

[noexcept] QCanUniqueIdDescription::QCanUniqueIdDescription(QCanUniqueIdDescription &&other)

Erzeugt eine eindeutige Bezeichnerbeschreibung durch Verschieben von other.

Hinweis: Das "moved-from"-Objekt QCanUniqueIdDescription kann nur zerstört oder zugewiesen werden. Die Wirkung des Aufrufs anderer Funktionen als des Destruktors oder eines der Zuweisungsoperatoren ist undefiniert.

[noexcept] QCanUniqueIdDescription::~QCanUniqueIdDescription()

Zerstört diese eindeutige Bezeichnerbeschreibung.

quint8 QCanUniqueIdDescription::bitLength() const

Gibt die Bitlänge des eindeutigen Bezeichners zurück.

Siehe auch setBitLength(), startBit(), und setStartBit().

QSysInfo::Endian QCanUniqueIdDescription::endian() const

Gibt das Datenendian des eindeutigen Bezeichners zurück.

Standardmäßig wird LittleEndian verwendet.

Siehe auch setEndian() und QSysInfo::Endian.

bool QCanUniqueIdDescription::isValid() const

Gibt true zurück, wenn die Beschreibung des eindeutigen Erkennungsmerkmals gültig ist, andernfalls false.

Eine gültige eindeutige Bezeichnerbeschreibung muss einen bitLength() haben, der größer als Null ist und die Anzahl der Bits des Typs QtCanBus::UniqueId nicht überschreitet.

Siehe auch bitLength().

void QCanUniqueIdDescription::setBitLength(quint8 length)

Setzt die Bitlänge des eindeutigen Bezeichners auf length.

Siehe auch bitLength(), startBit(), und setStartBit().

void QCanUniqueIdDescription::setEndian(QSysInfo::Endian endian)

Setzt das Datenendian des eindeutigen Bezeichners auf endian.

Siehe auch endian() und QSysInfo::Endian.

void QCanUniqueIdDescription::setSource(QtCanBus::DataSource source)

Setzt die Datenquelle des eindeutigen Bezeichners auf source.

Siehe auch source() und QtCanBus::DataSource.

void QCanUniqueIdDescription::setStartBit(quint16 bit)

Setzt das Startbit des eindeutigen Bezeichners in source() auf bit.

Siehe auch startBit(), bitLength(), und setBitLength().

QtCanBus::DataSource QCanUniqueIdDescription::source() const

Gibt die Datenquelle des eindeutigen Bezeichners zurück.

Standardmäßig wird FrameId verwendet.

Siehe auch setSource() und QtCanBus::DataSource.

quint16 QCanUniqueIdDescription::startBit() const

Gibt das Startbit des eindeutigen Bezeichners in source() zurück.

Siehe auch setStartBit(), bitLength(), und setBitLength().

[noexcept] QCanUniqueIdDescription &QCanUniqueIdDescription::operator=(QCanUniqueIdDescription &&other)

Verschieben - ordnet die Werte von other dieser eindeutigen Bezeichnerbeschreibung zu.

Hinweis: Das von QCanUniqueIdDescription verschobene Objekt kann nur zerstört oder zugewiesen werden. Die Auswirkungen des Aufrufs anderer Funktionen als des Destruktors oder eines der Zuweisungsoperatoren sind undefiniert.

QCanUniqueIdDescription &QCanUniqueIdDescription::operator=(const QCanUniqueIdDescription &other)

Weist dieser eindeutigen Bezeichnerbeschreibung die Werte von other zu.

© 2025 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.