00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00044 #ifndef DKTYPES_INC
00045
00047 #define DKTYPES_INC 1
00048
00049 #ifndef DKCONFIG_INC
00050 #include <dkconfig.h>
00051 #endif
00052
00053 #include <stdio.h>
00054
00055 #if DK_HAVE_LIMITS_H
00056 #include <limits.h>
00057 #endif
00058 #if DK_HAVE_SYS_PARAM_H
00059 #include <sys/param.h>
00060 #endif
00061
00062 #if DK_HAVE_SYS_TYPES_H
00063 #include <sys/types.h>
00064 #endif
00065
00066 #if DK_HAVE_SYS_STAT_H
00067 #include <sys/stat.h>
00068 #endif
00069
00070 #if DK_HAVE_SYS_SOCKET_H
00071 #include <sys/socket.h>
00072 #else
00073 #if DK_HAVE_WINSOCK2_H
00074 #ifndef WINSOCK2_INCLUDED
00075 #include <winsock2.h>
00076 #define WINSOCK2_INCLUDED 1
00077 #endif
00078 #endif
00079 #endif
00080
00081 #if DK_TIME_WITH_SYS_TIME
00082 #include <sys/time.h>
00083 #include <time.h>
00084 #else
00085 #if DK_HAVE_SYS_TIME_H
00086 #include <sys/time.h>
00087 #else
00088 #if DK_HAVE_TIME_H
00089 #include <time.h>
00090 #endif
00091 #endif
00092 #endif
00093 #if DK_HAVE_STDDEF_H
00094 #include <stddef.h>
00095 #endif
00096 #if DK_HAVE_UNISTD_H
00097 #include <unistd.h>
00098 #endif
00099 #if DK_HAVE_DIRECT_H
00100 #include <direct.h>
00101 #endif
00102 #if DK_HAVE_DIRENT_H
00103 #include <dirent.h>
00104 #endif
00105 #if DK_HAVE_DIR_H
00106 #include <dir.h>
00107 #endif
00108 #if DK_HAVE_IO_H
00109 #include <io.h>
00110 #endif
00111 #if DK_HAVE_NETINET_IN_H
00112 #include <netinet/in.h>
00113 #endif
00114 #if DK_HAVE_FCNTL_H
00115 #include <fcntl.h>
00116 #endif
00117 #if DK_HAVE_TERMIOS_H
00118 #include <termios.h>
00119 #endif
00120 #if DK_HAVE_SYS_TERMIOS_H
00121 #include <sys/termios.h>
00122 #endif
00123 #if DK_HAVE_SYS_TTOLD_H
00124 #include <sys/ttold.h>
00125 #endif
00126 #if DK_HAVE_WINCON_H
00127 #include <wincon.h>
00128 #endif
00129 #if DK_HAVE_WCHAR_H
00130 #include <wchar.h>
00131 #endif
00132 #if DK_HAVE_ZLIB_H
00133 #include <zlib.h>
00134 #endif
00135
00136 #include <dkwin.h>
00137
00138 #if defined(PATH_MAX)
00139
00140 #define DK_MAX_PATH (PATH_MAX + 1)
00141 #else
00142 #if defined(MAXPATHLEN)
00143
00144 #define DK_MAX_PATH (MAXPATHLEN + 1)
00145 #else
00146
00147 #define DK_MAX_PATH 1025
00148 #endif
00149 #endif
00150
00152 #define DK_MAX_DOUBLE 1.7e308
00153
00154 #if defined(__BORLANDC__)
00155
00156 typedef int mode_t;
00157 #endif
00158
00159 #if !DK_HAVE_WCHAR_T
00160 #if !DK_HAVE_WCHAR_H
00161 #if !WCHAR_T_DEFINED
00162
00163 #define WCHAR_T_DEFINED 1
00164
00165 typedef unsigned short wchar_t;
00166 #endif
00167 #endif
00168 #endif
00169
00170
00171
00172
00173
00175 typedef char *dk_str;
00176
00178 typedef dk_str *dk_str_ptr;
00179
00181 typedef char dk_byte;
00182
00184 typedef unsigned char dk_ubyte;
00185
00187 typedef short dk_word;
00188
00190 typedef unsigned short dk_uword;
00191
00193 typedef long dk_dword;
00194
00196 typedef unsigned long dk_udword;
00197
00198
00199
00201 typedef void dk_signal_ret_t;
00202
00204 typedef dk_signal_ret_t dk_signal_fct_t DK_PR((int));
00205
00207 typedef dk_signal_fct_t *dk_signal_disp_t;
00208
00209
00210
00211 #if defined(__cplusplus)
00212 extern "C" {
00213 #endif
00214
00215 typedef dk_signal_ret_t dk_extc_signal_fct_t DK_PR((int));
00216 #if defined(__cplusplus)
00217 }
00218 #endif
00219
00220 typedef dk_extc_signal_fct_t *dk_extc_signal_disp_t;
00221
00222
00223
00225 typedef char * dk_fct_type_ss DK_PR((\
00226 void *obj, char *table, char *key, char *def\
00227 ));
00228
00229
00230
00232 typedef void dk_fct_type_log DK_PR((void *obj, int level, char **ptr, int num));
00233
00234
00235
00237 #if DK_HAVE_LONG_LONG_INT
00238 typedef long long unsigned dk_long_long_unsigned_t;
00239 #else
00240 typedef long unsigned dk_long_long_unsigned_t;
00241 #endif
00242
00244 #if DK_HAVE_LONG_LONG_INT
00245 typedef long long dk_long_long_int_t;
00246 #else
00247 typedef long dk_long_long_int_t;
00248 #endif
00249
00250
00252 #if DK_HAVE_SOCKLEN_T
00253 #define dk_socklen_t socklen_t
00254 #else
00255 #if DK_HAVE_SIZE_T
00256 #define dk_socklen_t size_t
00257 #else
00258 #define dk_socklen_t unsigned int
00259 #endif
00260 #endif
00261
00262
00264 #ifdef _WIN32
00265 #define dk_read_write_t int
00266 #else
00267 #define dk_read_write_t ssize_t
00268 #endif
00269
00270
00275 typedef struct {
00276 char *key;
00277 char *value;
00278 } dk_key_value_t ;
00279
00280
00281
00285 #define DK_KEY_VALUE_ARRAY_SIZE(x) (sizeof(x)/sizeof(dk_key_value_t))
00286
00287
00288
00289
00290
00291
00292
00293
00294
00295
00296
00301 typedef struct _dk_font_ {
00302 char *texname;
00303 char *psname;
00304 int features;
00305 char *svgFontFamily;
00306 char *gs_alias;
00307 char *gs_actual;
00308 char *svgFontId;
00309 char *gs_new;
00310 } dk_font_t;
00311
00312
00313
00317 typedef struct {
00318 char *key;
00319 char **value_pointer;
00320 char *default_value;
00321 } dk_string_finder_t;
00322
00323
00324
00328 typedef struct {
00329 unsigned char *data;
00330 size_t bits;
00331 } dk_bitfield_t ;
00332
00333
00334
00338 typedef struct {
00339 unsigned char **data;
00340 size_t c;
00341 size_t r;
00342 } dk_bitmatrix_t;
00343
00344
00345
00350 typedef struct {
00351
00352 #if VERSION_BEFORE_2009_01_27
00353
00354 #if DK_HAVE_SYS_STAT_H
00355 #if DK_HAVE_STAT
00356 struct stat st;
00357 #else
00358 #if DK_HAVE__STAT
00359 struct _stat st;
00360 #endif
00361 #endif
00362 #if DK_HAVE_LSTAT
00363 struct stat lst;
00364 #endif
00365 #endif
00366
00367 #endif
00368
00369 int permissions;
00370 int filetype;
00371 unsigned long inode_number;
00372 unsigned long device_number;
00373 unsigned long rdevice_number;
00374 unsigned long number_of_links;
00375 dk_long_long_unsigned_t size;
00376 int size_math_error;
00377 long uid;
00378 long gid;
00379 char ctime[24];
00380 char atime[24];
00381 char mtime[24];
00382 short is_far_link;
00383 struct tm ori_ctime;
00384 struct tm ori_atime;
00385 struct tm ori_mtime;
00386 unsigned char ud;
00387 unsigned char gd;
00388 } dk_stat_t;
00389
00390
00391
00396 typedef struct {
00397 char *dirname;
00398 char *shortname;
00399 char *fullname;
00400 dk_stat_t stbuf;
00401 int state;
00402 long maxpathlen;
00403 int error_code;
00404 #if defined(WIN32) || defined(_WIN32)
00405
00406 #if DK_HAVE__FINDFIRST64
00407
00408 long hFile64;
00409 struct __finddata64_t fdt64;
00410 #else
00411 #if DK_HAVE__FINDFIRST32
00412
00413 long hFile32;
00414 struct __finddata32_t fdt32;
00415 #else
00416 #if DK_HAVE__FINDFIRST
00417
00418 long hFile;
00419 struct _finddata_t fdt;
00420 #endif
00421 #endif
00422 #endif
00423
00424 #else
00425 #if DK_HAVE_FINDFIRST
00426
00427 struct ffblk ffblk;
00428 #else
00429 #if DK_HAVE_DIRENT_H
00430
00431 DIR *dir;
00432 #else
00433
00434 #endif
00435 #endif
00436 #endif
00437
00438 } dk_dir_t;
00439
00440
00441
00446 typedef dk_dir_t dk_fne_t ;
00447
00448
00449
00451 typedef struct {
00452 void *obj;
00453 dk_fct_type_log *fct;
00454 int level;
00455 int maxlevel;
00456 } dk_log_t;
00457
00458
00459
00461 typedef struct {
00462 void *obj;
00463 dk_fct_type_ss *fct;
00464 } dk_ss_t;
00465
00466
00467
00472 typedef struct {
00473 int cmd;
00475 struct {
00476 char *buffer;
00477 size_t length;
00478 int cmd;
00479 } params;
00481 struct {
00482 char *buffer;
00483 size_t length;
00484 size_t used;
00485 } results;
00486 int return_value;
00487 int error_code;
00488 void *strm;
00489 } dk_stream_api_t;
00490
00491
00492
00495 typedef void dk_stream_fct_t DK_PR((dk_stream_api_t *api));
00496
00497
00498
00502 typedef struct {
00503 dk_stream_api_t api;
00504 void *data;
00505 dk_stream_fct_t *fct;
00506 unsigned long bytes;
00507 int flags;
00508 int opt;
00509 } dk_stream_t;
00510
00511
00512
00517 typedef struct {
00518 dk_stream_t *s;
00519 int flags;
00520 } dk_stream_wrapper_t;
00521
00522
00523
00524 #if 0
00525
00527 typedef struct {
00528 dk_stream_t *target;
00529 char *rlbuffer;
00530 char *flate_inbuffer;
00531 char *flate_outbuffer;
00532 int flags;
00533 size_t rlb_size;
00534 size_t fib_size;
00535 size_t fob_size;
00536 } dk_output_encoder_t;
00537 #endif
00538
00539
00541 typedef dk_stream_t *
00542 dk_stream_open_fct_t DK_PR((char *name, char *mode, int ign, int *reason));
00543
00544
00545
00550 typedef struct {
00551 char *suffix;
00552 dk_stream_open_fct_t *fct;
00553 } dk_stream_suffix_t;
00554
00555
00556
00560 struct _dk_storage_node {
00561 struct _dk_storage_node *p;
00562 struct _dk_storage_node *l;
00563 struct _dk_storage_node *r;
00564 short b;
00565 short w;
00566 void *o;
00568 union {
00569 char c;
00570 unsigned char uc;
00571 short s;
00572 unsigned short us;
00573 int i;
00574 unsigned int ui;
00575 long l;
00576 unsigned long ul;
00577 float f;
00578 double d;
00579 } v;
00580 };
00581
00583 typedef struct _dk_storage_node dk_storage_node_t;
00584
00586 typedef dk_storage_node_t *dk_storage_node_p;
00587
00588
00589
00596 typedef char dk_fct_eval_c_t(void *obj, int crit);
00597
00599 typedef unsigned char dk_fct_eval_uc_t(void *obj, int crit);
00600
00602 typedef short dk_fct_eval_s_t(void *obj, int crit);
00603
00605 typedef unsigned short dk_fct_eval_us_t(void *obj, int crit);
00606
00608 typedef int dk_fct_eval_i_t(void *obj, int crit);
00609
00611 typedef unsigned int dk_fct_eval_ui_t(void *obj, int crit);
00612
00614 typedef long dk_fct_eval_l_t(void *obj, int crit);
00615
00617 typedef unsigned long dk_fct_eval_ul_t(void *obj, int crit);
00618
00620 typedef float dk_fct_eval_f_t(void *obj, int crit);
00621
00623 typedef double dk_fct_eval_d_t(void *obj, int crit);
00624
00626 typedef int dk_fct_comp_t(void *o1, void *o2, int crit);
00627
00628
00629
00633 typedef struct {
00634 dk_storage_node_p *d;
00635 short l;
00636 dk_storage_node_t *r;
00637 int h;
00638 int c;
00639 int t;
00641 union {
00642 dk_fct_eval_c_t *c;
00643 dk_fct_eval_uc_t *uc;
00644 dk_fct_eval_s_t *s;
00645 dk_fct_eval_us_t *us;
00646 dk_fct_eval_i_t *i;
00647 dk_fct_eval_ui_t *ui;
00648 dk_fct_eval_l_t *l;
00649 dk_fct_eval_ul_t*ul;
00650 dk_fct_eval_f_t *f;
00651 dk_fct_eval_d_t *d;
00652 dk_fct_comp_t *comp;
00653 } e;
00654 void *i;
00655 } dk_storage_t;
00656
00657
00658
00662 struct _dk_storage_iterator {
00663 struct _dk_storage_iterator *l;
00664 struct _dk_storage_iterator *r;
00665 dk_storage_t *s;
00666 dk_storage_node_t *c;
00667 };
00669 typedef struct _dk_storage_iterator dk_storage_iterator_t;
00670
00671
00672
00676 typedef struct {
00677 dk_uword vers_major;
00678 dk_uword vers_minor;
00679 dk_uword elems;
00680 char **keys;
00681 char **values;
00682 } dk_stt_t;
00683
00684
00685
00689 typedef struct {
00690 char *n;
00691 char *v;
00692 int p;
00693 } dk_preference_t;
00694
00695
00696
00697
00701 typedef struct {
00702 struct {
00703 struct {
00704 int argc;
00705 char **argv;
00706 } o;
00707 struct {
00708 int argc;
00709 char **argv;
00710 } a;
00711 } a;
00712 struct {
00713 char *u;
00714 char *a;
00715 char *h;
00716 char *g;
00717 } n;
00718 struct {
00719 char *h;
00720 char *t;
00721 char *a;
00722 char *s;
00723 char *pt;
00724 char *etc;
00725 } d;
00726 struct {
00728 dk_storage_t *c;
00729 dk_storage_iterator_t *ci;
00731 dk_storage_t *a;
00732 dk_storage_iterator_t *ai;
00733 #if DK_HAVE_WINREG_H
00734
00735 int what;
00736 HKEY hklm_all;
00737 HKEY hklm_app;
00738 HKEY hkcu_all;
00739 HKEY hkcu_app;
00740 #else
00741
00742 dk_storage_t *s;
00744 dk_storage_iterator_t *si;
00746 dk_storage_t *u;
00748 dk_storage_iterator_t *ui;
00749 #endif
00750 int unc;
00751 int prf;
00752 } p;
00753 struct {
00754 char *f;
00755 char *d;
00756 } x;
00757 struct {
00758 int max;
00759 int nostdio;
00760 struct {
00761 int m;
00762 int f;
00763 unsigned char *c;
00764 int ide_type;
00765 } o;
00766 struct {
00767 int m;
00768 int f;
00769 unsigned char *c;
00770 int ide_type;
00771 } e;
00772 struct {
00773 int m;
00774 int k;
00775 int f;
00776 FILE *t;
00777 char *n;
00778 unsigned char *c;
00779 int ide_type;
00780 } f;
00781 #if DK_HAVE_SYSLOG
00782 struct {
00783 int m;
00784 char *i;
00785 int f;
00786 int o;
00787 } s;
00788 #endif
00789 struct {
00790 char *n;
00791 unsigned long lineno;
00792 } ef;
00793 } l;
00794 struct {
00795 char *l;
00796 char *r;
00797 char *e;
00798 dk_storage_t *s;
00799 dk_storage_iterator_t *si;
00800 int es;
00801 } loc;
00802 struct {
00803 unsigned long l;
00804 } td;
00805 struct {
00806 int prng_type;
00807 char *seed_file_name;
00808 } random;
00809 int relaxed_fopen_check;
00810 int relaxed_fopen_reason;
00811 int keep_temp_dir;
00812 } dk_app_t;
00813
00814
00818 #if DK_HAVE_PROTOTYPES
00819 typedef int dk_fct_tokenizer(void *data, void *tok, char *s, int *err);
00820 #else
00821 typedef int dk_fct_tokenizer();
00822 #endif
00823
00824
00825
00830 typedef struct {
00831 char *token_buffer;
00832 size_t buffer_size;
00833 size_t buffer_used;
00834 char **quotes;
00835 char *sct;
00836 char *whsp;
00837 char *nl;
00838 char comment;
00839 char *endquote;
00840 int error_code;
00841 dk_fct_tokenizer *fct;
00842 void *user_data;
00843 int state;
00844 unsigned long lineno;
00845 } dk_tokenizer_t ;
00846
00847
00848
00852 typedef struct {
00853 int what;
00854 union {
00855 struct {
00856 char *buffer;
00857 size_t lgt;
00858 size_t used;
00859 } b;
00860 struct {
00861 unsigned long a85val;
00862 size_t used;
00863 size_t linepos;
00864 size_t maxlinepos;
00865 int fl;
00866 } a85;
00867 struct {
00868 size_t linepos;
00869 size_t maxlinepos;
00870 int fl;
00871 } ah;
00872 struct {
00873 char *buffer;
00874 char lc;
00875 size_t used;
00876 int st;
00877 } rl;
00878 #if DK_HAVE_ZLIB_H
00879 struct {
00880 z_stream *zs;
00881 Bytef *ibuffer;
00882 uLong i_length;
00883 Bytef *obuffer;
00884 uLong o_length;
00885 uLong used;
00886 int stillok;
00887 } flate;
00888 #endif
00889 } c;
00890 } dk_of_cell_t;
00891
00892
00893
00898 typedef struct {
00899 int flags;
00900 dk_stream_t *target;
00901 dk_of_cell_t *cells;
00902 int n_of_cells;
00903 int have_data;
00904 } dk_of_t;
00905
00906
00907
00911 typedef struct {
00912 dk_stream_t *t;
00913 unsigned char c;
00914 unsigned short b;
00915 } dk_bitshift_t;
00916
00917
00918
00923 typedef struct {
00924 dk_bitshift_t *t;
00925 int flags;
00926 } dk_bitshift_wrapper_t;
00927
00928
00929
00932 typedef struct {
00933 char *t;
00934 char *m;
00935 char *a;
00936 } dk_le_ct_t;
00937
00938
00939
00942 typedef struct {
00943 char *dirname;
00944 char *filename;
00945 int flags;
00946 int error_code;
00947 unsigned long error_line;
00948 unsigned long cache_element;
00949 dk_le_ct_t *cache_ptr;
00950 void *data;
00951 } dk_le_t;
00952
00953
00954
00959 typedef struct {
00960 dk_le_t *l;
00961 int flags;
00962 } dk_le_wrapper_t;
00963
00964 #if DK_HAVE_SYS_SOCKET_H || DK_HAVE_WINSOCK2_H
00965
00966
00967
00970 typedef struct {
00971 int what;
00972 struct {
00973 struct sockaddr_in sin;
00974 unsigned short portmin;
00975 unsigned short portmax;
00976 } ip4;
00977 } dk_ip_addr_t;
00978
00979
00980
00983 typedef struct {
00984 int state;
00985 int flags;
00986 #if DK_HAVE_WINSOCK2_H
00987 SOCKET s;
00988 #else
00989 int s;
00990 #endif
00991 struct {
00992 struct {
00993 dk_ip_addr_t w;
00994 dk_ip_addr_t f;
00995 } l;
00996 struct {
00997 dk_ip_addr_t w;
00998 dk_ip_addr_t f;
00999 } r;
01000 } a;
01001 struct {
01002 time_t seconds;
01003 long usecs;
01004 } to;
01005 int error_code;
01006 } dk_tcpip_t;
01007
01008
01011 typedef struct {
01012 int is_tty;
01013 #if DK_HAVE_TCGETATTR
01014 struct termios ori;
01015 #else
01016 #if defined(TCGETS)
01017 struct termios ori;
01018 #else
01019 #if DK_HAVE_GETSTDHANDLE
01020 HANDLE consoleHandle;
01021 DWORD ori;
01022 #else
01023 unsigned long dummy;
01024 #endif
01025 #endif
01026 #endif
01027 } dk_echo_t;
01028
01029
01030
01033 typedef struct _font_replacement_ {
01034 char *n;
01035 char *f;
01036 char *l;
01037 char *s;
01038 char *ft;
01039 char *tn;
01040 char *pl;
01041 char *ps;
01042 char *tl;
01043 char *ts;
01044 dk_storage_t *d;
01045 dk_storage_iterator_t *di;
01046 int ff;
01047 int t;
01048 unsigned long num;
01049 } dk_font_replacement_t;
01050
01051
01052
01055 typedef struct _one_font_mapping {
01056 dk_storage_t *r;
01057 dk_storage_iterator_t *ri;
01058 dk_storage_t *byname;
01059 dk_storage_iterator_t *bynamei;
01060 unsigned char used;
01061 size_t noe;
01062 } dk_one_font_mapping_t;
01063
01064
01065
01068 typedef struct _font_mapping_ {
01069 dk_one_font_mapping_t *m;
01070 dk_storage_t *d;
01071 dk_storage_iterator_t *di;
01072 int error_code;
01073 unsigned long err_lineno;
01074 } dk_font_mapping_t;
01075
01076
01077
01078
01079
01080
01082 typedef dk_bitfield_t *DKrause__BitField;
01084 typedef dk_bitmatrix_t *DKrause__BitMatrix;
01086 typedef dk_stream_wrapper_t *DKrause__Stream;
01088 typedef dk_bitshift_wrapper_t *DKrause__BitStream;
01090 typedef dk_stt_t *DKrause__StringTable;
01092 typedef dk_app_t *DKrause__Application;
01094 typedef dk_tokenizer_t *DKrause__Tokenizer;
01096 typedef dk_le_wrapper_t *DKrause__LaTeXEncoder;
01097
01098 #endif
01099
01100 #if DK_HAVE_LONG_LONG_INT
01101
01102 #define DK_MAX_LONG_LONG_UNSIGNED 0xFFFFFFFFFFFFFFFFULL
01103
01104 #define DK_MAX_LONG_LONG_INT 0x7FFFFFFFFFFFFFFFLL
01105
01106 #define DK_ZERO_LONG_LONG_UNSIGNED 0ULL
01107
01108 #define DK_ZERO_LONG_LONG_INT 0LL
01109
01110 #define DK_ONE_LONG_LONG_UNSIGNED 1ULL
01111
01112 #define DK_ONE_LONG_LONG_INT 1LL
01113 #else
01114
01115 #define DK_MAX_LONG_LONG_UNSIGNED 0xFFFFFFFFUL
01116
01117 #define DK_MAX_LONG_LONG_INT 0x7FFFFFFFL
01118
01119 #define DK_ZERO_LONG_LONG_UNSIGNED 0UL
01120
01121 #define DK_ZERO_LONG_LONG_INT 0L
01122
01123 #define DK_ONE_LONG_LONG_UNSIGNED 1UL
01124
01125 #define DK_ONE_LONG_LONG_INT 1L
01126 #endif
01127
01128 #if SIZEOF_LONG == 8
01129
01130 #define DK_MAX_ULONG (0xFFFFFFFFFFFFFFFFUL)
01131
01132 #define DK_MAX_LONG (0x7FFFFFFFFFFFFFFFL)
01133 #else
01134
01135 #define DK_MAX_ULONG (0xFFFFFFFFUL)
01136
01137 #define DK_MAX_LONG (0x7FFFFFFFL)
01138 #endif
01139
01140 #if SIZEOF_INT == 4
01141
01142 #define DK_MAX_UNSIGNED (0xFFFFFFFFU)
01143
01144 #define DK_MAX_INT (0x7FFFFFFF)
01145 #else
01146
01147 #define DK_MAX_UNSIGNED (0xFFFFU)
01148
01149 #define DK_MAX_INT (0x7FFF)
01150 #endif
01151
01152 #if SIZEOF_SHORT == 4
01153
01154 #define DK_MAX_USHORT (0xFFFFFFFFU)
01155
01156 #define DK_MAX_SHORT (0x7FFFFFFF)
01157 #else
01158
01159 #define DK_MAX_USHORT (0xFFFFU)
01160
01161 #define DK_MAX_SHORT (0x7FFF)
01162 #endif
01163
01164 #if SIZEOF_SIZE_T == 2
01165
01166 #define DK_MAX_SIZE_T 0xFFFFU
01167 #else
01168 #if SIZEOF_SIZE_T == 4
01169
01170 #define DK_MAX_SIZE_T 0xFFFFFFFFUL
01171 #else
01172 #if SIZEOF_SIZE_T == 8
01173
01174 #define DK_MAX_SIZE_T 0xFFFFFFFFFFFFFFFFULL
01175 #endif
01176 #endif
01177 #endif
01178
01180 #define DK_APP_ENCODING_DEFAULT 0
01181
01183 #define DK_APP_ENCODING_UTF8 1
01184
01185 #endif
01186