Better error reporting and aligned with Tcl/Tk style.
[ir-tcl-moved-to-github.git] / ir-tcl.h
1 /*
2  * Copyright (c) 1995-1996, Index Data.
3  *
4  * Permission to use, copy, modify, distribute, and sell this software and
5  * its documentation, in whole or in part, for any purpose, is hereby granted,
6  * provided that:
7  *
8  * 1. This copyright and permission notice appear in all copies of the
9  * software and its documentation. Notices of copyright or attribution
10  * which appear at the beginning of any file must remain unchanged.
11  *
12  * 2. The names of Index Data or the individual authors may not be used to
13  * endorse or promote products derived from this software without specific
14  * prior written permission.
15  *
16  * THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT WARRANTY OF ANY KIND,
17  * EXPRESS, IMPLIED, OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
18  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
19  * IN NO EVENT SHALL INDEX DATA BE LIABLE FOR ANY SPECIAL, INCIDENTAL,
20  * INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES
21  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR
22  * NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
23  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
24  * OF THIS SOFTWARE.
25  *
26  * $Log: ir-tcl.h,v $
27  * Revision 1.16  1997-04-13 18:57:28  adam
28  * Better error reporting and aligned with Tcl/Tk style.
29  * Rework of notifier code with Tcl_File handles.
30  *
31  * Revision 1.15  1996/07/26 09:15:09  adam
32  * IrTcl version 1.2 patch level 1.
33  *
34  * Revision 1.14  1996/02/21  10:16:19  adam
35  * Simplified select handling. Only one function ir_tcl_select_set has
36  * to be externally defined.
37  *
38  * Revision 1.13  1996/02/19  15:41:54  adam
39  * Better log messages.
40  * Minor improvement of connect method.
41  *
42  * Revision 1.12  1996/02/05  17:58:04  adam
43  * Ported ir-tcl to use the beta releases of tcl7.5/tk4.1.
44  *
45  * Revision 1.11  1995/09/21  13:11:52  adam
46  * Support of dynamic loading.
47  * Test script uses load command if necessary.
48  *
49  * Revision 1.10  1995/06/22  07:15:59  adam
50  * Version number moved to Makefile.in
51  * Some work on autoconf.
52  *
53  * Revision 1.9  1995/06/19  13:54:21  adam
54  * New version.
55  *
56  * Revision 1.8  1995/06/19  13:06:08  adam
57  * New define: IR_TCL_VERSION.
58  *
59  * Revision 1.7  1995/05/29  08:44:23  adam
60  * Work on delete of objects.
61  *
62  * Revision 1.6  1995/05/23  15:34:49  adam
63  * Many new settings, userInformationField, smallSetUpperBound, etc.
64  * A number of settings are inherited when ir-set is executed.
65  * This version is incompatible with the graphical test client (client.tcl).
66  *
67  * Revision 1.5  1995/03/20  08:53:27  adam
68  * Event loop in tclmain.c rewritten. New method searchStatus.
69  *
70  * Revision 1.4  1995/03/17  18:26:18  adam
71  * Non-blocking i/o used now. Database names popup as cascade items.
72  *
73  * Revision 1.3  1995/03/17  07:50:28  adam
74  * Headers have changed a little.
75  *
76  */
77
78 #ifndef IR_TCL_H
79 #define IR_TCL_H
80
81 #ifndef WINDOWS
82 int Irtcl_Init (Tcl_Interp *interp);
83 #endif
84
85 void *ir_tcl_malloc (size_t size);
86 void ir_tcl_select_set (void (*f)(ClientData clientData, int r, int w, int e),
87                         int fd, ClientData clientData, int r, int w, int e);
88 #endif