36#if !defined(ARE_THERE_STILL_ENVS_WITHOUT_SYS_TYPES)
41typedef u_int8_t uint8_t;
42typedef u_int16_t uint16_t;
43typedef u_int32_t uint32_t;
44typedef u_int64_t uint64_t;
75# define UINT16_C(c) c ## U
79# if defined (SIZEOF_INT) && SIZEOF_INT == 4
80# define UINT32_C(c) c ## U
81# elif defined (SIZEOF_LONG) && SIZEOF_LONG == 4
82# define UINT32_C(c) c ## UL
84# define UINT32_C(c) c ## U
89# if defined (SIZEOF_LONG) && SIZEOF_LONG == 8
90# define UINT64_C(c) c ## UL
91# elif defined (SIZEOF_INT) && SIZEOF_INT == 8
92# define UINT64_C(c) c ## U
94# define UINT64_C(c) c ## ULL
99# if defined (SIZEOF_LONG) && SIZEOF_LONG == 8
100# define INT64_C(c) c ## L
101# elif defined (SIZEOF_INT) && SIZEOF_INT == 8
104# define INT64_C(c) c ## LL
110#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 4)
111#define GNUC_PRINTF( format_idx, arg_idx ) \
112 __attribute__((format (printf, format_idx, arg_idx)))
113#define GNUC_SCANF( format_idx, arg_idx ) \
114 __attribute__((format (scanf, format_idx, arg_idx)))
115#define GNUC_FORMAT( arg_idx ) \
116 __attribute__((format_arg (arg_idx)))
117#define GNUC_NORETURN \
118 __attribute__((noreturn))
120 __attribute__((const))
122 __attribute__((unused))
124 __attribute__((packed))
126#define GNUC_PRINTF( format_idx, arg_idx )
127#define GNUC_SCANF( format_idx, arg_idx )
128#define GNUC_FORMAT( arg_idx )
134#define __PRETTY_FUNCTION__ __FUNCSIG__
138#if defined(__MINGW32__) || (defined( __clang_major__) && __clang_major__ > 9)
139# define PRAGMA_BEGIN_PACKED _Pragma("pack(push)") \
141# define PRAGMA_END_PACKED _Pragma("pack(pop)")
142#elif __GNUC__ > 4 || (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901)
145# define PRAGMA_BEGIN_PACKED _Pragma("pack(1)")
146# define PRAGMA_END_PACKED _Pragma("pack()")
147#elif defined(_MSC_VER)
148# define PRAGMA_BEGIN_PACKED __pragma(pack(push, 1))
149# define PRAGMA_END_PACKED __pragma(pack(pop))
152# define PRAGMA_BEGIN_PACKED
153# define PRAGMA_END_PACKED
159#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 95)
160# define GNUC_LIKELY(x) __builtin_expect((x),true)
161# define GNUC_UNLIKELY(x) __builtin_expect((x),false)
163# define GNUC_LIKELY(x) (x)
164# define GNUC_UNLIKELY(x) (x)
168# define NULL ((void*) 0)
174# if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 5)
175# define LIBCDIO_DEPRECATED(object, notice) object __attribute__ ((deprecated(notice)))
177# define LIBCDIO_DEPRECATED(object, notice) object __attribute__ ((deprecated))
179#elif defined(_MSC_VER)
180#define LIBCDIO_DEPRECATED(object, notice) __declspec(deprecated(notice)) object
182#define LIBCDIO_DEPRECATED(object, notice)
186#define __cd_offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
210#define msf_t_SIZEOF 3
268#define CDIO_INVALID_SESSION 0xFF
275#define CDIO_INVALID_LBA -45301
280#define CDIO_INVALID_LSN CDIO_INVALID_LBA
286#define CDIO_MCN_SIZE 13
298#define CDIO_ISRC_SIZE 12
MSF (minute/second/frame) structure.
Definition types.h:203
uint8_t s
Definition types.h:204
uint8_t m
Definition types.h:204
uint8_t f
Definition types.h:204
uint8_t session_t
Definition types.h:263
bool_3way_t
Definition types.h:220
@ nope
Definition types.h:221
@ yep
Definition types.h:222
@ dunno
Definition types.h:223
char cdio_utf8_t
UTF-8 char definition.
Definition types.h:218
typedefPRAGMA_END_PACKED struct msf_s msf_t
Definition types.h:208
#define PRAGMA_BEGIN_PACKED
Definition types.h:152
#define PRAGMA_END_PACKED
Definition types.h:153
#define CDIO_ISRC_SIZE
Definition types.h:298
char cdio_mcn_t[CDIO_MCN_SIZE+1]
Definition types.h:292
uint8_t track_t
Definition types.h:260
uint8_t bitfield_t
Definition types.h:235
cdio_track_flag
Definition types.h:312
@ CDIO_TRACK_FLAG_DATA
Definition types.h:317
@ CDIO_TRACK_FLAG_PRE_EMPHASIS
Definition types.h:314
@ CDIO_TRACK_FLAG_FOUR_CHANNEL_AUDIO
Definition types.h:318
@ CDIO_TRACK_FLAG_SCMS
Definition types.h:319
@ CDIO_TRACK_FLAG_COPY_PERMITTED
Definition types.h:316
@ CDIO_TRACK_FLAG_NONE
Definition types.h:313
#define GNUC_PACKED
Definition types.h:132
int cdio_fs_anal_t
Definition types.h:306
int32_t lba_t
Definition types.h:243
int32_t lsn_t
Definition types.h:250
#define CDIO_MCN_SIZE
Definition types.h:286
void(* CdioDataFree_t)(void *ptr)
Definition types.h:324
uint8_t ubyte
Definition types.h:53
char cdio_isrc_t[CDIO_ISRC_SIZE+1]
Definition types.h:304
lba_t lba
Definition types.h:256
msf_t msf
Definition types.h:255