LIBJXL
Loading...
Searching...
No Matches
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)
20extern "C" {
21#endif
22
29#define JXL_BOOL int
31#define JXL_TRUE 1
33#define JXL_FALSE 0
35#define TO_JXL_BOOL(C) (!!(C) ? JXL_TRUE : JXL_FALSE)
37#define FROM_JXL_BOOL(C) (static_cast<bool>(C))
38
59
73
105
130
133typedef struct {
136
139
143
146typedef char JxlBoxType[4];
147
148#if defined(__cplusplus) || defined(c_plusplus)
149}
150#endif
151
152#endif /* JXL_TYPES_H_ */
153
char JxlBoxType[4]
Definition types.h:146
JxlBitDepthType
Definition types.h:109
JxlDataType
Definition types.h:41
JxlEndianness
Definition types.h:62
@ JXL_BIT_DEPTH_FROM_PIXEL_FORMAT
Definition types.h:117
@ JXL_BIT_DEPTH_FROM_CODESTREAM
Definition types.h:124
@ JXL_BIT_DEPTH_CUSTOM
Definition types.h:128
@ JXL_TYPE_UINT16
Definition types.h:54
@ JXL_TYPE_FLOAT
Definition types.h:46
@ JXL_TYPE_FLOAT16
Definition types.h:57
@ JXL_TYPE_UINT8
Definition types.h:50
@ JXL_BIG_ENDIAN
Definition types.h:71
@ JXL_LITTLE_ENDIAN
Definition types.h:69
@ JXL_NATIVE_ENDIAN
Definition types.h:67
Definition types.h:133
uint32_t bits_per_sample
Definition types.h:138
JxlBitDepthType type
Definition types.h:135
uint32_t exponent_bits_per_sample
Definition types.h:141
Definition types.h:80
size_t align
Definition types.h:103
uint32_t num_channels
Definition types.h:89
JxlDataType data_type
Definition types.h:93
JxlEndianness endianness
Definition types.h:98