Files
AI_Printer/components/control_plane/include/control_plane.h

35 lines
873 B
C

#pragma once
#include <stdint.h>
#include "esp_err.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef enum {
CONTROL_PLANE_LIFECYCLE_STATE_STOPPED = 0,
CONTROL_PLANE_LIFECYCLE_STATE_STARTING,
CONTROL_PLANE_LIFECYCLE_STATE_RUNNING,
CONTROL_PLANE_LIFECYCLE_STATE_DEGRADED,
CONTROL_PLANE_LIFECYCLE_STATE_STOPPING,
} control_plane_lifecycle_state_t;
typedef struct {
control_plane_lifecycle_state_t state;
esp_err_t last_error;
uint32_t start_attempt;
int64_t last_transition_ms;
char last_stage[32];
} control_plane_lifecycle_status_t;
esp_err_t control_plane_lifecycle_start(void);
esp_err_t control_plane_lifecycle_stop(void);
void control_plane_lifecycle_get_status(control_plane_lifecycle_status_t *out_status);
const char *control_plane_lifecycle_state_str(control_plane_lifecycle_state_t state);
#ifdef __cplusplus
}
#endif