En esta página

QCanMessageDescription Class

La clase QCanMessageDescription describe las reglas para procesar un mensaje CAN y representarlo en un formato definido por la aplicación. Más...

Cabecera: #include <QCanMessageDescription>
CMake: find_package(Qt6 REQUIRED COMPONENTS SerialBus)
target_link_libraries(mytarget PRIVATE Qt6::SerialBus)
qmake: QT += serialbus
Desde: Qt 6.5
Estado: Preliminar

Esta clase está en desarrollo y está sujeta a cambios.

Funciones Públicas

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)

Descripción detallada

Un mensaje CAN es básicamente un QCanBusFrame. La descripción de un mensaje CAN incluye lo siguiente:

  • ID del mensaje.
  • Nombre del mensaje.
  • Longitud del mensaje en bytes.
  • Origen del mensaje (transmisor).
  • Descripción de las señales del mensaje.

La clase QCanMessageDescription proporciona métodos para controlar todos estos parámetros.

ID del mensaje

El ID del mensaje es un identificador único, que se utiliza para seleccionar la descripción adecuada del mensaje cuando se descodifica el QCanBusFrame entrante o se codifica un QCanBusFrame basado en los datos proporcionados.

Consulte la documentación de QCanUniqueIdDescription para obtener más detalles sobre la descripción del identificador único.

Descripción de la señal

La descripción de la señal está representada por la clase QCanSignalDescription. La clase QCanMessageDescription sólo proporciona una lista de señales que pertenecen al mensaje.

Véase también QCanSignalDescription y QCanUniqueIdDescription.

Documentación de las funciones miembro

QCanMessageDescription::QCanMessageDescription()

Crea una descripción de mensaje vacía.

QCanMessageDescription::QCanMessageDescription(const QCanMessageDescription &other)

Crea una descripción de mensaje con los valores copiados de other.

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

Crea una descripción de mensaje moviendo desde other.

Nota: El objeto QCanMessageDescription movido desde sólo puede ser destruido o asignado. El efecto de llamar a otras funciones que no sean el destructor o uno de los operadores de asignación es indefinido.

[constexpr noexcept] QCanMessageDescription::~QCanMessageDescription()

Destruye la descripción de este mensaje.

void QCanMessageDescription::addSignalDescription(const QCanSignalDescription &description)

Añade una nueva descripción de señal description a esta descripción de mensaje.

Si la descripción del mensaje ya tiene una descripción de señal para una señal con el mismo nombre, se sobrescribe.

Véase también signalDescriptions(), signalDescriptionForName(), setSignalDescriptions() y clearSignalDescriptions().

void QCanMessageDescription::clearSignalDescriptions()

Borra todas las descripciones de señales de este mensaje.

Véase también signalDescriptions(), signalDescriptionForName(), addSignalDescription() y setSignalDescriptions().

QString QCanMessageDescription::comment() const

Devuelve el comentario del mensaje.

Este parámetro se introduce sólo como descripción adicional. No se utiliza durante la codificación o descodificación del mensaje.

Véase también setComment().

bool QCanMessageDescription::isValid() const

Devuelve true cuando la descripción del mensaje es válida y false en caso contrario.

Una descripción de mensaje válida debe tener al menos una descripción de señal. Todas las descripciones de señales también deben ser válidas.

Véase también signalDescriptions() y QCanSignalDescription::isValid().

QString QCanMessageDescription::name() const

Devuelve el nombre del mensaje CAN.

Este parámetro se introduce sólo como descripción adicional. No se utiliza durante la codificación o descodificación del mensaje.

Véase también setName().

void QCanMessageDescription::setComment(const QString &text)

Establece el comentario del mensaje en text.

Este parámetro se introduce sólo como descripción adicional. No se utiliza durante la codificación o descodificación del mensaje.

Véase también comment().

void QCanMessageDescription::setName(const QString &name)

Establece el nombre del mensaje CAN en name.

Este parámetro se introduce sólo como descripción adicional. No se utiliza durante la codificación o descodificación del mensaje.

Véase también name().

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

Establece las descripciones de las señales pertenecientes a esta descripción de mensaje en descriptions.

Nota: La descripción del mensaje debe tener descripciones de señales con nombres de señales únicos, por lo que si la lista descriptions contiene entradas con nombres duplicados, sólo se añadirá la última entrada.

Véase también signalDescriptions(), signalDescriptionForName(), addSignalDescription(), y clearSignalDescriptions().

void QCanMessageDescription::setSize(quint8 size)

Establece el tamaño en bytes del mensaje CAN en size.

Véase también size().

void QCanMessageDescription::setTransmitter(const QString &transmitter)

Establece el nodo transmisor del mensaje en transmitter.

Este parámetro se introduce sólo como descripción adicional. No se utiliza durante la codificación o descodificación del mensaje.

Véase también transmitter().

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

Establece el identificador único del mensaje CAN en id.

Consulte la sección Message ID para obtener más información sobre el identificador único.

Véase también uniqueId().

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

Devuelve la descripción de una señal con el nombre name.

Si la descripción del mensaje no tiene tal descripción de señal, se devuelve un objeto QCanSignalDescription construido por defecto.

Véase también signalDescriptions(), addSignalDescription(), setSignalDescriptions() y clearSignalDescriptions().

QList<QCanSignalDescription> QCanMessageDescription::signalDescriptions() const

Devuelve la lista de descripciones de señales que pertenecen a esta descripción de mensaje.

Véase también signalDescriptionForName(), addSignalDescription(), setSignalDescriptions() y clearSignalDescriptions().

quint8 QCanMessageDescription::size() const

Devuelve el tamaño en bytes del mensaje CAN.

Véase también setSize().

QString QCanMessageDescription::transmitter() const

Devuelve el nodo transmisor del mensaje.

Este parámetro se introduce sólo como descripción adicional. No se utiliza durante la codificación o descodificación del mensaje.

Véase también setTransmitter().

QtCanBus::UniqueId QCanMessageDescription::uniqueId() const

Devuelve el identificador único del mensaje CAN.

Consulte la sección Message ID para obtener más información sobre el identificador único.

Véase también setUniqueId().

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

Mover-asigna los valores de other a esta descripción de mensaje.

Nota: El objeto movido desde QCanMessageDescription sólo puede ser destruido o asignado. El efecto de llamar a otras funciones que no sean el destructor o uno de los operadores de asignación es indefinido.

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

Asigna los valores de other a esta descripción de mensaje.

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