X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Fkcompare.c;h=ba8a6ef12a22ddd088e680e232cfe133bb4e21f1;hb=4ed5fbcd29d2a98b048d1d94510b262d352b4f7c;hp=e259f7772faaeb7d884aed21b7370f9cd3375283;hpb=ce3907338568fce46c5751e7e1091a5ad1c8e291;p=idzebra-moved-to-github.git diff --git a/index/kcompare.c b/index/kcompare.c index e259f77..ba8a6ef 100644 --- a/index/kcompare.c +++ b/index/kcompare.c @@ -1,10 +1,24 @@ /* - * Copyright (C) 1994-1998, Index Data I/S + * Copyright (C) 1994-1999, Index Data * All rights reserved. * Sebastian Hammer, Adam Dickmeiss * * $Log: kcompare.c,v $ - * Revision 1.23 1998-03-05 08:45:12 adam + * Revision 1.27 1999-05-12 13:08:06 adam + * First version of ISAMS. + * + * Revision 1.26 1999/02/02 14:50:54 adam + * Updated WIN32 code specific sections. Changed header. + * + * Revision 1.25 1998/06/08 15:26:06 adam + * Minor changes. + * + * Revision 1.24 1998/06/08 14:43:12 adam + * Added suport for EXPLAIN Proxy servers - added settings databasePath + * and explainDatabase to facilitate this. Increased maximum number + * of databases and attributes in one register. + * + * Revision 1.23 1998/03/05 08:45:12 adam * New result set model and modular ranking system. Moved towards * descent server API. System information stored as "SGML" records. * @@ -286,3 +300,37 @@ ISAMC_M key_isamc_m (Res res) return me; } +ISAMS_M key_isams_m (Res res) +{ + static ISAMS_M me = NULL; + + if (me) + return me; + + me = isams_getmethod (); + + me->compare_item = key_compare; + + me->code_start = iscz1_code_start; + me->code_item = iscz1_code_item; + me->code_stop = iscz1_code_stop; + + me->debug = atoi(res_get_def (res, "isamsDebug", "0")); + + return me; +} + + +int key_SU_code (int ch, char *out) +{ + int i; + for (i = 0; ch; i++) + { + if (ch > 63) + out[i] = 128 + (ch & 63); + else + out[i] = 1 + ch; + ch = ch >> 6; + } + return i; +}