974d80c8f5a4ec059b614ea41b76a40ce32001ab
[idzebra-moved-to-github.git] / include / zebramap.h
1 /*
2  * Copyright (C) 1994-1999, Index Data
3  * All rights reserved.
4  * Sebastian Hammer, Adam Dickmeiss
5  *
6  * $Log: zebramap.h,v $
7  * Revision 1.8  1999-02-12 13:29:21  adam
8  * Implemented position-flag for registers.
9  *
10  * Revision 1.7  1999/02/02 14:50:46  adam
11  * Updated WIN32 code specific sections. Changed header.
12  *
13  * Revision 1.6  1998/06/23 15:33:33  adam
14  * Added feature to specify sort criteria in query (type 7 specifies
15  * sort flags).
16  *
17  * Revision 1.5  1998/03/05 08:39:26  adam
18  * Minor changes to zebramap data structures. Changed query
19  * mapping rules.
20  *
21  * Revision 1.4  1998/02/10 12:03:05  adam
22  * Implemented Sort.
23  *
24  * Revision 1.3  1997/11/18 10:05:08  adam
25  * Changed character map facility so that admin can specify character
26  * mapping files for each register type, w, p, etc.
27  *
28  * Revision 1.2  1997/10/29 12:02:47  adam
29  * Added missing prototype.
30  *
31  * Revision 1.1  1997/10/27 14:33:04  adam
32  * Moved towards generic character mapping depending on "structure"
33  * field in abstract syntax file. Fixed a few memory leaks. Fixed
34  * bug with negative integers when doing searches with relational
35  * operators.
36  *
37  */
38
39 #ifndef ZEBRAMAP_H
40 #define ZEBRAMAP_H
41
42 #include <proto.h>
43 #include <res.h>
44
45 #ifdef __cplusplus
46 extern "C" {
47 #endif
48
49 typedef struct zebra_maps *ZebraMaps;
50 ZebraMaps zebra_maps_open (Res res);
51
52 void zebra_maps_close (ZebraMaps zm);
53
54 const char **zebra_maps_input (ZebraMaps zms, unsigned reg_id,
55                                const char **from, int len);
56 const char *zebra_maps_output(ZebraMaps, unsigned reg_id, const char **from);
57
58 int zebra_maps_attr (ZebraMaps zms, Z_AttributesPlusTerm *zapt,
59                      unsigned *reg_id, char **search_type, char **rank_type,
60                      int *complete_flag, int *sort_flag);
61
62 int zebra_maps_sort (ZebraMaps zms, Z_SortAttributes *sortAttributes);
63
64 int zebra_maps_is_complete (ZebraMaps zms, unsigned reg_id);
65 int zebra_maps_is_sort (ZebraMaps zms, unsigned reg_id);
66 int zebra_maps_is_positioned (ZebraMaps zms, unsigned reg_id);
67 #ifdef __cplusplus
68 }
69 #endif
70
71 #endif