QCanMessageDescription Class

QCanMessageDescription 类描述了处理 CAN 报文并以应用程序定义的格式表示报文的规则。更多

Header: #include <QCanMessageDescription>
CMake.QCanMessageDescription 类 find_package(Qt6 REQUIRED COMPONENTS SerialBus)
target_link_libraries(mytarget PRIVATE Qt6::SerialBus)
qmake: QT += serialbus
Qt 6.5
状态:初步

该类正在开发中,可能会有变动。

公共函数

QCanMessageDescription()
QCanMessageDescription(const QCanMessageDescription &other)
QCanMessageDescription(QCanMessageDescription &&other)
~QCanMessageDescription()
void addSignalDescription(const QCanSignalDescription &description)
void clearSignalDescriptions()
QString comment() const
bool isValid() const
QString name() const
void setComment(const QString &text)
void setName(const QString &name)
void setSignalDescriptions(const QList<QCanSignalDescription> &descriptions)
void setSize(quint8 size)
void setTransmitter(const QString &transmitter)
void setUniqueId(QtCanBus::UniqueId id)
QCanSignalDescription signalDescriptionForName(const QString &name) const
QList<QCanSignalDescription> signalDescriptions() const
quint8 size() const
QString transmitter() const
QtCanBus::UniqueId uniqueId() const
QCanMessageDescription &operator=(QCanMessageDescription &&other)
QCanMessageDescription &operator=(const QCanMessageDescription &other)

详细说明

CAN 报文基本上是一个QCanBusFrame 。CAN 报文的描述包括以下内容:

  • 报文 ID。
  • 报文名称。
  • 报文长度(字节)。
  • 报文来源(发送器)。
  • 报文中的信号描述。

QCanMessageDescription 类提供了控制所有这些参数的方法。

信息 ID

信息 ID 是一个唯一标识符,用于在解码传入的QCanBusFrame 或根据提供的数据编码QCanBusFrame 时选择合适的信息描述。

有关唯一标识符描述的更多详情,请参阅QCanUniqueIdDescription 文档。

信号描述

信号描述由QCanSignalDescription 类表示。QCanMessageDescription 类只提供属于消息的信号列表。

另请参阅 QCanSignalDescriptionQCanUniqueIdDescription

成员函数文档

QCanMessageDescription::QCanMessageDescription()

创建一个空的信息描述。

QCanMessageDescription::QCanMessageDescription(const QCanMessageDescription &other)

使用从other 复制的值创建消息描述。

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

通过移自other 创建消息描述。

注意: 移自的 QCanMessageDescription 对象只能被销毁或赋值。调用析构函数或赋值操作符之外的其他函数的效果未定义。

[noexcept] QCanMessageDescription::~QCanMessageDescription()

销毁该信息描述。

void QCanMessageDescription::addSignalDescription(const QCanSignalDescription &description)

为该信息描述添加新的信号描述description

如果信息描述中已有同名的信号描述,则会被覆盖。

另请参阅 signalDescriptions()、signalDescriptionForName()、setSignalDescriptions() 和clearSignalDescriptions()。

void QCanMessageDescription::clearSignalDescriptions()

清除此信息的所有信号描述。

另请参阅 signalDescriptions()、signalDescriptionForName()、addSignalDescription() 和setSignalDescriptions() 。

QString QCanMessageDescription::comment() const

返回信息的注释。

该参数仅用于额外说明。它不会在信息编码或解码时使用。

另请参阅 setComment()。

bool QCanMessageDescription::isValid() const

如果报文描述有效,则返回true ,否则返回false

有效的信息描述必须至少有一个信号描述。所有信号描述也必须有效。

另请参阅 signalDescriptions() 和QCanSignalDescription::isValid()。

QString QCanMessageDescription::name() const

返回 CAN 报文的名称。

该参数仅用于额外说明。在报文编码或解码过程中不会使用。

另请参见 setName()。

void QCanMessageDescription::setComment(const QString &text)

将邮件的注释设置为text

该参数仅用于额外说明。在报文编码或解码时不会使用。

另请参阅 comment() 。

void QCanMessageDescription::setName(const QString &name)

将 CAN 报文的名称设置为name

该参数仅用于额外说明。在报文编码或解码过程中不会使用。

另请参阅 name() 。

void QCanMessageDescription::setSignalDescriptions(const QList<QCanSignalDescription> &descriptions)

将属于此信息描述的信号描述设置为descriptions

注意: 信息描述必须包含具有唯一信号名称的信号描述,因此如果descriptions 列表中包含名称重复的条目,则只会添加最后一个条目。

另请参阅 signalDescriptions()、signalDescriptionForName()、addSignalDescription() 和clearSignalDescriptions()。

void QCanMessageDescription::setSize(quint8 size)

将 CAN 报文的大小(字节)设为size

另请参阅 size() 。

void QCanMessageDescription::setTransmitter(const QString &transmitter)

将报文的发送节点设置为transmitter

该参数仅用于额外说明。在信息编码或解码过程中不会使用。

另请参阅 transmitter() 。

void QCanMessageDescription::setUniqueId(QtCanBus::UniqueId id)

将 CAN 报文的唯一标识符设置为id

有关唯一标识符的更多信息,请参阅Message ID 部分。

另请参阅 uniqueId() 。

QCanSignalDescription QCanMessageDescription::signalDescriptionForName(const QString &name) const

返回名称为name 的信号的信号描述。

如果消息描述中没有该信号描述,则返回默认构造的QCanSignalDescription 对象。

另请参阅 signalDescriptions()、addSignalDescription()、setSignalDescriptions() 和clearSignalDescriptions()。

QList<QCanSignalDescription> QCanMessageDescription::signalDescriptions() const

返回属于此信息描述的信号描述列表。

另请参阅 signalDescriptionForName()、addSignalDescription()、setSignalDescriptions() 和clearSignalDescriptions()。

quint8 QCanMessageDescription::size() const

以字节为单位返回 CAN 报文的大小。

另请参见 setSize().

QString QCanMessageDescription::transmitter() const

返回报文的发送节点。

该参数仅用于额外说明。在信息编码或解码时不会使用。

另请参阅 setTransmitter()。

QtCanBus::UniqueId QCanMessageDescription::uniqueId() const

返回 CAN 报文的唯一标识符。

有关唯一标识符的更多信息,请参阅Message ID 部分。

另请参阅 setUniqueId()。

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

移动--将other 中的值赋值给该消息描述。

注意: 移动后的QCanMessageDescription 对象只能被销毁或赋值。调用析构函数或赋值操作符以外的其他函数的效果未定义。

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

other 中的值分配给该信息描述。

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