LIBJXL
types.h
Go to the documentation of this file.
1 /* Copyright (c) the JPEG XL Project Authors. All rights reserved.
2  *
3  * Use of this source code is governed by a BSD-style
4  * license that can be found in the LICENSE file.
5  */
6 
11 #ifndef JXL_TYPES_H_
12 #define JXL_TYPES_H_
13 
14 #include <stddef.h>
15 #include <stdint.h>
16 
17 #if defined(__cplusplus) || defined(c_plusplus)
18 extern "C" {
19 #endif
20 
27 #define JXL_BOOL int
29 #define JXL_TRUE 1
31 #define JXL_FALSE 0
32 
35 typedef enum {
41 
47 
51 
55 
59 
62 } JxlDataType;
63 
66 typedef enum {
77 
85 typedef struct {
94  uint32_t num_channels;
95 
99 
105 
109  size_t align;
111 
112 #if defined(__cplusplus) || defined(c_plusplus)
113 }
114 #endif
115 
116 #endif /* JXL_TYPES_H_ */
Definition: types.h:85
size_t align
Definition: types.h:109
uint32_t num_channels
Definition: types.h:94
JxlDataType data_type
Definition: types.h:98
JxlEndianness endianness
Definition: types.h:104
JxlDataType
Definition: types.h:35
@ JXL_TYPE_UINT16
Definition: types.h:54
@ JXL_TYPE_FLOAT
Definition: types.h:40
@ JXL_TYPE_FLOAT16
Definition: types.h:61
@ JXL_TYPE_BOOLEAN
Definition: types.h:46
@ JXL_TYPE_UINT8
Definition: types.h:50
@ JXL_TYPE_UINT32
Definition: types.h:58
JxlEndianness
Definition: types.h:66
@ JXL_BIG_ENDIAN
Definition: types.h:75
@ JXL_LITTLE_ENDIAN
Definition: types.h:73
@ JXL_NATIVE_ENDIAN
Definition: types.h:71