diff options
author | Andre Hartmann <aha_1980@gmx.de> | 2021-07-27 17:41:27 +0200 |
---|---|---|
committer | André Hartmann <aha_1980@gmx.de> | 2021-08-05 13:27:46 +0000 |
commit | a9a7ffb5a97f254a57591e69c3e24212d1743cf4 (patch) | |
tree | 5384b946019a304fbe6361399584699ce2f10234 /src/plugins/canbus/virtualcan | |
parent | 8c8b0c4cdabca6917a35daf75a799b8d75a18cdb (diff) |
CAN: Implement QCanBusDevice::deviceInfo() in the plugins
* PasstruCAN: Untested
* PeakCAN: Tested on Windows with PCAN-USB Pro FD.
* SocketCAN: Tested on Linux with virtual and real hardware.
* SystecCAN: Tested on Windows with USBcanmodul2.
* TinyCAN: Untested
* VectorCAN: Tested with the virtual Vector interface.
* VirtualCAN: Tested on Windows and Linux.
Pick-to: 6.2
Change-Id: I3836a81a9cb1570a22b6264b34fca88ccc0ab57e
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Diffstat (limited to 'src/plugins/canbus/virtualcan')
-rw-r--r-- | src/plugins/canbus/virtualcan/virtualcanbackend.cpp | 23 | ||||
-rw-r--r-- | src/plugins/canbus/virtualcan/virtualcanbackend.h | 4 |
2 files changed, 20 insertions, 7 deletions
diff --git a/src/plugins/canbus/virtualcan/virtualcanbackend.cpp b/src/plugins/canbus/virtualcan/virtualcanbackend.cpp index 4e02c7d..62f0bd4 100644 --- a/src/plugins/canbus/virtualcan/virtualcanbackend.cpp +++ b/src/plugins/canbus/virtualcan/virtualcanbackend.cpp @@ -300,21 +300,30 @@ QString VirtualCanBackend::interpretErrorFrame(const QCanBusFrame &errorFrame) return QString(); } +QCanBusDeviceInfo VirtualCanBackend::virtualCanDeviceInfo(uint channel) +{ + return createDeviceInfo( + QStringLiteral("virtualcan"), + QStringLiteral("can%1").arg(channel), QString(), + QStringLiteral("Qt Virtual CAN bus"), QString(), + channel, true, true); +} + QList<QCanBusDeviceInfo> VirtualCanBackend::interfaces() { QList<QCanBusDeviceInfo> result; - for (int channel = 0; channel < VirtualChannels; ++channel) { - result.append(createDeviceInfo( - QStringLiteral("virtualcan"), - QStringLiteral("can%1").arg(channel), QString(), - QStringLiteral("Qt Virtual CAN bus"), QString(), - channel, true, true)); - } + for (uint channel = 0; channel < VirtualChannels; ++channel) + result.append(virtualCanDeviceInfo(channel)); return result; } +QCanBusDeviceInfo VirtualCanBackend::deviceInfo() const +{ + return virtualCanDeviceInfo(m_channel); +} + void VirtualCanBackend::clientConnected() { qCInfo(QT_CANBUS_PLUGINS_VIRTUALCAN, "Client [%p] socket connected.", this); diff --git a/src/plugins/canbus/virtualcan/virtualcanbackend.h b/src/plugins/canbus/virtualcan/virtualcanbackend.h index 0d908ca..ea4e7da 100644 --- a/src/plugins/canbus/virtualcan/virtualcanbackend.h +++ b/src/plugins/canbus/virtualcan/virtualcanbackend.h @@ -90,7 +90,11 @@ public: static QList<QCanBusDeviceInfo> interfaces(); + QCanBusDeviceInfo deviceInfo() const override; + private: + static QCanBusDeviceInfo virtualCanDeviceInfo(uint channel); + void clientConnected(); void clientDisconnected(); void clientReadyRead(); |