User Documentation

This module provides two classes.

  • SafeIo monitors configuration registers of safety relevant IOs.

  • SafeState provides methods to enter and leave a safe state for safety relevant IOs.

Public API

include/safeIo/SafeIo.h
/**
 * Initializes the SafeIo.
 *
 * This function must be called once before the first call to cyclic().
 * It locks the configuration of safety relevant IO registers.
 * In case of a detected error, it sends an event to the SafeSupervisor.
 */
void init();

/**
 * Cyclically checks the configuration of safety relevant IO registers.
 *
 * This function must be called cyclically.
 * In case of a detected error, it sends an event to the SafeSupervisor.
 */
void cyclic();
include/safeIo/SafeState.h
/**
 * Sets IOs into a safe state, e.g by disabling outputs.
 */
static void enterSafeState();

/**
 * Re-enables IOs.
 */
static void leaveSafeState();