Ported ir-tcl to use the beta releases of tcl7.5/tk4.1.
[ir-tcl-moved-to-github.git] / ir-tcl.h
1 /*
2  * Copyright (c) 1995, 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.12  1996-02-05 17:58:04  adam
28  * Ported ir-tcl to use the beta releases of tcl7.5/tk4.1.
29  *
30  * Revision 1.11  1995/09/21  13:11:52  adam
31  * Support of dynamic loading.
32  * Test script uses load command if necessary.
33  *
34  * Revision 1.10  1995/06/22  07:15:59  adam
35  * Version number moved to Makefile.in
36  * Some work on autoconf.
37  *
38  * Revision 1.9  1995/06/19  13:54:21  adam
39  * New version.
40  *
41  * Revision 1.8  1995/06/19  13:06:08  adam
42  * New define: IR_TCL_VERSION.
43  *
44  * Revision 1.7  1995/05/29  08:44:23  adam
45  * Work on delete of objects.
46  *
47  * Revision 1.6  1995/05/23  15:34:49  adam
48  * Many new settings, userInformationField, smallSetUpperBound, etc.
49  * A number of settings are inherited when ir-set is executed.
50  * This version is incompatible with the graphical test client (client.tcl).
51  *
52  * Revision 1.5  1995/03/20  08:53:27  adam
53  * Event loop in tclmain.c rewritten. New method searchStatus.
54  *
55  * Revision 1.4  1995/03/17  18:26:18  adam
56  * Non-blocking i/o used now. Database names popup as cascade items.
57  *
58  * Revision 1.3  1995/03/17  07:50:28  adam
59  * Headers have changed a little.
60  *
61  */
62
63 #ifndef IR_TCL_H
64 #define IR_TCL_H
65
66 #if TCL_MAJOR_VERSION > 7 || (TCL_MAJOR_VERSION == 7 && TCL_MINOR_VERSION >= 5)
67 #define IRTCL_GENERIC_FILES 1
68 #else
69 #define IRTCL_GENERIC_FILES 0
70 #endif
71
72 int Irtcl_Init (Tcl_Interp *interp);
73
74 #if IRTCL_GENERIC_FILES
75 void ir_select_add          (Tcl_File file, void *obj);
76 void ir_select_add_write    (Tcl_File file, void *obj);
77 void ir_select_remove       (Tcl_File file, void *obj);
78 void ir_select_remove_write (Tcl_File file, void *obj);
79 #else
80 void ir_select_add          (int fd, void *obj);
81 void ir_select_add_write    (int fd, void *obj);
82 void ir_select_remove       (int fd, void *obj);
83 void ir_select_remove_write (int fd, void *obj);
84 #endif
85
86 void ir_select_read         (ClientData clientData);
87 void ir_select_write        (ClientData clientData);
88
89 #endif