summaryrefslogtreecommitdiff
path: root/include/kitchensink/kitlib.h
blob: 85ce2d445604e6f6fc58a74824256bf61db181a8 (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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#ifndef KITLIB_H
#define KITLIB_H

#include "kitchensink/kitconfig.h"

#ifdef __cplusplus
extern "C" {
#endif

enum { // These should match libass
    KIT_FONT_HINTING_NONE = 0,
    KIT_FONT_HINTING_LIGHT,
    KIT_FONT_HINTING_NORMAL,
    KIT_FONT_HINTING_NATIVE,
    KIT_FONT_HINTING_COUNT
};

typedef struct Kit_Version {
    unsigned char major;
    unsigned char minor;
    unsigned char patch;
} Kit_Version;

typedef enum Kit_HintType {
    KIT_HINT_FONT_HINTING,
    KIT_HINT_THREAD_COUNT,
    KIT_HINT_VIDEO_BUFFER_FRAMES,
    KIT_HINT_AUDIO_BUFFER_FRAMES,
    KIT_HINT_SUBTITLE_BUFFER_FRAMES
} Kit_HintType;

enum {
    KIT_INIT_NETWORK = 0x1,
    KIT_INIT_ASS = 0x2
};

KIT_API int Kit_Init(unsigned int flags);
KIT_API void Kit_Quit();
KIT_API void Kit_SetHint(Kit_HintType type, int value);
KIT_API int Kit_GetHint(Kit_HintType type);
KIT_API void Kit_GetVersion(Kit_Version *version);

#ifdef __cplusplus
}
#endif

#endif // KITLIB_H