#ifndef AD_PROJECT_H
#define AD_PROJECT_H

#include <stdint.h>

typedef struct
{
    uint8_t initialized;
    uint8_t board_initialized;
    uint8_t inverter_initialized;
    uint8_t simulink_initialized;
    uint8_t modbus_initialized;
    uint8_t binary_transport_initialized;
    uint8_t outputs_allowed_by_build;
    uint32_t param_id_status;
    uint32_t param_id_faults;
} AD_ProjectState_t;

void AD_Project_Init(void);
void AD_Project_Loop(void);
void AD_Project_EmergencyStop(uint32_t fault_flags);
const AD_ProjectState_t* AD_Project_GetState(void);

#endif
