Skip to content

Figures

Every figure on this site is drawn by a Python module from facts extracted from the code, so it is rebuilt, not redrawn, when the code changes. CI runs hardfoc-docs figures --check and fails when a committed figure no longer matches the code. Each figure below lists the files it is drawn from.

Three layers, one of them yours

Layer diagram: the application calls VortexHostSession, which encodes NMT and expedited SDO frames and passes them to the VortexCanTransport interface, which your transport implements with BaseCan, SocketCAN or a loopback, which sends them on the CAN bus to the Vortex device.Layer diagram: the application calls VortexHostSession, which encodes NMT and expedited SDO frames and passes them to the VortexCanTransport interface, which your transport implements with BaseCan, SocketCAN or a loopback, which sends them on the CAN bus to the Vortex device.
Three layers, one of them yours
Figure description and sources

From top to bottom. Your application calls a VortexHostSession (its public methods are listed from inc/vortex/VortexHostSession.hpp). The session encodes CANopen NMT and expedited SDO download frames as VortexCanFrame values and hands each to the VortexCanTransport interface (its pure-virtual methods are listed from inc/vortex/VortexCanTransport.hpp). Your transport class implements that interface with BaseCan, SocketCAN or a test loopback, and puts the frame on a classic CAN bus. The Vortex device on the bus is the CANopen server.

Drawn from: inc/vortex/VortexHostSession.hpp VortexHostSession; inc/vortex/VortexCanTransport.hpp VortexCanTransport; inc/vortex/VortexProtocol.hpp NmtCommand; figure module docs/diagrams/figures/driver-layers.py.

Figure module: docs/diagrams/figures/driver-layers.py

Drawn from: