1 #ifndef _WIMLIB_TYPES_H
2 #define _WIMLIB_TYPES_H
4 #include "wimlib_tchar.h"
5 #include "wimlib/compiler.h"
12 /* Unsigned integer types of exact size in bits */
18 /* Signed integer types of exact size in bits */
24 /* Unsigned little endian types of exact size */
25 typedef uint16_t _bitwise_attr le16;
26 typedef uint32_t _bitwise_attr le32;
27 typedef uint64_t _bitwise_attr le64;
29 /* Signed little endian types of exact size (declare as unsigned to avoid sign
30 * extension on big-endian architectures) */
31 typedef uint16_t _bitwise_attr sle16;
32 typedef uint32_t _bitwise_attr sle32;
33 typedef uint64_t _bitwise_attr sle64;
35 /* Unsigned big endian types of exact size */
36 typedef uint16_t _bitwise_attr be16;
37 typedef uint32_t _bitwise_attr be32;
38 typedef uint64_t _bitwise_attr be64;
42 /* A pointer to 'utf16lechar' indicates a UTF-16LE encoded string */
43 typedef le16 utf16lechar;
45 #ifndef WIMLIB_WIMSTRUCT_DECLARED
46 typedef struct WIMStruct WIMStruct;
47 # define WIMLIB_WIMSTRUCT_DECLARED