45#ifndef PROTOCORE_SAFETY_SCL_H
46#define PROTOCORE_SAFETY_SCL_H
50#if PC_ENABLE_SAFETY_SCL
55enum class SclState : uint8_t
63enum class SclFault : uint8_t
97void pc_scl_init(SclConn *c, uint32_t first_counter, uint32_t counter_mod, uint32_t watchdog_ms, uint32_t now);
117bool pc_scl_on_frame(SclConn *c,
bool signature_ok, uint32_t counter, uint32_t now);
128bool pc_scl_poll(SclConn *c, uint32_t now);
136void pc_scl_reset(SclConn *c, uint32_t first_counter, uint32_t now);
139bool pc_scl_ok(
const SclConn *c);
142SclState pc_scl_state(
const SclConn *c);
145SclFault pc_scl_fault(
const SclConn *c);
155uint32_t pc_scl_next_counter(uint32_t counter, uint32_t counter_mod);
User-facing configuration for ProtoCore.