1 /*
2   +----------------------------------------------------------------------+
3   | Copyright (c) The PHP Group                                          |
4   +----------------------------------------------------------------------+
5   | This source file is subject to version 3.01 of the PHP license,      |
6   | that is bundled with this package in the file LICENSE, and is        |
7   | available through the world-wide-web at the following url:           |
8   | https://www.php.net/license/3_01.txt                                 |
9   | If you did not receive a copy of the PHP license and are unable to   |
10   | obtain it through the world-wide-web, please send a note to          |
11   | license@php.net so we can mail you a copy immediately.               |
12   +----------------------------------------------------------------------+
13   | Author: Simonov Denis <sim-mail@list.ru>                             |
14   +----------------------------------------------------------------------+
15 */
16 
17 #ifndef PDO_FIREBIRD_UTILS_H
18 #define PDO_FIREBIRD_UTILS_H
19 
20 #include <ibase.h>
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
26 unsigned fb_get_client_version(void);
27 
28 ISC_TIME fb_encode_time(unsigned hours, unsigned minutes, unsigned seconds, unsigned fractions);
29 
30 ISC_DATE fb_encode_date(unsigned year, unsigned month, unsigned day);
31 
32 #if FB_API_VER >= 40
33 
34 ISC_STATUS fb_decode_time_tz(ISC_STATUS* isc_status, const ISC_TIME_TZ* timeTz, unsigned* hours, unsigned* minutes, unsigned* seconds, unsigned* fractions,
35 	unsigned timeZoneBufferLength, char* timeZoneBuffer);
36 
37 ISC_STATUS fb_decode_timestamp_tz(ISC_STATUS* isc_status, const ISC_TIMESTAMP_TZ* timestampTz,
38 	unsigned* year, unsigned* month, unsigned* day,
39 	unsigned* hours, unsigned* minutes, unsigned* seconds, unsigned* fractions,
40 	unsigned timeZoneBufferLength, char* timeZoneBuffer);
41 
42 #endif
43 
44 #ifdef __cplusplus
45 }
46 #endif
47 
48 #endif	/* PDO_FIREBIRD_UTILS_H */
49