ffmpeg | branch: master | Shubhanshu Saxena <shubhanshu....@gmail.com> | Mon Apr 26 13:42:09 2021 +0530| [4b79416dc4d7015d91778e7e218dcece6d408594] | committer: Guo, Yejun
lavfi/dnn/queue.h: Add Documentation to Queue Documentation for Queue Signed-off-by: Shubhanshu Saxena <shubhanshu....@gmail.com> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4b79416dc4d7015d91778e7e218dcece6d408594 --- libavfilter/dnn/queue.h | 75 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) diff --git a/libavfilter/dnn/queue.h b/libavfilter/dnn/queue.h index 4d7121366a..2524d5fa59 100644 --- a/libavfilter/dnn/queue.h +++ b/libavfilter/dnn/queue.h @@ -22,20 +22,95 @@ #ifndef AVFILTER_DNN_QUEUE_H #define AVFILTER_DNN_QUEUE_H +/** + * Linear double-ended data structure + */ typedef struct Queue Queue; +/** + * @brief Create a Queue instance. + * It initializes the length of the Queue as 0. + * + * @return Pointer to the Queue + * @retval NULL if allocation fails + */ Queue *ff_queue_create(void); + +/** + * @brief Destroy the Queue instance. + * It also frees all elements of the Queue. + */ void ff_queue_destroy(Queue *q); +/** + * @brief Return the length of the Queue + */ size_t ff_queue_size(Queue *q); +/** + * @brief Return a pointer to the data + * at the head of the queue. + * + * @retval NULL if null pointer was passed + * or queue is empty + */ void *ff_queue_peek_front(Queue *q); + +/** + * @brief Return a pointer to the data at + * the tail of the queue. + * + * @retval NULL if null pointer was passed + * or queue is empty + */ void *ff_queue_peek_back(Queue *q); +/** + * @brief Add data to the head of the queue. + * It increases the length of Queue by one. + * + * @param q pointer to the Queue. + * @param v data to be added + * @return The length of the Queue + * @retval 0 if the pointer to queue is NULL + * @retval -1 if new entry cannot be created + */ int ff_queue_push_front(Queue *q, void *v); + +/** + * @brief Add data to the tail of the queue. + * It increases the length of Queue by one. + * + * @param q pointer to the Queue + * @param v data to be added + * @return The length of the Queue + * @retval 0 if the pointer to queue is NULL + * @retval -1 if new entry cannot be created + */ int ff_queue_push_back(Queue *q, void *v); +/** + * @brief Remove and free first element from + * the Queue. It shrinks the length of Queue + * by one. + * + * @param q pointer to the Queue. + * @return The value of first element as void. + * If a null pointer or empty queue is passed, + * it returns NULL + */ void *ff_queue_pop_front(Queue *q); + +/** + * @brief Remove and free last element from + * the Queue. It shrinks the length of Queue + * by one. + * + * @param q pointer to the Queue. + * @return The value of last element as void. + * If a null pointer or empty queue is passed, + * it returns NULL + */ void *ff_queue_pop_back(Queue *q); #endif _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".