XPoint 0.1.0
Hardware-agnostic crosspoint matrix routing library
Loading...
Searching...
No Matches
XPointDriver.h File Reference

Abstract hardware driver interface for the XPoint crosspoint matrix. More...

#include <stdint.h>

Go to the source code of this file.

Classes

class  XPointDriver
 Abstract base class for all XPoint hardware drivers. More...
 

Detailed Description

Abstract hardware driver interface for the XPoint crosspoint matrix.

Derive from XPointDriver to plug any hardware backend into XPoint:

Minimum implementation: override begin() and setNodeHardware(). setNodeLevel(), releaseNode(), and commitPhysicalUpdates() have safe defaults so simple binary drivers require no extra code.

Dual-coil latching relay protocol (RE_LATCHING_DUAL_COIL):

setNodeHardware(r, c, true) // energize SET coil — relay closes
setNodeHardware(r, c, false) // energize RESET coil — relay opens
releaseNode(r, c) // de-energize coil — called by XPoint::update()
commitPhysicalUpdates() // flush state — called after every operation