ba80bbb96726f4cd103765637f03e8f15579565a
[yaz-moved-to-github.git] / include / yaz / yaz-ccl.h
1 /*
2  * Copyright (c) 1995-1999, 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 name 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: yaz-ccl.h,v $
27  * Revision 1.2  1999-12-20 15:20:13  adam
28  * Implemented ccl_pquery to convert from CCL tree to prefix query.
29  *
30  * Revision 1.1  1999/11/30 13:47:11  adam
31  * Improved installation. Moved header files to include/yaz.
32  *
33  * Revision 1.8  1997/09/01 08:49:54  adam
34  * New windows NT/95 port using MSV5.0. To export DLL functions the
35  * YAZ_EXPORT modifier was added. Defined in yconfig.h.
36  *
37  * Revision 1.7  1997/06/23 10:30:45  adam
38  * Added ODR stream as parameter to ccl_rpn_query and ccl_scan_query.
39  *
40  * Revision 1.6  1997/05/14 06:53:54  adam
41  * C++ support.
42  *
43  * Revision 1.5  1995/09/29 17:12:14  quinn
44  * Smallish
45  *
46  * Revision 1.4  1995/09/27  15:02:54  quinn
47  * Modified function heads & prototypes.
48  *
49  * Revision 1.3  1995/05/16  08:50:40  quinn
50  * License, documentation, and memory fixes
51  *
52  *
53  */
54
55 #ifndef YAZ_CCL_H
56 #define YAZ_CCL_H
57
58 #include <yaz/yconfig.h>
59 #include <yaz/proto.h>
60 #include <yaz/ccl.h>
61 #include <yaz/odr.h>
62 #include <yaz/yaz-util.h>
63
64 #ifdef __cplusplus
65 extern "C" {
66 #endif
67
68 YAZ_EXPORT Z_RPNQuery *ccl_rpn_query (ODR o, struct ccl_rpn_node *p);
69 YAZ_EXPORT Z_AttributesPlusTerm *ccl_scan_query (ODR o, struct ccl_rpn_node *p);
70 YAZ_EXPORT void ccl_pquery (WRBUF w, struct ccl_rpn_node *p);
71
72 #ifdef __cplusplus
73 }
74 #endif
75
76 #endif