2 #ifndef _UDI_ARCH_x86_H_
3 #define _UDI_ARCH_x86_H_
5 typedef Sint8 udi_sbit8_t; /* signed 8-bit: -2^7..2^7-1 */
6 typedef Sint16 udi_sbit16_t; /* signed 16-bit: -2^15..2^15-1 */
7 typedef Sint32 udi_sbit32_t; /* signed 32-bit: -2^31..2^31-1 */
8 typedef Uint8 udi_ubit8_t; /* unsigned 8-bit: 0..28-1 */
9 typedef Uint16 udi_ubit16_t; /* unsigned 16-bit: 0..216-1 */
10 typedef Uint32 udi_ubit32_t; /* unsigned 32-bit: 0..232-1 */
12 typedef udi_ubit8_t udi_boolean_t; /* 0=False; 1..28-1=True */
16 typedef size_t udi_size_t; /* buffer size */
17 typedef size_t udi_index_t; /* zero-based index type */
19 typedef void *_udi_handle_t;
20 #define _NULL_HANDLE NULL
23 typedef _udi_handle_t *udi_channel_t;
24 #define UDI_NULL_CHANNEL _NULL_HANDLE
29 typedef _udi_handle_t udi_buf_path_t;
30 #define UDI_NULL_BUF_PATH _NULL_HANDLE
32 typedef _udi_handle_t udi_origin_t;
33 #define UDI_NULL_ORIGIN _NULL_HANDLE
35 typedef Sint64 udi_timestamp_t;
37 #define UDI_HANDLE_IS_NULL(handle, handle_type) (handle == NULL)
38 #define UDI_HANDLE_ID(handle, handle_type) ((Uint32)handle)
41 * \name va_arg wrapper
44 #define UDI_VA_ARG(pvar, type, va_code) va_arg(pvar,type)
45 #define UDI_VA_UBIT8_T
46 #define UDI_VA_SBIT8_T
47 #define UDI_VA_UBIT16_T
48 #define UDI_VA_SBIT16_T
49 #define UDI_VA_UBIT32_T
50 #define UDI_VA_SBIT32_T
51 #define UDI_VA_BOOLEAN_T
52 #define UDI_VA_INDEX_T
54 #define UDI_VA_STATUS_T
55 #define UDI_VA_CHANNEL_T
56 #define UDI_VA_ORIGIN_T
57 #define UDI_VA_POINTER
65 typedef udi_ubit32_t udi_status_t;