summaryrefslogtreecommitdiffstats
path: root/src/plugins/canbus/virtualcan
diff options
context:
space:
mode:
authorAndre Hartmann <aha_1980@gmx.de>2021-07-27 17:41:27 +0200
committerAndré Hartmann <aha_1980@gmx.de>2021-08-05 13:27:46 +0000
commita9a7ffb5a97f254a57591e69c3e24212d1743cf4 (patch)
tree5384b946019a304fbe6361399584699ce2f10234 /src/plugins/canbus/virtualcan
parent8c8b0c4cdabca6917a35daf75a799b8d75a18cdb (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.cpp23
-rw-r--r--src/plugins/canbus/virtualcan/virtualcanbackend.h4
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();