From 5aaeaa28e782647843570f01b4661a65ff3aa376 Mon Sep 17 00:00:00 2001 From: Kamil Debski Date: Tue, 6 Mar 2012 10:33:02 +0100 Subject: v4l-mfc-example: version 0.1 --- v4l2-mfc-example/queue.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 v4l2-mfc-example/queue.h (limited to 'v4l2-mfc-example/queue.h') diff --git a/v4l2-mfc-example/queue.h b/v4l2-mfc-example/queue.h new file mode 100644 index 0000000..963cf90 --- /dev/null +++ b/v4l2-mfc-example/queue.h @@ -0,0 +1,47 @@ +/* + * V4L2 Codec decoding example application + * Kamil Debski + * + * Queue handling header file + * + * Copyright 2012 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +#ifndef INCLUDE_QUEUE_H +#define INCLUDE_QUEUE_H + +#include + +struct queue { + int size; + int head; + int tail; + int n; + int *q; + pthread_mutex_t mutex; +}; + +/* Initialize queue and allocate memory */ +int queue_init(struct queue *q, int size); +/* Add an element to the queue */ +int queue_add(struct queue *q, int e); +/* Remove the element form queue */ +int queue_remove(struct queue *q); +/* Free the internal queue memory */ +void queue_free(struct queue *q); + +#endif /* INCLUDE_QUEUE_H */ + -- cgit v1.2.3