diff --git a/services/framecache/src/slot.h b/services/framecache/src/slot.h index 32ee54f..a1bfde0 100644 --- a/services/framecache/src/slot.h +++ b/services/framecache/src/slot.h @@ -68,6 +68,19 @@ typedef struct { _Static_assert(sizeof(fc_frame_t) == FC_FRAME_HDR_SIZE, "fc_frame_t header must be exactly FC_FRAME_HDR_SIZE bytes"); +/* Function declarations */ +struct fc_slot *fc_slot_create(const char *slot_id, + uint32_t width, uint32_t height, + uint32_t fps_num, uint32_t fps_den, + uint32_t pixel_format, + const char *source_type); +void fc_slot_destroy(struct fc_slot *s); +struct fc_slot *fc_slot_open(const char *slot_id); +void fc_slot_close(struct fc_slot *s); +void fc_slot_write_frame(struct fc_slot *s, + const uint8_t *data, uint32_t size, + uint64_t pts_us); + /* Accessor functions — inline now that struct fc_slot is defined above */ static inline fc_header_t *fc_slot_header(struct fc_slot *s) { return (fc_header_t *)s->base; } static inline const char *fc_slot_id(struct fc_slot *s) { return s->slot_id; }