1 /*************************************************************************************************
2  * The extended advanced API of QDBM
3  *                                                      Copyright (C) 2000-2006 Mikio Hirabayashi
4  * This file is part of QDBM, Quick Database Manager.
5  * QDBM is free software; you can redistribute it and/or modify it under the terms of the GNU
6  * Lesser General Public License as published by the Free Software Foundation; either version
7  * 2.1 of the License or any later version.  QDBM is distributed in the hope that it will be
8  * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
9  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
10  * details.
11  * You should have received a copy of the GNU Lesser General Public License along with QDBM; if
12  * not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
13  * 02111-1307 USA.
14  *************************************************************************************************/
15 
16 
17 #ifndef _VISTA_H                         /* duplication check */
18 #define _VISTA_H
19 
20 #if defined(__cplusplus)                 /* export for C++ */
21 extern "C" {
22 #endif
23 
24 
25 
26 /*************************************************************************************************
27  * macros to borrow symbols from Villa
28  *************************************************************************************************/
29 
30 
31 #include <depot.h>
32 #include <curia.h>
33 #include <cabin.h>
34 #include <stdlib.h>
35 
36 #define VLREC          VSTREC
37 #define VLIDX          VSTIDX
38 #define VLLEAF         VSTLEAF
39 #define VLNODE         VSTNODE
40 #define VLCFUNC        VSTCFUNC
41 
42 #define VL_CMPLEX      VST_CMPLEX
43 #define VL_CMPINT      VST_CMPINT
44 #define VL_CMPNUM      VST_CMPNUM
45 #define VL_CMPDEC      VST_CMPDEC
46 
47 #define VILLA          VISTA
48 
49 #define VL_OREADER     VST_OREADER
50 #define VL_OWRITER     VST_OWRITER
51 #define VL_OCREAT      VST_OCREAT
52 #define VL_OTRUNC      VST_OTRUNC
53 #define VL_ONOLCK      VST_ONOLCK
54 #define VL_OLCKNB      VST_OLCKNB
55 #define VL_OZCOMP      VST_OZCOMP
56 
57 #define VL_DOVER       VST_DOVER
58 #define VL_DKEEP       VST_DKEEP
59 #define VL_DCAT        VST_DCAT
60 #define VL_DDUP        VST_DDUP
61 
62 #define VL_JFORWARD    VST_JFORWARD
63 #define VL_JBACKWARD   VST_JBACKWARD
64 
65 #define vlopen         vstopen
66 #define vlclose        vstclose
67 #define vlput          vstput
68 #define vlout          vstout
69 #define vlget          vstget
70 #define vlvsiz         vstvsiz
71 #define vlvnum         vstvnum
72 #define vlputlist      vstputlist
73 #define vloutlist      vstoutlist
74 #define vlgetlist      vstgetlist
75 #define vlgetcat       vstgetcat
76 #define vlcurfirst     vstcurfirst
77 #define vlcurlast      vstcurlast
78 #define vlcurprev      vstcurprev
79 #define vlcurnext      vstcurnext
80 #define vlcurjump      vstcurjump
81 #define vlcurkey       vstcurkey
82 #define vlcurval       vstcurval
83 #define vlcurput       vstcurput
84 #define vlcurout       vstcurout
85 #define vlsettuning    vstsettuning
86 #define vlsync         vstsync
87 #define vloptimize     vstoptimize
88 #define vlname         vstname
89 #define vlfsiz         vstfsiz
90 #define vllnum         vstlnum
91 #define vlnnum         vstnnum
92 #define vlrnum         vstrnum
93 #define vlwritable     vstwritable
94 #define vlfatalerror   vstfatalerror
95 #define vlinode        vstinode
96 #define vlmtime        vstmtime
97 #define vltranbegin    vsttranbegin
98 #define vltrancommit   vsttrancommit
99 #define vltranabort    vsttranabort
100 #define vlremove       vstremove
101 #define vlrepair       vstrepair
102 #define vlexportdb     vstexportdb
103 #define vlimportdb     vstimportdb
104 #define vlgetcache     vstgetcache
105 #define vlcurkeycache  vstcurkeycache
106 #define vlcurvalcache  vstcurvalcache
107 #define vlsetfbpsiz    vstsetfbpsiz
108 #define vlgetflags     vstgetflags
109 #define vlsetflags     vstsetflags
110 
111 #if !defined(_VISTA_C)
112 #include <villa.h>
113 #endif
114 
115 
116 
117 /*************************************************************************************************
118  * features for experts
119  *************************************************************************************************/
120 
121 
122 #if defined(_MSC_VER) && !defined(QDBM_INTERNAL) && !defined(QDBM_STATIC)
123 #define MYEXTERN extern __declspec(dllimport)
124 #else
125 #define MYEXTERN extern
126 #endif
127 
128 
129 /* Number of division of the database. */
130 MYEXTERN int vscrdnum;
131 
132 
133 
134 #undef MYEXTERN
135 
136 #if defined(__cplusplus)                 /* export for C++ */
137 }
138 #endif
139 
140 #endif                                   /* duplication check */
141 
142 
143 /* END OF FILE */
144