dnn: fix redefining typedefs and also refine naming with correct prefix

The prefix for symbols not exported from the library and not
local to one translation unit is ff_ (or FF for types).

Signed-off-by: Guo, Yejun <yejun.guo@intel.com>
This commit is contained in:
Guo, Yejun 2020-12-30 09:37:14 +08:00
parent 53c56585a6
commit 8e78d5d394
5 changed files with 83 additions and 83 deletions

View File

@ -53,8 +53,8 @@ typedef struct OVModel{
ie_infer_request_t *infer_request; ie_infer_request_t *infer_request;
/* for async execution */ /* for async execution */
safe_queue *request_queue; // holds RequestItem FFSafeQueue *request_queue; // holds RequestItem
queue *task_queue; // holds TaskItem FFQueue *task_queue; // holds TaskItem
} OVModel; } OVModel;
typedef struct TaskItem { typedef struct TaskItem {
@ -208,7 +208,7 @@ static void infer_completion_callback(void *args)
if (task->async) { if (task->async) {
request->task = NULL; request->task = NULL;
safe_queue_push_back(task->ov_model->request_queue, request); ff_safe_queue_push_back(task->ov_model->request_queue, request);
} }
task->done = 1; task->done = 1;
@ -417,7 +417,7 @@ DNNModel *ff_dnn_load_model_ov(const char *model_filename, const char *options,
ctx->options.nireq = av_cpu_count() / 2 + 1; ctx->options.nireq = av_cpu_count() / 2 + 1;
} }
ov_model->request_queue = safe_queue_create(); ov_model->request_queue = ff_safe_queue_create();
if (!ov_model->request_queue) { if (!ov_model->request_queue) {
goto err; goto err;
} }
@ -436,10 +436,10 @@ DNNModel *ff_dnn_load_model_ov(const char *model_filename, const char *options,
item->infer_request = request; item->infer_request = request;
item->callback.completeCallBackFunc = infer_completion_callback; item->callback.completeCallBackFunc = infer_completion_callback;
item->callback.args = item; item->callback.args = item;
safe_queue_push_back(ov_model->request_queue, item); ff_safe_queue_push_back(ov_model->request_queue, item);
} }
ov_model->task_queue = queue_create(); ov_model->task_queue = ff_queue_create();
if (!ov_model->task_queue) { if (!ov_model->task_queue) {
goto err; goto err;
} }
@ -527,9 +527,9 @@ DNNReturnType ff_dnn_execute_model_async_ov(const DNNModel *model, const char *i
task->output_name = output_names[0]; task->output_name = output_names[0];
task->out_frame = out_frame; task->out_frame = out_frame;
task->ov_model = ov_model; task->ov_model = ov_model;
queue_push_back(ov_model->task_queue, task); ff_queue_push_back(ov_model->task_queue, task);
request = safe_queue_pop_front(ov_model->request_queue); request = ff_safe_queue_pop_front(ov_model->request_queue);
if (!request) { if (!request) {
av_log(ctx, AV_LOG_ERROR, "unable to get infer request.\n"); av_log(ctx, AV_LOG_ERROR, "unable to get infer request.\n");
return DNN_ERROR; return DNN_ERROR;
@ -541,7 +541,7 @@ DNNReturnType ff_dnn_execute_model_async_ov(const DNNModel *model, const char *i
DNNAsyncStatusType ff_dnn_get_async_result_ov(const DNNModel *model, AVFrame **in, AVFrame **out) DNNAsyncStatusType ff_dnn_get_async_result_ov(const DNNModel *model, AVFrame **in, AVFrame **out)
{ {
OVModel *ov_model = (OVModel *)model->model; OVModel *ov_model = (OVModel *)model->model;
TaskItem *task = queue_peek_front(ov_model->task_queue); TaskItem *task = ff_queue_peek_front(ov_model->task_queue);
if (!task) { if (!task) {
return DAST_EMPTY_QUEUE; return DAST_EMPTY_QUEUE;
@ -553,7 +553,7 @@ DNNAsyncStatusType ff_dnn_get_async_result_ov(const DNNModel *model, AVFrame **i
*in = task->in_frame; *in = task->in_frame;
*out = task->out_frame; *out = task->out_frame;
queue_pop_front(ov_model->task_queue); ff_queue_pop_front(ov_model->task_queue);
av_freep(&task); av_freep(&task);
return DAST_SUCCESS; return DAST_SUCCESS;
@ -563,20 +563,20 @@ void ff_dnn_free_model_ov(DNNModel **model)
{ {
if (*model){ if (*model){
OVModel *ov_model = (OVModel *)(*model)->model; OVModel *ov_model = (OVModel *)(*model)->model;
while (safe_queue_size(ov_model->request_queue) != 0) { while (ff_safe_queue_size(ov_model->request_queue) != 0) {
RequestItem *item = safe_queue_pop_front(ov_model->request_queue); RequestItem *item = ff_safe_queue_pop_front(ov_model->request_queue);
if (item && item->infer_request) { if (item && item->infer_request) {
ie_infer_request_free(&item->infer_request); ie_infer_request_free(&item->infer_request);
} }
av_freep(&item); av_freep(&item);
} }
safe_queue_destroy(ov_model->request_queue); ff_safe_queue_destroy(ov_model->request_queue);
while (queue_size(ov_model->task_queue) != 0) { while (ff_queue_size(ov_model->task_queue) != 0) {
TaskItem *item = queue_pop_front(ov_model->task_queue); TaskItem *item = ff_queue_pop_front(ov_model->task_queue);
av_freep(&item); av_freep(&item);
} }
queue_destroy(ov_model->task_queue); ff_queue_destroy(ov_model->task_queue);
if (ov_model->infer_request) if (ov_model->infer_request)
ie_infer_request_free(&ov_model->infer_request); ie_infer_request_free(&ov_model->infer_request);

View File

@ -23,31 +23,31 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/avassert.h" #include "libavutil/avassert.h"
typedef struct _queue_entry queue_entry; typedef struct FFQueueEntry FFQueueEntry;
typedef struct _queue { struct FFQueueEntry {
queue_entry *head;
queue_entry *tail;
size_t length;
}queue;
typedef struct _queue_entry {
void *value; void *value;
queue_entry *prev; FFQueueEntry *prev;
queue_entry *next; FFQueueEntry *next;
} queue_entry; };
static inline queue_entry *create_entry(void *val) struct FFQueue {
FFQueueEntry *head;
FFQueueEntry *tail;
size_t length;
};
static inline FFQueueEntry *create_entry(void *val)
{ {
queue_entry *entry = av_malloc(sizeof(*entry)); FFQueueEntry *entry = av_malloc(sizeof(*entry));
av_assert0(entry != NULL); av_assert0(entry != NULL);
entry->value = val; entry->value = val;
return entry; return entry;
} }
queue* queue_create(void) FFQueue* ff_queue_create(void)
{ {
queue *q = av_malloc(sizeof(*q)); FFQueue *q = av_malloc(sizeof(*q));
if (!q) if (!q)
return NULL; return NULL;
@ -62,15 +62,15 @@ queue* queue_create(void)
return q; return q;
} }
void queue_destroy(queue *q) void ff_queue_destroy(FFQueue *q)
{ {
queue_entry *entry; FFQueueEntry *entry;
if (!q) if (!q)
return; return;
entry = q->head; entry = q->head;
while (entry != NULL) { while (entry != NULL) {
queue_entry *temp = entry; FFQueueEntry *temp = entry;
entry = entry->next; entry = entry->next;
av_freep(&temp); av_freep(&temp);
} }
@ -78,12 +78,12 @@ void queue_destroy(queue *q)
av_freep(&q); av_freep(&q);
} }
size_t queue_size(queue *q) size_t ff_queue_size(FFQueue *q)
{ {
return q ? q->length : 0; return q ? q->length : 0;
} }
void *queue_peek_front(queue *q) void *ff_queue_peek_front(FFQueue *q)
{ {
if (!q || q->length == 0) if (!q || q->length == 0)
return NULL; return NULL;
@ -91,7 +91,7 @@ void *queue_peek_front(queue *q)
return q->head->next->value; return q->head->next->value;
} }
void *queue_peek_back(queue *q) void *ff_queue_peek_back(FFQueue *q)
{ {
if (!q || q->length == 0) if (!q || q->length == 0)
return NULL; return NULL;
@ -99,10 +99,10 @@ void *queue_peek_back(queue *q)
return q->tail->prev->value; return q->tail->prev->value;
} }
void queue_push_front(queue *q, void *v) void ff_queue_push_front(FFQueue *q, void *v)
{ {
queue_entry *new_entry; FFQueueEntry *new_entry;
queue_entry *original_next; FFQueueEntry *original_next;
if (!q) if (!q)
return; return;
@ -116,10 +116,10 @@ void queue_push_front(queue *q, void *v)
q->length++; q->length++;
} }
void queue_push_back(queue *q, void *v) void ff_queue_push_back(FFQueue *q, void *v)
{ {
queue_entry *new_entry; FFQueueEntry *new_entry;
queue_entry *original_prev; FFQueueEntry *original_prev;
if (!q) if (!q)
return; return;
@ -133,10 +133,10 @@ void queue_push_back(queue *q, void *v)
q->length++; q->length++;
} }
void *queue_pop_front(queue *q) void *ff_queue_pop_front(FFQueue *q)
{ {
queue_entry *front; FFQueueEntry *front;
queue_entry *new_head_next; FFQueueEntry *new_head_next;
void *ret; void *ret;
if (!q || q->length == 0) if (!q || q->length == 0)
@ -154,10 +154,10 @@ void *queue_pop_front(queue *q)
return ret; return ret;
} }
void *queue_pop_back(queue *q) void *ff_queue_pop_back(FFQueue *q)
{ {
queue_entry *back; FFQueueEntry *back;
queue_entry *new_tail_prev; FFQueueEntry *new_tail_prev;
void *ret; void *ret;
if (!q || q->length == 0) if (!q || q->length == 0)

View File

@ -22,20 +22,20 @@
#ifndef AVFILTER_DNN_QUEUE_H #ifndef AVFILTER_DNN_QUEUE_H
#define AVFILTER_DNN_QUEUE_H #define AVFILTER_DNN_QUEUE_H
typedef struct _queue queue; typedef struct FFQueue FFQueue;
queue *queue_create(void); FFQueue *ff_queue_create(void);
void queue_destroy(queue *q); void ff_queue_destroy(FFQueue *q);
size_t queue_size(queue *q); size_t ff_queue_size(FFQueue *q);
void *queue_peek_front(queue *q); void *ff_queue_peek_front(FFQueue *q);
void *queue_peek_back(queue *q); void *ff_queue_peek_back(FFQueue *q);
void queue_push_front(queue *q, void *v); void ff_queue_push_front(FFQueue *q, void *v);
void queue_push_back(queue *q, void *v); void ff_queue_push_back(FFQueue *q, void *v);
void *queue_pop_front(queue *q); void *ff_queue_pop_front(FFQueue *q);
void *queue_pop_back(queue *q); void *ff_queue_pop_back(FFQueue *q);
#endif #endif

View File

@ -25,19 +25,19 @@
#include "libavutil/avassert.h" #include "libavutil/avassert.h"
#include "libavutil/thread.h" #include "libavutil/thread.h"
typedef struct _safe_queue { struct FFSafeQueue {
queue *q; FFQueue *q;
pthread_mutex_t mutex; pthread_mutex_t mutex;
pthread_cond_t cond; pthread_cond_t cond;
}safe_queue; };
safe_queue *safe_queue_create(void) FFSafeQueue *ff_safe_queue_create(void)
{ {
safe_queue *sq = av_malloc(sizeof(*sq)); FFSafeQueue *sq = av_malloc(sizeof(*sq));
if (!sq) if (!sq)
return NULL; return NULL;
sq->q = queue_create(); sq->q = ff_queue_create();
if (!sq->q) if (!sq->q)
return NULL; return NULL;
@ -46,46 +46,46 @@ safe_queue *safe_queue_create(void)
return sq; return sq;
} }
void safe_queue_destroy(safe_queue *sq) void ff_safe_queue_destroy(FFSafeQueue *sq)
{ {
if (!sq) if (!sq)
return; return;
queue_destroy(sq->q); ff_queue_destroy(sq->q);
pthread_mutex_destroy(&sq->mutex); pthread_mutex_destroy(&sq->mutex);
pthread_cond_destroy(&sq->cond); pthread_cond_destroy(&sq->cond);
av_freep(&sq); av_freep(&sq);
} }
size_t safe_queue_size(safe_queue *sq) size_t ff_safe_queue_size(FFSafeQueue *sq)
{ {
return sq ? queue_size(sq->q) : 0; return sq ? ff_queue_size(sq->q) : 0;
} }
void safe_queue_push_front(safe_queue *sq, void *v) void ff_safe_queue_push_front(FFSafeQueue *sq, void *v)
{ {
pthread_mutex_lock(&sq->mutex); pthread_mutex_lock(&sq->mutex);
queue_push_front(sq->q, v); ff_queue_push_front(sq->q, v);
pthread_cond_signal(&sq->cond); pthread_cond_signal(&sq->cond);
pthread_mutex_unlock(&sq->mutex); pthread_mutex_unlock(&sq->mutex);
} }
void safe_queue_push_back(safe_queue *sq, void *v) void ff_safe_queue_push_back(FFSafeQueue *sq, void *v)
{ {
pthread_mutex_lock(&sq->mutex); pthread_mutex_lock(&sq->mutex);
queue_push_back(sq->q, v); ff_queue_push_back(sq->q, v);
pthread_cond_signal(&sq->cond); pthread_cond_signal(&sq->cond);
pthread_mutex_unlock(&sq->mutex); pthread_mutex_unlock(&sq->mutex);
} }
void *safe_queue_pop_front(safe_queue *sq) void *ff_safe_queue_pop_front(FFSafeQueue *sq)
{ {
void *value; void *value;
pthread_mutex_lock(&sq->mutex); pthread_mutex_lock(&sq->mutex);
while (queue_size(sq->q) == 0) { while (ff_queue_size(sq->q) == 0) {
pthread_cond_wait(&sq->cond, &sq->mutex); pthread_cond_wait(&sq->cond, &sq->mutex);
} }
value = queue_pop_front(sq->q); value = ff_queue_pop_front(sq->q);
pthread_cond_signal(&sq->cond); pthread_cond_signal(&sq->cond);
pthread_mutex_unlock(&sq->mutex); pthread_mutex_unlock(&sq->mutex);
return value; return value;

View File

@ -21,16 +21,16 @@
#ifndef AVFILTER_DNN_SAFE_QUEUE_H #ifndef AVFILTER_DNN_SAFE_QUEUE_H
#define AVFILTER_DNN_SAFE_QUEUE_H #define AVFILTER_DNN_SAFE_QUEUE_H
typedef struct _safe_queue safe_queue; typedef struct FFSafeQueue FFSafeQueue;
safe_queue *safe_queue_create(void); FFSafeQueue *ff_safe_queue_create(void);
void safe_queue_destroy(safe_queue *sq); void ff_safe_queue_destroy(FFSafeQueue *sq);
size_t safe_queue_size(safe_queue *sq); size_t ff_safe_queue_size(FFSafeQueue *sq);
void safe_queue_push_front(safe_queue *sq, void *v); void ff_safe_queue_push_front(FFSafeQueue *sq, void *v);
void safe_queue_push_back(safe_queue *sq, void *v); void ff_safe_queue_push_back(FFSafeQueue *sq, void *v);
void *safe_queue_pop_front(safe_queue *sq); void *ff_safe_queue_pop_front(FFSafeQueue *sq);
#endif #endif