Files

61 lines
1.4 KiB
C
Raw Permalink Normal View History

2025-09-22 21:40:13 +08:00
// data_queue.h
#ifndef DATA_QUEUE_H
#define DATA_QUEUE_H
#include <stdint.h>
#include <stddef.h>
// 队列句柄(不透明指针)
typedef struct Data_Queue* QueueHandle_t;
/**
* @brief
* @param length:
* @return NULL
*/
QueueHandle_t queue_create(size_t length);
/**
* @brief
* @param Data_Queue:
*/
void queue_destroy(QueueHandle_t Data_Queue);
/**
* @brief Push
* @param Data_Queue:
* @param item:
* @return 0=-1=
*/
int queue_push(QueueHandle_t Data_Queue, float item);
/**
* @brief Pop
* @param Data_Queue:
* @param item:
* @return 0=-1=
*/
int queue_pop(QueueHandle_t Data_Queue, float *item);
/**
* @brief
* @param Data_Queue:
* @return 0.0
*/
double queue_average(QueueHandle_t Data_Queue);
/**
* @brief
*/
size_t queue_size(QueueHandle_t Data_Queue);
/**
* @brief
*/
size_t queue_capacity(QueueHandle_t Data_Queue);
extern QueueHandle_t global_voltage_queue;
extern QueueHandle_t global_current_queue;
#endif // DATA_QUEUE_H