Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00016 #ifndef __DRIZZLE_H
00017 #define __DRIZZLE_H
00018
00019 #if !defined(__cplusplus)
00020 # include <stdbool.h>
00021 #endif
00022
00023 #include <inttypes.h>
00024 #include <sys/types.h>
00025
00026 #ifdef _WIN32
00027 # include <winsock2.h>
00028 # include <ws2tcpip.h>
00029
00030 # include <errno.h>
00031 # define EINPROGRESS WSAEINPROGRESS
00032 # define EALREADY WSAEALREADY
00033 # define EISCONN WSAEISCONN
00034 # define ENOBUFS WSAENOBUFS
00035 # define ECONNREFUSED WSAECONNREFUSED
00036 # define ENETUNREACH WSAENETUNREACH
00037 # define ETIMEDOUT WSAETIMEDOUT
00038 # define ECONNRESET WSAECONNRESET
00039 # define EADDRINUSE WSAEADDRINUSE
00040 # define EOPNOTSUPP WSAEOPNOTSUPP
00041 # define ENOPROTOOPT WSAENOPROTOOPT
00042
00043 typedef unsigned int in_port_t;
00044
00045 struct sockaddr_un
00046 {
00047 short int sun_family;
00048 char sun_path[108];
00049 };
00050
00051
00052 #else
00053 # include <sys/socket.h>
00054 # include <netinet/in.h>
00055 # include <arpa/inet.h>
00056 # include <sys/un.h>
00057 # include <netdb.h>
00058 #endif
00059
00060 #include <poll.h>
00061
00062 #include <libdrizzle/visibility.h>
00063 #include <libdrizzle/constants.h>
00064 #include <libdrizzle/structs.h>
00065 #include <libdrizzle/conn.h>
00066 #include <libdrizzle/result.h>
00067 #include <libdrizzle/column.h>
00068
00069 #ifdef __cplusplus
00070 extern "C" {
00071 #endif
00072
00092 DRIZZLE_API
00093 const char *drizzle_version(void);
00094
00100 DRIZZLE_API
00101 const char *drizzle_bugreport(void);
00102
00109 DRIZZLE_API
00110 const char *drizzle_verbose_name(drizzle_verbose_t verbose);
00111
00120 DRIZZLE_API
00121 drizzle_st *drizzle_create(drizzle_st *drizzle);
00122
00130 DRIZZLE_API
00131 drizzle_st *drizzle_clone(drizzle_st *drizzle, const drizzle_st *from);
00132
00139 DRIZZLE_API
00140 void drizzle_free(drizzle_st *drizzle);
00141
00149 DRIZZLE_API
00150 const char *drizzle_error(const drizzle_st *drizzle);
00151
00159 DRIZZLE_API
00160 int drizzle_errno(const drizzle_st *drizzle);
00161
00169 DRIZZLE_API
00170 uint16_t drizzle_error_code(const drizzle_st *drizzle);
00171
00179 DRIZZLE_API
00180 const char *drizzle_sqlstate(const drizzle_st *drizzle);
00181
00189 DRIZZLE_API
00190 drizzle_options_t drizzle_options(const drizzle_st *drizzle);
00191
00199 DRIZZLE_API
00200 void drizzle_set_options(drizzle_st *drizzle, drizzle_options_t options);
00201
00209 DRIZZLE_API
00210 void drizzle_add_options(drizzle_st *drizzle, drizzle_options_t options);
00211
00219 DRIZZLE_API
00220 void drizzle_remove_options(drizzle_st *drizzle, drizzle_options_t options);
00221
00229 DRIZZLE_API
00230 void *drizzle_context(const drizzle_st *drizzle);
00231
00239 DRIZZLE_API
00240 void drizzle_set_context(drizzle_st *drizzle, void *context);
00241
00250 DRIZZLE_API
00251 void drizzle_set_context_free_fn(drizzle_st *drizzle,
00252 drizzle_context_free_fn *function);
00253
00262 DRIZZLE_API
00263 int drizzle_timeout(const drizzle_st *drizzle);
00264
00273 DRIZZLE_API
00274 void drizzle_set_timeout(drizzle_st *drizzle, int timeout);
00275
00283 DRIZZLE_API
00284 drizzle_verbose_t drizzle_verbose(const drizzle_st *drizzle);
00285
00295 DRIZZLE_API
00296 void drizzle_set_verbose(drizzle_st *drizzle, drizzle_verbose_t verbose);
00297
00308 DRIZZLE_API
00309 void drizzle_set_log_fn(drizzle_st *drizzle, drizzle_log_fn *function,
00310 void *context);
00311
00327 DRIZZLE_API
00328 void drizzle_set_event_watch_fn(drizzle_st *drizzle,
00329 drizzle_event_watch_fn *function,
00330 void *context);
00331
00343 DRIZZLE_API
00344 drizzle_con_st *drizzle_con_create(drizzle_st *drizzle, drizzle_con_st *con);
00345
00355 DRIZZLE_API
00356 drizzle_con_st *drizzle_con_clone(drizzle_st *drizzle, drizzle_con_st *con,
00357 const drizzle_con_st *from);
00358
00365 DRIZZLE_API
00366 void drizzle_con_free(drizzle_con_st *con);
00367
00374 DRIZZLE_API
00375 void drizzle_con_free_all(drizzle_st *drizzle);
00376
00384 DRIZZLE_API
00385 drizzle_return_t drizzle_con_wait(drizzle_st *drizzle);
00386
00394 DRIZZLE_API
00395 drizzle_con_st *drizzle_con_ready(drizzle_st *drizzle);
00396
00399 #ifdef __cplusplus
00400 }
00401 #endif
00402
00403 #endif