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 
13 #ifndef JXL_TYPES_H_
14 #define JXL_TYPES_H_
15 
16 #include <stddef.h>
17 #include <stdint.h>
18 
19 #if defined(__cplusplus) || defined(c_plusplus)
20 extern "C" {
21 #endif
22 
29 #define JXL_BOOL int
31 #define JXL_TRUE 1
33 #define JXL_FALSE 0
34 
37 typedef enum {
43 
49 
53 
57 
61 
64 } JxlDataType;
65 
68 typedef enum {
79 
87 typedef struct {
96  uint32_t num_channels;
97 
101 
107 
111  size_t align;
113 
116 typedef char JxlBoxType[4];
117 
118 #if defined(__cplusplus) || defined(c_plusplus)
119 }
120 #endif
121 
122 #endif /* JXL_TYPES_H_ */
123 
char JxlBoxType[4]
Definition: types.h:116
JxlDataType
Definition: types.h:37
JxlEndianness
Definition: types.h:68
@ JXL_TYPE_UINT16
Definition: types.h:56
@ JXL_TYPE_FLOAT
Definition: types.h:42
@ JXL_TYPE_FLOAT16
Definition: types.h:63
@ JXL_TYPE_BOOLEAN
Definition: types.h:48
@ JXL_TYPE_UINT8
Definition: types.h:52
@ JXL_TYPE_UINT32
Definition: types.h:60
@ JXL_BIG_ENDIAN
Definition: types.h:77
@ JXL_LITTLE_ENDIAN
Definition: types.h:75
@ JXL_NATIVE_ENDIAN
Definition: types.h:73
Definition: types.h:87
size_t align
Definition: types.h:111
uint32_t num_channels
Definition: types.h:96
JxlDataType data_type
Definition: types.h:100
JxlEndianness endianness
Definition: types.h:106