45 lines
913 B
C
45 lines
913 B
C
/*
|
|
* mymidififo.h
|
|
*
|
|
* Created on: Jun 12, 2025
|
|
* Author: 19120
|
|
*/
|
|
|
|
#ifndef BT_AUDIO_APP_SRC_MYCODE_MYMIDIFIFO1_H_
|
|
#define BT_AUDIO_APP_SRC_MYCODE_MYMIDIFIFO1_H_
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include <stdint.h>
|
|
|
|
#define MIDI_FIFO_MAX_LEN 256
|
|
|
|
typedef struct {
|
|
uint8_t msg[4];
|
|
uint8_t msglen;
|
|
uint16_t delayCounter;
|
|
} MidiFifoItem_t;
|
|
|
|
typedef struct {
|
|
MidiFifoItem_t frame[MIDI_FIFO_MAX_LEN];
|
|
int front;
|
|
int rear;
|
|
} MidiFifoSeq_t;
|
|
|
|
void mymidififo_init(MidiFifoSeq_t *rb);
|
|
int mymidififo_InQueue(MidiFifoSeq_t *rb,MidiFifoItem_t* pFrame);
|
|
MidiFifoItem_t* mymidififo_DeQueue(MidiFifoSeq_t *rb);
|
|
MidiFifoItem_t* mymidififo_TryDeQueue(MidiFifoSeq_t *rb);
|
|
|
|
int mymidififo_GetQueueLength(MidiFifoSeq_t *rb);
|
|
int mymidififo_IsQueueFull(MidiFifoSeq_t *rb);
|
|
int mymidififo_IsQueueEmpty(MidiFifoSeq_t *rb);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* BT_AUDIO_APP_SRC_MYCODE_MYMIDIFIFO_H_ */
|