Added suport for EXPLAIN Proxy servers - added settings databasePath
[idzebra-moved-to-github.git] / index / zinfo.h
1 /*
2  * Copyright (C) 1994-1998, Index Data I/S 
3  * All rights reserved.
4  * Sebastian Hammer, Adam Dickmeiss
5  *
6  * $Log: zinfo.h,v $
7  * Revision 1.5  1998-06-08 14:43:16  adam
8  * Added suport for EXPLAIN Proxy servers - added settings databasePath
9  * and explainDatabase to facilitate this. Increased maximum number
10  * of databases and attributes in one register.
11  *
12  * Revision 1.4  1998/05/20 10:12:21  adam
13  * Implemented automatic EXPLAIN database maintenance.
14  * Modified Zebra to work with ASN.1 compiled version of YAZ.
15  *
16  * Revision 1.3  1998/03/05 08:45:13  adam
17  * New result set model and modular ranking system. Moved towards
18  * descent server API. System information stored as "SGML" records.
19  *
20  * Revision 1.2  1996/05/22 08:22:00  adam
21  * Added public ZebDatabaseInfo structure.
22  *
23  * Revision 1.1  1996/05/13 14:23:07  adam
24  * Work on compaction of set/use bytes in dictionary.
25  *
26  */
27 #ifndef ZINFO_H
28 #define ZINFO_H
29
30 #include <data1.h>
31 #include "recindex.h"
32
33 typedef struct zebraExplainInfo *ZebraExplainInfo;
34 typedef struct zebDatabaseInfo ZebDatabaseInfo;
35 ZebraExplainInfo zebraExplain_open (Records records, data1_handle dh,
36                                     Res res,
37                                     int writeFlag,
38                                     void *updateHandle,
39                                     int (*updateFunc)(void *handle,
40                                                       Record drec,
41                                                       data1_node *n));
42 void zebraExplain_close (ZebraExplainInfo zei, int writeFlag,
43                          int (*updateH)(Record drec, data1_node *n));
44 int zebraExplain_curDatabase (ZebraExplainInfo zei, const char *database);
45 int zebraExplain_newDatabase (ZebraExplainInfo zei, const char *database,
46                               int explain_database);
47 int zebraExplain_lookupSU (ZebraExplainInfo zei, int set, int use);
48 int zebraExplain_addSU (ZebraExplainInfo zei, int set, int use);
49 void zebraExplain_addSchema (ZebraExplainInfo zei, Odr_oid *oid);
50 void zebraExplain_recordCountIncrement (ZebraExplainInfo zei, int adjust_num);
51 void zebraExplain_recordBytesIncrement (ZebraExplainInfo zei, int adjust_num);
52 int zebraExplain_runNumberIncrement (ZebraExplainInfo zei, int adjust_num);
53 void zebraExplain_loadAttsets (data1_handle dh, Res res);
54
55 typedef struct {
56     int recordSize;
57     int recordOffset;
58     int runNumber;
59 } RecordAttr;
60 RecordAttr *rec_init_attr (ZebraExplainInfo zei, Record rec);
61
62 #endif