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¶
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:
VortexHostSessionininc/vortex/VortexHostSession.hppVortexCanTransportininc/vortex/VortexCanTransport.hppNmtCommandininc/vortex/VortexProtocol.hpp