Spec-Zone.ru › Qt 5.9

Класс QCanBus

Класс QCanBus отвечает за регистрацию и создание плагинов шины. Подробнее...

Заголовок: #include <QCanBus>
qmake: QT += serialbus
С момента: Qt 5.8
Наследует: QObject
  • Список всех членов, включая унаследованные члены

Открытые функции

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
  • 32 открытых функции унаследованы от QObject

Статические открытые члены

QCanBus * instance()
  • 11 статических открытых членов унаследованы от QObject

Дополнительные унаследованные члены

  • 1 свойство унаследовано от QObject
  • 1 открытый слот унаследован от QObject
  • 2 сигнала унаследованы от QObject
  • 9 защищенных функций унаследованы от QObject

Подробное описание

Класс QCanBus отвечает за регистрацию и создание плагинов шины.

QCanBus загружает плагины Qt CAN Bus во время выполнения. Владение плагинами шины передачи данных передаётся загрузчику.

Документация по функциям-членам

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

Возвращает доступные интерфейсы для plugin. В случае ошибки необязательный параметр errorMessage возвращает текстовое описание ошибки.

Примечание: Некоторые плагины могут не поддерживать или частично поддерживать эту функцию.

Например, следующий вызов возвращает список всех доступных интерфейсов SocketCAN (которые могут быть использованы для createDevice()):

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

Эта функция была добавлена в Qt 5.9.

См. также createDevice().

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

Создаёт устройство шины CAN. plugin — имя плагина, возвращённое методом plugins(). interfaceName — имя интерфейса шины CAN. В случае ошибки необязательный параметр errorMessage возвращает текстовое описание ошибки.

Владение возвращаемым плагином передаётся вызывающей стороне. Возвращает nullptr если подходящее устройство не найдено.

Например, следующий вызов подключится к интерфейсу SocketCAN vcan0:

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

Примечание: interfaceName зависит от плагина. Для получения дополнительной информации см. соответствующую документацию плагина: Плагины шины CAN. Для получения списка доступных интерфейсов можно использовать availableDevices().

См. также availableDevices().

[static] QCanBus *QCanBus::instance()

Возвращает указатель на класс QCanBus. Объект загружается при необходимости. QCanBus использует шаблон проектирования "синглтон".

QStringList QCanBus::plugins() const

Возвращает список идентификаторов всех загруженных плагинов.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qcanbus.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API