QCanBus#
The QCanBus
class handles registration and creation of bus plugins. More…
Synopsis#
Functions#
def
availableDevices
(plugin)def
createDevice
(plugin, interfaceName)def
plugins
()
Static functions#
def
instance
()
Note
This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE
Detailed Description#
QCanBus
loads Qt CAN Bus plugins at runtime. The ownership of serial bus plugins is transferred to the loader.
- class PySide6.QtSerialBus.QCanBus#
- PySide6.QtSerialBus.QCanBus.availableDevices(plugin)#
- Parameters:
plugin – str
- Return type:
tuple
Returns the available interfaces for plugin
. In case of failure, the optional parameter errorMessage
returns a textual error description.
Note
Some plugins might not or only partially support this function.
For example, the following call returns a list of all available SocketCAN interfaces (which can be used for createDevice()
):
QString errorString; const QList<QCanBusDeviceInfo> devices = QCanBus::instance()->availableDevices( QStringLiteral("socketcan"), &errorString); if (!errorString.isEmpty()) qDebug() << errorString;See also
The function returns a tuple of (device_list, error_string).
- PySide6.QtSerialBus.QCanBus.createDevice(plugin, interfaceName)#
- Parameters:
plugin – str
interfaceName – str
- Return type:
tuple
Creates a CAN bus device. plugin
is the name of the plugin as returned by the plugins()
method. interfaceName
is the CAN bus interface name. In case of failure, the optional parameter errorMessage
returns a textual error description.
Ownership of the returned plugin is transferred to the caller. Returns nullptr
if no suitable device can be found.
For example, the following call would connect to the SocketCAN interface vcan0:
QString errorString; QCanBusDevice *device = QCanBus::instance()->createDevice( QStringLiteral("socketcan"), QStringLiteral("vcan0"), &errorString); if (!device) qDebug() << errorString; else device->connectDevice();
Note
The interfaceName
is plugin-dependent. See the corresponding plugin documentation for more information: CAN Bus Plugins . To get a list of available interfaces, availableDevices()
can be used.
See also
The function returns a tuple of (device, error_string).
- static PySide6.QtSerialBus.QCanBus.instance()#
- Return type:
Returns a pointer to the QCanBus
class. The object is loaded if necessary. QCanBus
uses the singleton design pattern.
- PySide6.QtSerialBus.QCanBus.plugins()#
- Return type:
list of strings
Returns a list of identifiers for all loaded plugins.