Commit | Line | Data |
---|---|---|
f9995f31 MG |
1 | /* Copyright 2013 Google Inc. All Rights Reserved. |
2 | ||
3 | Distributed under MIT license. | |
4 | See file LICENSE for detail or copy at https://opensource.org/licenses/MIT | |
5 | */ | |
6 | ||
7 | /* Common types */ | |
8 | ||
9 | #ifndef BROTLI_DEC_TYPES_H_ | |
10 | #define BROTLI_DEC_TYPES_H_ | |
11 | ||
12 | #include <stddef.h> /* for size_t */ | |
13 | ||
14 | #if defined(_MSC_VER) && (_MSC_VER < 1600) | |
15 | typedef __int8 int8_t; | |
16 | typedef unsigned __int8 uint8_t; | |
17 | typedef __int16 int16_t; | |
18 | typedef unsigned __int16 uint16_t; | |
19 | typedef __int32 int32_t; | |
20 | typedef unsigned __int32 uint32_t; | |
21 | typedef unsigned __int64 uint64_t; | |
22 | typedef __int64 int64_t; | |
23 | #else | |
24 | #include <stdint.h> | |
25 | #endif /* defined(_MSC_VER) && (_MSC_VER < 1600) */ | |
26 | ||
27 | /* Allocating function pointer. Function MUST return 0 in the case of failure. | |
28 | Otherwise it MUST return a valid pointer to a memory region of at least | |
29 | size length. Neither items nor size are allowed to be 0. | |
30 | opaque argument is a pointer provided by client and could be used to bind | |
31 | function to specific object (memory pool). */ | |
32 | typedef void* (*brotli_alloc_func) (void* opaque, size_t size); | |
33 | ||
34 | /* Deallocating function pointer. Function SHOULD be no-op in the case the | |
35 | address is 0. */ | |
36 | typedef void (*brotli_free_func) (void* opaque, void* address); | |
37 | ||
38 | #endif /* BROTLI_DEC_TYPES_H_ */ |