summaryrefslogtreecommitdiff
path: root/yuvbench/yuvbench.h
blob: ba6711a531a26411327c4e4699ff1b5ebea26305 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#ifndef _YUVBENCH_H_
#define _YUVBENCH_H_

#include <assert.h>
#include <errno.h>
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

typedef struct Ctx Ctx;
struct Ctx
{
    uint32_t inp_w;
    uint32_t inp_h;
    const void* inp_buf;
    size_t inp_len;
    void* out_buf;
    size_t out_len;

    void* user;
};

typedef struct Backend Backend;
struct Backend
{
    bool(*init_fn)(Ctx* ctx);
    bool(*convert_fn)(Ctx* ctx);
    void(*deinit_fn)(Ctx* ctx);
};

#endif // _YUVBENCH_H_