Functions
dtdisplay_linux_sdl SDL2 display backend for the dtdisplay raster interface.
Implements the dtdisplay vtable using SDL2, opening a titled window of configurable pixel dimensions and blitting dtraster frames to it. An optional join semaphore lets the owning task block until the SDL event loop exits. Compatible raster buffers are created in the display's native pixel format through the standard dtdisplay_create_compatible_raster path, so rendering code is unchanged when the backend is swapped.
dthttpd_linux_socket POSIX socket HTTP server backend for the dthttpd interface.
Implements the dthttpd vtable using POSIX sockets and the dttasker thread model. An accept task listens on a configurable host and port; per-connection child tasks serve static files from one or more filesystem roots for GET requests and deliver POST payloads to an application callback that returns a heap-allocated response. Concurrency limits, stack sizes, and scheduler priorities for both accept and child tasks are exposed through dthttpd_linux_socket_config_t.
dtiox_linux_canbus Linux SocketCAN backend for the dtiox byte-stream interface.
Implements the dtiox vtable over a Linux SocketCAN network interface (e.g. "can0"), providing non-blocking read and write of raw CAN frames via a configurable 11-bit TX identifier and an internal RX ring buffer. Application code accesses the channel through the platform-agnostic dtiox_handle, leaving CAN-specific configuration isolated in the dtiox_linux_canbus_config_t struct.
dtiox_linux_modbus_rtu_master Modbus RTU master backend for the dtiox interface.
Wraps libmodbus in RTU mode behind the dtiox vtable, communicating with a serial Modbus slave over a Linux tty device. Configuration covers baud rate and framing via dtuart_helper_config_t, slave ID, poll interval, per-call response and inter-byte timeouts, RS-485 mode, and RTS toggling for hardware direction control. Large payloads can be sent in chunks when partial-write retries are enabled.
dtmc_linux_library/include/dtmc/dtiox_linux_modbus_rtu_master.h
dtiox_linux_modbus_tcp_master Modbus TCP master backend for the dtiox interface.
Wraps libmodbus in client mode behind the dtiox vtable, connecting to a remote Modbus TCP slave by hostname and port. A background polling thread handles register reads; configurable unit ID, poll interval, response timeout, and RX FIFO size let the caller tune throughput and reliability without touching the transport-agnostic dtiox call sites.
dtmc_linux_library/include/dtmc/dtiox_linux_modbus_tcp_master.h
dtiox_linux_modbus_tcp_slave Modbus TCP slave backend for the dtiox interface.
Wraps libmodbus in server mode behind the dtiox vtable, listening on a configurable TCP port. Incoming Modbus register traffic is presented as a byte stream through the standard dtiox read/write path, with an internal RX FIFO whose depth and response timeout are set at configuration time.
dtmc_linux_library/include/dtmc/dtiox_linux_modbus_tcp_slave.h
dtiox_linux_tcp Linux TCP client/server backend for the dtiox interface.
Implements the dtiox vtable over a POSIX TCP socket, operating in either client (outbound connect) or server (listen/accept) mode selected at configuration time. Tunable options include Nagle disabling, keepalive, connect and accept timeouts, and RX FIFO capacity, all isolated in dtiox_linux_tcp_config_t so transport code is unchanged when the underlying connection mode changes.
dtiox_linux_tty Linux TTY serial backend for the dtiox interface.
Implements the dtiox vtable for a POSIX serial port, applying baud rate, parity, data bits, stop bits, and flow control through the shared dtuart_helper_config_t. A configurable RX FIFO and an optional tasker info callback provide buffering and runtime diagnostics. The same dtiox_handle abstraction lets callers swap the TTY backend for Modbus, CAN, or TCP without modifying surrounding I/O logic.
dtiox_linux_websocket Linux WebSocket server backend for the dtiox interface.
Implements the dtiox vtable over an HTTP-upgrade WebSocket listener. The server accepts a single client connection per attach cycle, performs the WebSocket handshake within a configurable timeout, then exposes the framed stream through the standard dtiox read/write path. TCP keepalive and Nagle options are configurable. A minimal dtobject-style identity API supports logging and equality comparisons.
dtmc Canonical top-level include for the Linux platform library.
Re-exports the full dtmc_linux interface under the platform-agnostic
name
dtmc_linux Linux platform entry point for the dtmc embedded framework.
Declares the platform flavor and version strings, a QEMU environment detector, diagnostic helpers that print environment and task state to stdout, an error-log iterator compatible with dterr_each, and the task-registry entry point that wires all Linux-specific tasks into the dttasker_registry at startup.
dtnetportal_coap CoAP network portal backend for the dtnetportal interface.
Implements the dtnetportal vtable using CoAP, binding a local UDP listener on a configurable host and port. Configuration includes optional upstream publish target, client identity, TLS certificate paths, and an IO-loop processing timeout. Subscribe callbacks deliver topic payloads to application code through the common dtnetportal receive callback signature, keeping CoAP transport details out of application logic.
dtnetportal_mosquitto MQTT backend for the dtnetportal interface via libmosquitto.
Implements the dtnetportal vtable over an MQTT broker connection managed by libmosquitto. Configuration covers broker host, port, keepalive interval, optional client identity and credentials, clean-session flag, and mutual-TLS certificate paths. Application code publishes and subscribes through the transport-agnostic dtnetportal_handle, leaving all MQTT-specific concerns inside this backend.
dtnvblob_linux_file Linux file-based backend for the dtnvblob persistent storage interface.
Implements the dtnvblob vtable by reading and writing an opaque binary blob to a named file on the local filesystem. The single configuration field is the file path. The backend satisfies the same read/write/dispose contract as flash or NVS backends on embedded targets, making it useful for development and testing on Linux without dedicated hardware.
dtsha1 Standalone SHA-1 digest with incremental and one-shot APIs.
Provides init, update, and final functions over a small context struct for incremental hashing of arbitrarily sized inputs, plus a convenience one-shot helper for single-buffer inputs. Produces a 20-byte digest. Written without external dependencies for portability across embedded and hosted targets; used internally for WebSocket handshake key computation.
dtmc_linux Library flavor and version identification macros.
Provides DTMC_LINUX_VERSION string constants that identify the library build at runtime. Used by dtruntime and diagnostic routines to report the active library variant in environment tables and log output.
This file is processed by tooling in the automated build system. It's important to maintain the structure and formatting of the version macros for compatibility with version parsing scripts.