libgphoto2 photo camera library (libgphoto2) API
2.5.8
Main Page
Related Pages
Data Structures
Files
File List
Globals
gphoto2-port-portability.h
1
20
#ifndef __GPHOTO2_PORT_PORTABILITY_H__
21
#define __GPHOTO2_PORT_PORTABILITY_H__
22
23
#ifdef _GPHOTO2_INTERNAL_CODE
24
25
#if defined(WIN32) && !defined(__WINESRC__)
26
27
/************************************************************************
28
* Begin Windows definitions (but not during WINE compilation)
29
************************************************************************/
30
31
# include <windows.h>
32
/* done by mingw/wine headers ... defined to struct ... tsaes*/
33
#undef interface
34
# include <sys/types.h>
35
# include <sys/stat.h>
36
# include <string.h>
37
# include <stdio.h>
38
# include <direct.h>
39
40
# ifdef IOLIBS
41
# undef IOLIBS
42
# endif
43
# define IOLIBS "."
44
# define strcasecmp _stricmp
45
# ifndef snprintf
46
# define snprintf _snprintf
47
# endif
48
49
/* Work-around for readdir() */
50
typedef
struct
{
51
HANDLE handle;
52
int
got_first;
53
WIN32_FIND_DATA search;
54
char
dir[1024];
55
char
drive[32][2];
56
int
drive_count;
57
int
drive_index;
58
} GPPORTWINDIR;
59
60
61
/* Directory-oriented functions */
62
# define gp_system_dir GPPORTWINDIR *
63
# define gp_system_dirent WIN32_FIND_DATA *
64
# define gp_system_dir_delim '\\'
65
66
# define sleep(x) usleep((x) * 1000 * 1000)
67
68
/************************************************************************
69
* End WIN32 definitions
70
************************************************************************/
71
72
#elif defined(__SOME_OS2_MAGIC_HERE__)
73
74
/************************************************************************
75
* Begin OS/2 definitions
76
************************************************************************/
77
78
# define strcasecmp(foo,bar) stricmp(foo,bar)
79
# define gp_system_dir_delim '\\'
80
81
# ifndef GPIO_OS2_INCLUDED
82
# define GPIO_OS2_INCLUDED
83
# define IOLIBS getenv("IOLIBS")
84
/*#define IOLIBS "./libgphoto2_port"*/
85
# define RTLD_LAZY 0x001
86
87
88
# ifndef HAVE_TERMIOS_H
89
# define INCL_DOSDEVIOCTL
/* DosDevIOCtl values */
90
# define IOCTL_ASYNC 0x0001
91
# define ASYNC_SETBAUDRATE 0x0041
92
/* c_cflag bit meaning */
93
# define CBAUD 0x0000100f
94
# define B0 0x00000000
/* hang up */
95
# define B50 0x00000001
96
# define B75 0x00000002
97
# define B110 0x00000003
98
# define B134 0x00000004
99
# define B150 0x00000005
100
# define B200 0x00000006
101
# define B300 0x00000007
102
# define B600 0x00000008
103
# define B1200 0x00000009
104
# define B1800 0x0000000a
105
# define B2400 0x0000000b
106
# define B4800 0x0000000c
107
# define B9600 0x0000000d
108
# define B19200 0x0000000e
109
# define B38400 0x0000000f
110
# define EXTA B19200
111
# define EXTB B38400
112
# define CSIZE 0x00000030
113
# define CS5 0x00000000
114
# define CS6 0x00000010
115
# define CS7 0x00000020
116
# define CS8 0x00000030
117
# define CSTOPB 0x00000040
118
# define CREAD 0x00000080
119
# define PARENB 0x00000100
120
# define PARODD 0x00000200
121
# define HUPCL 0x00000400
122
# define CLOCAL 0x00000800
123
# define CBAUDEX 0x00001000
124
# define B57600 0x00001001
125
# define B115200 0x00001002
126
# define B230400 0x00001003
127
# define B460800 0x00001004
128
# define B76800 0x00001005
129
# define B153600 0x00001006
130
# define B307200 0x00001007
131
# define B614400 0x00001008
132
# define B921600 0x00001009
133
# define B500000 0x0000100a
134
# define B576000 0x0000100b
135
# define B1000000 0x0000100c
136
# define B1152000 0x0000100d
137
# define B1500000 0x0000100e
138
# define B2000000 0x0000100f
139
140
# endif
/* HAVE_TERMIOS_H */
141
142
# define CIBAUD 0x100f0000
/* input baud rate (not used) */
143
# define CMSPAR 0x40000000
/* mark or space (stick) parity */
144
/* #define CRTSCTS 0x80000000 */
/* flow control */
145
146
/* modem lines */
147
# define TIOCM_LE 0x001
148
# define TIOCM_DTR 0x002
149
# define TIOCM_RTS 0x004
150
# define TIOCM_ST 0x008
151
# define TIOCM_SR 0x010
152
# define TIOCM_CTS 0x020
153
# define TIOCM_CAR 0x040
154
# define TIOCM_RNG 0x080
155
# define TIOCM_DSR 0x100
156
# define TIOCM_CD TIOCM_CAR
157
# define TIOCM_RI TIOCM_RNG
158
159
# define TIOCMBIC 0x06C
160
# define TIOCMBIS 0x06B
161
# define TIOCMGET 0x06E
162
163
# endif
/* GPIO_OS2_INCLUDED */
164
165
/************************************************************************
166
* End OS/2 definitions
167
************************************************************************/
168
169
#else
170
171
/************************************************************************
172
* Begin POSIX/XOPEN definitions
173
************************************************************************/
174
175
/* yummy. :) */
176
177
/* XOPEN needed for usleep */
178
#ifndef _XOPEN_SOURCE
179
# define _XOPEN_SOURCE 500
180
#else
181
# if ((_XOPEN_SOURCE - 0) < 500)
182
# undef _XOPEN_SOURCE
183
# define _XOPEN_SOURCE 500
184
# endif
185
#endif
186
187
/* for nanosleep */
188
# ifndef _POSIX_C_SOURCE
189
# define _POSIX_C_SOURCE 199309
190
# endif
191
# include <time.h>
192
193
# include <strings.h>
194
# include <sys/types.h>
195
# include <dirent.h>
196
#ifdef HAVE_SYS_PARAM_H
197
# include <sys/param.h>
198
#endif
199
# include <sys/stat.h>
200
# include <unistd.h>
201
202
203
/* Directory-oriented functions */
205
# define gp_system_dir DIR *
206
207
# define gp_system_dirent struct dirent *
208
209
# define gp_system_dir_delim '/'
210
211
/************************************************************************
212
* End POSIX/XOPEN definitions
213
************************************************************************/
214
215
#endif
/* else */
216
217
218
/************************************************************************
219
* Begin platform independent portability functions
220
************************************************************************/
221
222
int
gp_system_mkdir
(
const
char
*dirname);
223
int
gp_system_rmdir
(
const
char
*dirname);
224
gp_system_dir
gp_system_opendir
(
const
char
*dirname);
225
gp_system_dirent
gp_system_readdir
(gp_system_dir d);
226
const
char
*
gp_system_filename
(gp_system_dirent de);
227
int
gp_system_closedir
(gp_system_dir dir);
228
int
gp_system_is_file
(
const
char
*filename);
229
int
gp_system_is_dir
(
const
char
*dirname);
230
231
/************************************************************************
232
* End platform independent portability functions
233
************************************************************************/
234
#endif
/* _GPHOTO2_INTERNAL_CODE */
235
236
#endif
/* ifndef __GPHOTO2_PORT_PORTABILITY_H__ */
237
/* end of file */
libgphoto2_port
gphoto2
gphoto2-port-portability.h
Generated on Tue Mar 1 2016 19:51:55 for libgphoto2 photo camera library (libgphoto2) API by
1.8.4