]> rtime.felk.cvut.cz Git - can-usb1.git/blob - ulan/host/ul_drv/ul_lib/ul_lib/ul_fddir.h
Initializing repo
[can-usb1.git] / ulan / host / ul_drv / ul_lib / ul_lib / ul_fddir.h
1 #ifndef _UL_FDDIR_H
2 #define _UL_FDDIR_H
3
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7
8 #ifdef _WIN32
9
10  #define UL_DEV_NAME "\\\\.\\UL_DRV"
11
12  typedef HANDLE ul_fd_direct_t;
13
14  #define UL_FD_DIRECT_INVALID INVALID_HANDLE_VALUE
15  typedef long ssize_t;
16
17  #define WITHOUT_SYS_SELECT
18  #define HAS_GETOPT_LONG
19
20  #ifdef WITH_UL_FD_INDIRECT
21  #define WIN32_FILE_OVERLAPPED
22  #endif /* WITH_UL_FD_INDIRECT */
23  
24  #if defined(WIN32_FILE_OVERLAPPED)&&!defined(WITH_UL_FD_INDIRECT)
25    #error to enable WIN32_FILE_OVERLAPPED operation is neccessary compile sources with flag WITH_UL_FD_INDIRECT
26  #endif
27
28 #elif defined(__DJGPP__)
29
30  #define UL_DEV_NAME "1"
31
32  struct ul_opdata;
33  typedef struct ul_opdata *ul_fd_direct_t;
34  #define UL_FD_DIRECT_INVALID (NULL)
35
36  #define WITHOUT_SYS_SELECT
37  #define UL_DRV_IN_LIB
38
39 #else /* !_WIN32 && !__DJGPP__ */
40
41  #define UL_DEV_NAME "/dev/ulan"
42
43  typedef int ul_fd_direct_t;
44
45  #define UL_FD_DIRECT_INVALID (-1)
46
47  #ifndef CONFIG_OC_UL_DRV_SYSLESS
48    #define HAS_GETDELIM
49    #define HAS_GETOPT_LONG
50  #else
51    #define UL_DRV_IN_LIB
52  #endif /* CONFIG_OC_UL_DRV_SYSLESS */
53
54 #endif /* _WIN32 */
55
56 #ifdef __cplusplus
57 } /* extern "C"*/
58 #endif
59
60 #endif /*_UL_FDDIR_H*/