Files
luban-lite-t3e-pro/packages/artinchip/mpp/base/include/mpp_ringbuf.h
刘可亮 661e71562d v1.1.1
2024-10-30 16:50:31 +08:00

34 lines
762 B
C

/*
* Copyright (c) 2022-2024, ArtInChip Technology Co., Ltd
*
* SPDX-License-Identifier: Apache-2.0
*
* Author: <che.jiang@artinchip.com>
* Desc: mpp ringbuf interface
*/
#ifndef MPP_RINGBUF_H
#define MPP_RINGBUF_H
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
typedef void *mpp_ringbuf_t;
mpp_ringbuf_t mpp_ringbuffer_create(int length);
void mpp_ringbuffer_destroy(mpp_ringbuf_t rb);
void mpp_ringbuffer_reset(mpp_ringbuf_t rb);
int mpp_ringbuffer_put(mpp_ringbuf_t rb, const unsigned char *ptr, int length);
int mpp_ringbuffer_get(mpp_ringbuf_t rb, unsigned char *ptr, int length);
int mpp_ringbuffer_data_len(mpp_ringbuf_t rb);
int mpp_ringbuffer_space_len(mpp_ringbuf_t rb);
#ifdef __cplusplus
}
#endif
#endif /* MPP_RINGBUF_H */