Sur cette page

QCanBus Class

La classe QCanBus gère l'enregistrement et la création des plugins de bus. En savoir plus...

En-tête : #include <QCanBus>
CMake : find_package(Qt6 REQUIRED COMPONENTS SerialBus)
target_link_libraries(mytarget PRIVATE Qt6::SerialBus)
qmake : QT += serialbus
Hérite de : QObject

Fonctions publiques

(since 6.8) QList<QCanBusDeviceInfo> availableDevices(QString *errorMessage = nullptr) const
QList<QCanBusDeviceInfo> availableDevices(const QString &plugin, QString *errorMessage = nullptr) const
QCanBusDevice *createDevice(const QString &plugin, const QString &interfaceName, QString *errorMessage = nullptr) const
QStringList plugins() const

Membres publics statiques

QCanBus *instance()

Description détaillée

QCanBus charge les plugins Qt CAN Bus lors de l'exécution. La propriété des plugins de bus série est transférée au chargeur.

Documentation des fonctions membres

[since 6.8] QList<QCanBusDeviceInfo> QCanBus::availableDevices(QString *errorMessage = nullptr) const

Renvoie les périphériques disponibles pour tous les plug-ins, c'est-à-dire toutes les interfaces CAN disponibles.

En cas d'échec, le paramètre facultatif « errorMessage » renvoie une description textuelle de l'erreur.

Remarque : certains plugins peuvent ne pas prendre en charge cette fonction, ou ne la prendre en charge que partiellement.

Cette fonction a été introduite dans Qt 6.8.

Voir également createDevice().

QList<QCanBusDeviceInfo> QCanBus::availableDevices(const QString &plugin, QString *errorMessage = nullptr) const

Renvoie les interfaces disponibles pour plugin. En cas d'échec, le paramètre facultatif errorMessage renvoie une description textuelle de l'erreur.

Remarque : certains plugins peuvent ne pas prendre en charge cette fonction, ou ne la prendre en charge que partiellement.

Par exemple, l'appel suivant renvoie une liste de toutes les interfaces SocketCAN disponibles (pouvant être utilisées pour ` createDevice()`) :

QString errorString;
const QList<QCanBusDeviceInfo> devices = QCanBus::instance()->availableDevices(
    QStringLiteral("socketcan"), &errorString);
if (!errorString.isEmpty())
    qDebug() << errorString;

Voir également createDevice().

QCanBusDevice *QCanBus::createDevice(const QString &plugin, const QString &interfaceName, QString *errorMessage = nullptr) const

Crée un périphérique CAN. ` plugin ` est le nom du plugin tel qu'il est renvoyé par la méthode ` plugins()`. ` interfaceName ` est le nom de l'interface CAN. En cas d'échec, le paramètre facultatif ` errorMessage ` renvoie une description textuelle de l'erreur.

La propriété du plugin renvoyé est transférée à l’appelant. Renvoie nullptr si aucun périphérique approprié n’est trouvé.

Par exemple, l'appel suivant permettrait de se connecter à l'interface SocketCAN vcan0 :

QString errorString ;
QCanBusDevice*device = QCanBus::instance()->createDevice(
    QStringLiteral("socketcan"), QStringLiteral("vcan0"), &errorString);
if (!device)
    qDebug() << errorString;
sinon
    device->connectDevice();

Remarque : la fonction ` interfaceName ` dépend du plugin utilisé. Pour plus d’informations, consultez la documentation du plugin correspondant : Plugins CAN Bus. Pour obtenir la liste des interfaces disponibles, vous pouvez utiliser la fonction ` availableDevices()`.

Voir également availableDevices().

[static] QCanBus *QCanBus::instance()

Renvoie un pointeur vers la classe ` QCanBus `. L'objet est chargé si nécessaire. ` QCanBus ` utilise le modèle de conception « singleton ».

QStringList QCanBus::plugins() const

Renvoie une liste des identifiants de tous les plugins chargés.

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