forked from rogercgui/cisis
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathciapi.h
675 lines (494 loc) · 28.1 KB
/
ciapi.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
#ifndef __CIAPI_H
#define __CIAPI_H
/*
Uso de las funciones de ciapi desde programas en c.
tratando de modificar los programas existes lo menos posibles.
*/
/*
En los programas en C usar RECSTRU*, TRMSTR0U* y DBXSTRU* como void*
*/
#if WIN32
#define THREADDEC __declspec(thread)
#endif /* WIN32 */
#include "cisis.h"
#include "cirun.h"
//nrecs, vrecp, ntrms, vtrmp
#define nrecs *(cisisnrecs( ciapip ))
#define vrecp cisisvrecp( ciapip )
#define ntrms *(cisisntrms( ciapip ))
#define vtrmp cisisvtrmp( ciapip )
#define ndbxs *(cisisndbxs( ciapip ))
#define maxnrec cisismaxnrec( ciapip )
#define maxntrm cisismaxntrm( ciapip )
// Uso de las variables TRMxxx
#define TRMrc *(cisisTermTRMrc( trmp ))
#define TRMkey cisisTermTRMkey( trmp )
#define TRMpmfn *(cisisTermTRMpmfn( trmp ))
#define TRMptag *(cisisTermTRMptag( trmp ))
#define TRMpocc *(cisisTermTRMpocc( trmp ))
#define TRMpcnt *(cisisTermTRMpcnt( trmp ))
#define TRMpost *(cisisTermTRMpost( trmp ))
#define TRMlcase *(cisisTermTRMlcase( trmp ))
#define TRMxytotp *(cisisTermTRMxytotp( trmp ))
#define TDBname *(cisisTermTDBname( trmp ))
#define VTRMrc(r) *(cisisTermVTRMrc( ciapip, r ))
#define VTRMkey(r) cisisTermVTRMkey( ciapip, r )
#define VTRMxytotp(r) *(cisisTermVTRMxytotp( ciapip, r ))
#define VTRMpmfn(r) *(cisisTermVTRMpmfn( ciapip, r ))
#define VTRMptag(r) *(cisisTermVTRMptag( ciapip, r ))
#define VTRMpocc(r) *(cisisTermVTRMpocc( ciapip, r ))
#define VTRMpcnt(r) *(cisisTermVTRMpcnt( ciapip, r ))
#define VTDBname(r) *(cisisTermVTDBname( ciapip, r ))
// Uso de las variables XXXyyy asociadas a RECSTRU
#define MF0nxtmfn *(cisisRecordMF0nxtmfn( recp ))
#define RECrc *(cisisRecordRECrc( recp ))
#define RECtype *(cisisRecordRECtype( recp ))
#define RECnbytes *(cisisRecordRECnbytes( recp ))
#define RECdbxp *(cisisRecordRECdbxp( recp ))
#define RDBmsmfn *(cisisRecordRDBmsmfn( recp ))
#define RDBvderp *(cisisRecordRDBvderp( recp ))
#define RDBname cisisRecordRDBname( recp )
#define RDBvgzrp *(cisisRecordRDBvgzrp( recp ))
#define MFRmfn *(cisisRecordMFRmfn( recp ))
#define MFRmfrl *(cisisRecordMFRmfrl( recp ))
#define MFRmfbwb *(cisisRecordMFRmfbwb( recp ))
#define MFRmfbwp *(cisisRecordMFRmfbwp( recp ))
#define MFRnvf *(cisisRecordMFRnvf( recp ))
#define MFRbase *(cisisRecordMFRbase( recp ))
#define MFRstatus *(cisisRecordMFRstatus( recp ))
// Uso de las variables Vxxx
#define VRECdbxp( r ) *(cisisRecordVRECdbxp( ciapip, r ))
#define VRECrc( r ) *(cisisRecordVRECrc( ciapip, r ))
#define VRECtype( r ) *(cisisRecordVRECtype( ciapip, r ))
#define VREClock( r ) *(cisisRecordVREClock( ciapip, r ))
#define VRECwlock( r ) *(cisisRecordVRECwlock( ciapip, r ))
#define VRECgdbl( r ) *(cisisRecordVRECgdbl( ciapip, r ))
#define VRECgdbw( r ) *(cisisRecordVRECgdbw( ciapip, r ))
#define VMFRmfn( r ) *(cisisRecordVMFRmfn( ciapip, r ))
#define VMFRstatus( r ) *(cisisRecordVMFRstatus( ciapip, r ))
#define VMFRnvf( r) *(cisisRecordVMFRnvf( ciapip, r ))
#define VMFRmfrl( r ) *(cisisRecordVMFRmfrl( ciapip, r ))
#define VMFRbase( r ) *(cisisRecordVMFRbase( ciapip, r ))
#define VDIRtag( r, x ) cisisRecordVDIRtag( ciapip, r, x )
#define VDIRlen( r, x ) cisisRecordVDIRlen( ciapip, r, x )
#define VFIELDP( irec, xdir ) cisisRecordVFIELDP( ciapip, irec, xdir )
#define VMF0nxtmfn( r ) *(cisisRecordVMF0nxtmfn( ciapip, r ))
#define VMF0mfcxx1( r ) *(cisisRecordVMF0mfcxx1( ciapip, r ))
#define VMF0mfcxx2( r ) *(cisisRecordVMF0mfcxx2( ciapip, r ))
#define VMF0mfcxx3( r ) *(cisisRecordVMF0mfcxx3( ciapip, r ))
#define VMFX( r ) cisisVMFX( ciapip, r )
#define VRDBname( r ) cisisRecordVRDBname( ciapip, r )
#define VRDBnetws( r ) *(cisisRecordVRDBnetws( ciapip, r ))
#define VRDBdelxx( r ) *(cisisRecordVRDBdelxx( ciapip, r ))
#define VRDBewlxx( r ) *(cisisRecordVRDBewlxx( ciapip, r ))
#define VRDBmsopw(r) *(cisisRecordVRDBmsopw( ciapip, r ))
#define VRDBmsopn(r) *(cisisRecordVRDBmsopn( ciapip, r ))
//uso de registro ...
#define DIRtag(x) cisisRecordDIRtag( recp, x )
#define DIRlen(x) cisisRecordDIRlen( recp, x )
#define FIELDP(xdir) cisisRecordFIELDP( recp, xdir )
//equivalente a las funciones de CISIS para creacion de RECSTRU
#define record(x,dbn,mfn) cisisRecord( ciapip, x, dbn, mfn )
#define RECORD(irec,dbn,mfn) recp=vrecp[record(irec,dbn,mfn)]
#define recallok(irec, nbytes) cisisRecordAlloc( ciapip, irec, nbytes )
#define RECFREE(x) cisisRecordDelete( x )
#define recmfp() cisisRecordrecmfp( recp )
#define recwmast(crecp,recp,comb,comp,newblk,wlen) cisisrecwmast(crecp,recp,comb,comp,newblk,wlen)
#define recxref(recp,mfn,comb,comp) cisisrecxref(recp,mfn,comb,comp)
//equivalente a las funciones de CISIS para creacion de TRMSTRU
#define term(itrm,dbn,key) cisisTerm( ciapip,itrm,dbn,key )
#define TERM(itrm,dbn,key) trmp = vtrmp[cisisTerm( ciapip,itrm,dbn,key )]
#define NXTERM(itrm) trmp = cisisTermNext( ciapip, itrm )
#define nxterm(itrm) cisisTermNext( ciapip, itrm )
#define posting(itrm,n) cisisTermPosting( ciapip, itrm, n)
#define trmalloc( itrm, nbytes) cisisTermAlloc( ciapip, itrm, nbytes )
#define TRMALLOC( itrm, nbytes) trmp = cisisTermAlloc( ciapip, itrm, nbytes )
//trace
#define dbxtrace *(cisisdbxtrace( ciapip ))
#define rectrace *(cisisrectrace( ciapip ))
#define dectrace *(cisisdectrace( ciapip ))
#define trmtrace *(cisistrmtrace( ciapip ))
#define multrace *(cisismultrace( ciapip ))
#define b70trace *(cisisb70trace( ciapip ))
#define b40trace *(cisisb40trace( ciapip ))
#define b50trace *(cisisb50trace( ciapip ))
#define fmttrace *(cisisfmttrace( ciapip ))
#define fsttrace *(cisisfsttrace( ciapip ))
#define cgitrace *(cisiscgitrace( ciapip ))
// FMT
#define fmt_gener( pgmpp, fmtp ) cisisfmt_gener( ciapip, pgmpp, fmtp )
#define fmt_inter( pgmp, irec, lw, areap, asize ) cisisfmt_inter( ciapip, pgmp,irec, lw, areap, asize)
#define fmt_free( pgmp ) cisisfmt_free( ciapip, pgmp )
#define fmterrxy( pgmp ) cisisfmterrxy( ciapip, pgmp )
#define recfmt(idx,lw,fmt,area,asize) cisisrecfmt(ciapip,vrecp[idx],lw,fmt,area,asize)
#define recread(recp, mfn) cisisrecread(ciapip, recp, mfn)
#define recreset(dbnamp, mfn1, mfn2, xrec, parmtell) cisisrecreset(ciapip, dbnamp, mfn1, mfn2, vrecp[xrec], parmtell)
#define recunlck(irec, option) cisisrecunlck(ciapip, vrecp[irec], option)
#define recreadl *(cisisrecreadl( ciapip ))
#define recreadb *(cisisrecreadb( ciapip ))
#define recreadp *(cisisrecreadp( ciapip ))
#define fmt_fsiz *(cisisfmt_fsiz( ciapip ))
#define fmt_errof *(cisisfmt_errof( ciapip ))
#define fmt_error *(cisisfmt_error( ciapip ))
//FST
#define fst_gener(pgmpp, fstspecp) cisisfst_gener( ciapip, (void**)pgmpp, fstspecp )
#define fst_inter(pgmp, irec, stwp,area1pp, max1,area2pp, max2, qty1p, qty2p) cisisfst_inter( ciapip,pgmp, vrecp[irec], stwp,area1pp, max1,area2pp, max2,qty1p, qty2p )
#define fst_open(gidbnp, filnamp, treecase) cisisfst_open( ciapip,gidbnp, filnamp, treecase)
#define fst_clos(treecase) cisisfst_clos( ciapip, treecase )
#define fst_free(pgmp) cisisfst_free( ciapip, pgmp )
#define fst_fd cisisfst_fd( ciapip )
#define fst_fx cisisfst_fx( ciapip )
#define fst_hdrx *(cisisfst_hdrx( ciapip ))
#define fst_hdru *(cisisfst_hdru( ciapip ))
#define fst_hdrt *(cisisfst_hdrt( ciapip ))
#define fst_hdrp *(cisisfst_hdrp( ciapip ))
#define fst_errl *(cisisfst_errl( ciapip ))
#define fst_errp *(cisisfst_errp( ciapip ))
#define fst_error *(cisisfst_error( ciapip ))
#define fst_batchup *(cisisfst_batchup( ciapip ))
#define fst_batchp *(cisisfst_batchp( ciapip ))
#define fst_batch0 *(cisisfst_batch0( ciapip ))
#define fst_wlupifnp *(cisisfst_wlupifnp( ciapip ))
#define fst_wluptrmp *(cisisfst_wluptrmp( ciapip ))
#define fst_wlupitrm *(cisisfst_wlupitrm( ciapip ))
#define cifstfix *(cisiscifstfix( ciapip ))
#define cifstfim *(cisiscifstfix( ciapip ))
//IFL
#define ciiflfix *(cisisciiflfix( ciapip ))
#define ciiflfim *(cisisciiflfix( ciapip ))
#define ifl_balan *(cisisifl_balan( ciapip ))
//ISO
#define iso_open(gidbnp, filnam, lrecb, lrfix, isfix) cisisiso_open( ciapip, gidbnp, filnam, lrecb, lrfix, isfix)
#define iso_read(crec, irec, ldrtag) cisisiso_read( ciapip, vrecp[irec], ldrtag)
#define iso_creat(gidbnp, filnam, lrecb, lrfox, isfox) cisisiso_creat( ciapip, gidbnp, filnam, lrecb, lrfox, isfox)
#define iso_write(recp, isoxfs, isoxgs, ldrtag) cisisiso_write( ciapip, recp, isoxfs, isoxgs, ldrtag)
#define iso_close() cisisiso_close( ciapip )
// miscelaneas ...
#define DBXmsmfn *(cisisDbxDBXmsmfn( dbxp ))
#define DBXirecs *(cisisDbxDBXirecs( dbxp ))
#define DBXipadd cisisDbxDBXipadd( dbxp )
#define DBXipdel cisisDbxDBXipdel( dbxp )
#define DBXvgzrp *(cisisDbxDBXvgzrp( dbxp ))
#define DBXxryyp *(cisisDbxDBXxryyp( dbxp ))
#define DBXxropw *(cisisDbxDBXxropw( dbxp ))
#define DBXxropn *(cisisDbxDBXxropn( dbxp ))
#define DBXmsopn *(cisisDbxDBXmsopn( dbxp ))
#define VDBXvgzrp( r ) *(cisisDbxVDBXvgzrp( ciapip, r ))
#define VDBXname( r ) cisisDbxVDBXname( ciapip, r )
#define dbnp_dbxnetws(p) *(cisisDbnpdbxnetws( ciapip, p ))
#define dbnp_dbxitrac(p) *(cisisDbnpdbxitrac( ciapip, p ))
#define dbnp_dbxirecs(p) *(cisisDbnpdbxirecs( ciapip, p ))
#define dbnp_dbxipadd(p) cisisDbnpdbxipadd( ciapip, p )
#define DBXxribpxrmfptr cisisDBXxribpxrmfptr( dbxp )
#define DBXxribpxrxrpos *(cisisDBXxribpxrxrpos( dbxp ))
#define dbxopt_fatal *(cisisdbxopt_fatal( ciapip ))
#define dbxopt_ordwr *(cisisdbxopt_ordwr( ciapip ))
#define dbxsleep *(cisisdbxsleep( ciapip ))
#define dbxewlrc *(cisisdbxewlrc( ciapip ))
#define dbxfloop *(cisisdbxfloop( ciapip ))
#define dbxwloop *(cisisdbxwloop( ciapip ))
#define dbxiloop *(cisisdbxiloop( ciapip ))
#define dbxcdcip *(cisisdbxcdcip( ciapip ))
#define cicopyr(namep) cisiscicopyr(namep)
#define dbxopen(gidbnp, dbnamp, extp ) cisisdbxopen( ciapip,gidbnp, dbnamp, extp )
#define dbxopenc(gidbnp, filnamp,opnp,opwp,errmsgp, xcreate, xappend) cisisdbxopenc(ciapip, gidbnp, filnamp,opnp,opwp,errmsgp, xcreate, xappend)
#define dbxopenw(gidbnp, dbnamp,extp,opnp,opwp,errmsgp) cisisdbxopenw( ciapip,gidbnp, dbnamp,extp,opnp,opwp,errmsgp )
#define dbxcipar(gidbnp, argkey, argchar) cisisdbxcipar( ciapip,gidbnp, argkey, argchar)
#define subfldp(fldp, dlm, lenp) cisissubfldp( fldp, dlm, lenp )
#define subfldn(sfldp, len) cisissubfldn( sfldp, len )
#define recisis0( x ) cisisrecisis0( ciapip, x )
#define trmisis0( x ) cisistrmisis0( ciapip, x )
#define dbxstorp(x) cisisdbxstorp( ciapip, x )
#define fldupdat(irec, batchp) cisisfldupdat( vrecp[irec], batchp )
#define recupdat(crec,irec) cisisrecupdat( vrecp[irec] )
#define nocc(irec, tag) cisisnocc( vrecp[irec], tag )
#define fieldx(irec, tag, occ) cisisfieldx( vrecp[irec], tag, occ )
#define fldocc(irec, diridx) cisisfldocc( ciapip, vrecp[irec], diridx )
#define fatal(x) cisisfatal( ciapip, x )
//#define b70trace *( cisisb70trace( ciapip ))
#define MFX cisisMFX( recp )
#define loaductb(gidbnp,uctbp,ucfilp) cisisloaductb(ciapip, gidbnp, uctbp, ucfilp)
#define loadactb(gidbnp,actbp,acfilp) cisisloadactb(ciapip, gidbnp, actbp, acfilp)
//variables de cirun.h
#define bitmask cisisbitmask( ciapip )
#define xx1extp cisisxx1extp( ciapip )
#define loadfile(gidbnp,at,atp,areap,asize,lf2x) cisisloadfile( ciapip, gidbnp, at, atp, areap, asize, lf2x )
#define showcore(msg) cisisshowcore(ciapip,msg)
#define prtfields(recp,mfn) cisisprtfields(recp, mfn)
#define gizmread(gizdbnp, vgizpp, irec ) cisisgizmread(ciapip, gizdbnp, (void*)vgizpp)
#define loadstw(gidbnp, atp,areap,asize,nstws) cisisloadstw(ciapip, gidbnp, atp,areap,asize,nstws)
#define dbxcinet(dbnamp) cisisdbxcinet(ciapip, dbnamp)
#define prtcontrol(recp, dbname) cisisprtcontrol(recp, dbname)
#define prtxref(recp, mfn) cisisprtxref(ciapip, recp, mfn)
#define prtleader(recp, mfn) cisisprtleader(recp, mfn)
#define prtdir(recp, mfn) cisisprtdir(recp, mfn);
#define recfgets(crec, irec, line, linsiz, fpconv) cisisrecfgets(ciapip, vrecp[crec], vrecp[irec], line, linsiz, fpconv)
#define recgizmo(irec, vgizmap) cisisrecgizmo(ciapip, vrecp[irec], vgizmap)
#define reccopy(upirec, upcrec, recp, mfn) cisisreccopy(ciapip, vrecp[upirec],vrecp[upcrec],recp,mfn)
#define invflush(dbnamp) cisisinvflush(ciapip, dbnamp);
#define invsetup(dbnamp, loadn0x,loadl0x,loadpst) cisisinvsetup(ciapip, dbnamp, loadn0x,loadl0x,loadpst)
#define dbxflush(dbnamp) cisisdbxflush(ciapip, dbnamp)
#define dbxtmpnm(dirtmp, strip, filnamp) cisisdbxtmpnm(ciapip, dirtmp, strip, filnamp)
#define dbxcipfp *(cisisdbxcipfp(ciapip))
#define dbxcipok *(cisisdbxcipok(ciapip))
#define rec_maxmfrl *(cisisrec_maxmfrl( ciapip ))
#define highv cisishighv( ciapip )
#define cipnetws *(cisiscipnetws( ciapip ))
#define mx1extp *(cisismx1extp( ciapip ))
#define cicgi0(argc, argv, wwwp, taghxsub, taghpfxp) cisiscicgi0(ciapip, argc, argv, wwwp, taghxsub, taghpfxp)
//#define cicgi1(argc, argv, entries, nentries, cicgi_p) cisiscicgi1(ciapip, argc, argv, entries, nentries, cicgi_p)
#define upif_end(dbnp, pstflag) cisisupif_end(ciapip, dbnp, pstflag)
#define upif_init(dbnp) cisisupif_init(ciapip, dbnp)
#define mstsetup(dbnamp, loadxrf, loadmst) cisismstsetup(ciapip, dbnamp, loadxrf, loadmst)
#define mstflush(dbnamp) cisismstflush(ciapip, dbnamp)
#define ifupdat(mdbnp,mfn1,mfn2,idbnp,fstp,stwp,maxlk1,maxlk2,pstflag,endup) cisisifupdat(ciapip,mdbnp,mfn1,mfn2,idbnp,fstp,pstflag,endup)
#define ifupd_reset *(cisisifupd_reset(ciapip))
#define ifupd_wrnmsg *(cisisifupd_wrnmsg(ciapip))
#define svdifupd(lnk1p,qtylk1,lnk2p,qtylk2,olnk1p,oqtylk1,olnk2p,oqtylk2,pstflag,tell) cisisvdifupd(ciapip,lnk1p,qtylk1,lnk2p,qtylk2,olnk1p,oqtylk1,olnk2p,oqtylk2,pstflag,tell)
#define svdifload(dbnp,filekeys_1,filekeys_2,pstflag,tell) cisissvdifload(ciapip,dbnp,filekeys_1,filekeys_2,pstflag,tell)
#define fatal_errcod cisisfatal_errcod(ciapip)
#define recinit() cisisrecinit( ciapip )
#define trminit() cisistrminit( ciapip )
#define dbxinit() cisisdbxinit( ciapip )
// Funciones implementadas en CIAPI
#ifdef __WIN32__
#include <windows.h>
#define THREADDEC __declspec(thread)
#else
#define CALLBACK
#define THREADDEC
#endif
#ifdef __cplusplus
extern "C" {
#endif
void* CALLBACK cisisApplication(LONGX xmaxnrec, LONGX xmaxntrm);
void CALLBACK cisisApplicationDelete(void *ciapip);
LONGX* CALLBACK cisisnrecs(void *xciapip);
void** CALLBACK cisisvrecp( void *xciapip );
LONGX* CALLBACK cisisntrms(void *xciapip);
void** CALLBACK cisisvtrmp( void *xciapip );
LONGX* CALLBACK cisisndbxs(void *xciapip);
LONGX CALLBACK cisismaxnrec(void *xciapip);
LONGX CALLBACK cisismaxntrm(void *xciapip);
LONGX CALLBACK cisisRecord(void *ciapip, LONGX irec, char *dbnp, LONGX mfn);
LONGX CALLBACK cisisRecordAlloc(void *xciapip, LONGX irec, LONGX nbytes);
void CALLBACK cisisRecordDelete( void *xrecp );
int* CALLBACK cisisRecordRECrc(void *xrecp);
int* CALLBACK cisisRecordRECtype( void *xrecp );
LONGX* CALLBACK cisisRecordRECnbytes( void *xrecp );
void** CALLBACK cisisRecordRECdbxp( void *xrecp );
LONGX* CALLBACK cisisRecordMF0nxtmfn( void *xrecp );
char* CALLBACK cisisRecordRDBname( void *xrecp );
LONGX* CALLBACK cisisRecordRDBmsmfn( void *xrecp );
void** CALLBACK cisisRecordRDBvgzrp( void *xrecp );
void** CALLBACK cisisRecordRDBvderp( void *xrecp );
LONGX* CALLBACK cisisRecordMFRmfn( void *xrecp );
FFI* CALLBACK cisisRecordMFRmfrl( void *xrecp );
LONGX* CALLBACK cisisRecordMFRmfbwb( void *xrecp );
UWORD* CALLBACK cisisRecordMFRmfbwp( void *xrecp );
FFI* CALLBACK cisisRecordMFRbase( void *xrecp );
UWORD* CALLBACK cisisRecordMFRnvf( void *xrecp );
UWORD* CALLBACK cisisRecordMFRstatus( void *xrecp );
void* CALLBACK cisisRecordrecmfp( void *xrecp );
int CALLBACK cisisrecwmast(void *xcrecp, void *xrecp, LONGX b, int p, int nblk, FFI wlen);
int CALLBACK cisisrecxref(void *xrecp, LONGX mfn, LONGX *comb, int *comp);
UWORD CALLBACK cisisRecordDIRtag( void *xrecp, int x );
FFI CALLBACK cisisRecordDIRlen( void *xrecp, int x );
char* CALLBACK cisisRecordFIELDP( void *xrecp, int x );
void** CALLBACK cisisRecordVRECdbxp( void *xciapip, LONGX irec );
int* CALLBACK cisisRecordVRECrc( void *xciapip, LONGX irec );
int* CALLBACK cisisRecordVRECtype( void *xciapip, LONGX irec );
int *CALLBACK cisisRecordVREClock( void *xciapip, LONGX irec );
int *CALLBACK cisisRecordVRECwlock( void *xciapip, LONGX irec );
int* CALLBACK cisisRecordVRECgdbl( void *xciapip, LONGX irec );
int* CALLBACK cisisRecordVRECgdbw( void *xciapip, LONGX irec );
LONGX* CALLBACK cisisRecordVMFRmfn( void *xciapip, LONGX irec );
UWORD* CALLBACK cisisRecordVMFRstatus( void *xciapip, LONGX irec );
UWORD* CALLBACK cisisRecordVMFRnvf( void *xciapip, LONGX irec );
FFI *CALLBACK cisisRecordVMFRmfrl( void *xciapip, LONGX irec );
LONGX* CALLBACK cisisRecordVMF0nxtmfn( void *xciapip, LONGX irec );
LONGX* CALLBACK cisisRecordVMF0mfcxx1( void *xciapip, LONGX irec );
LONGX* CALLBACK cisisRecordVMF0mfcxx2( void *xciapip, LONGX irec );
LONGX* CALLBACK cisisRecordVMF0mfcxx3( void *xciapip, LONGX irec );
FFI* CALLBACK cisisRecordVMFRbase( void *xciapip, LONGX irec );
char* CALLBACK cisisVMFX( void *xciapip, LONGX irec );
char* CALLBACK cisisRecordVRDBname( void *xciapip, LONGX irec );
int* CALLBACK cisisRecordVRDBnetws( void *xciapip, LONGX irec );
int* CALLBACK cisisRecordVRDBdelxx( void *xciapip, LONGX irec );
int* CALLBACK cisisRecordVRDBewlxx( void *xciapip, LONGX irec );
int* CALLBACK cisisRecordVRDBmsopw( void *xciapip, LONGX irec );
int* CALLBACK cisisRecordVRDBmsopn( void *xciapip, LONGX irec );
UWORD CALLBACK cisisRecordVDIRtag( void *xciapip, LONGX irec, int x );
FFI CALLBACK cisisRecordVDIRlen( void *xciapip, LONGX irec, int x );
char* CALLBACK cisisRecordVFIELDP( void *xciapip, LONGX irec, int x );
LONGX CALLBACK cisisTerm(void *xciapip, LONGX itrm, UCHR *dbnp, UCHR *keyp);
void* CALLBACK cisisTermAlloc(void *xciapip, LONGX itrm, LONGX nbytes );
void* CALLBACK cisisTermNext(void *xciapip, LONGX itrm);
LONGX* CALLBACK cisisTermTRMrc(void *xtrmp);
LONGX* CALLBACK cisisTermTRMpost(void *xtrmp);
int * CALLBACK cisisTermTRMlcase( void *xtrmp);
LONGX* CALLBACK cisisTermTRMpmfn(void *xtrmp);
UWORD* CALLBACK cisisTermTRMptag(void *xtrmp);
UWORD* CALLBACK cisisTermTRMpocc(void *xtrmp);
UWORD* CALLBACK cisisTermTRMpcnt(void *xtrmp);
UCHR* CALLBACK cisisTermTRMkey(void *xtrmp);
LONGX* CALLBACK cisisTermTRMxytotp(void *xtrmp);
LONGX CALLBACK cisisTermPosting(void *xciapip, LONGX itrm, LONGX nord);
char** CALLBACK cisisTermTDBname(void *xtrmp);
LONGX* CALLBACK cisisTermVTRMrc( void *xciapip, LONGX itrm );
UCHR* CALLBACK cisisTermVTRMkey( void *xciapip, LONGX itrm );
LONGX* CALLBACK cisisTermVTRMxytotp( void *xciapip, LONGX itrm );
LONGX* CALLBACK cisisTermVTRMpmfn( void *xciapip, LONGX itrm );
UWORD* CALLBACK cisisTermVTRMptag( void *xciapip, LONGX itrm );
UWORD* CALLBACK cisisTermVTRMpocc( void *xciapip, LONGX itrm );
UWORD* CALLBACK cisisTermVTRMpcnt( void *xciapip, LONGX itrm );
char** CALLBACK cisisTermVTDBname( void *xciapip, LONGX itrm );
LONGX* CALLBACK cisisDbxDBXmsmfn( void *xdbxp );
LONGX* CALLBACK cisisDbxDBXirecs( void *xdbxp );
LONGX* CALLBACK cisisDbxDBXipadd( void *xdbxp );
LONGX* CALLBACK cisisDbxDBXipdel( void *xdbxp );
void ** CALLBACK cisisDbxDBXvgzrp( void *xdbxp );
char** CALLBACK cisisDbxDBXxryyp( void *xdbxp );
int* CALLBACK cisisDbxDBXxropw( void *xdbxp );
int* CALLBACK cisisDbxDBXxropn( void *xdbxp );
int* CALLBACK cisisDbxDBXmsopn( void *xdbxp );
void** CALLBACK cisisDbxVDBXvgzrp( void *xciapip, LONGX idbx );
char *CALLBACK cisisDbxVDBXname( void *xciapip, LONGX idbx );
int* CALLBACK cisisDbnpdbxnetws( void *xciapip, char *dbnp );
int* CALLBACK cisisDbnpdbxitrac( void *xciapip, char *dbnp );
LONGX* CALLBACK cisisDbnpdbxirecs( void *xciapip, char *dbnp );
LONGX* CALLBACK cisisDbnpdbxipadd( void *xciapip, char *dbnp );
XRPTR* CALLBACK cisisDBXxribpxrmfptr( void *xdbxp );
XRPTR* CALLBACK cisisDBXxribpxrxrpos( void *xdbxp );
int* CALLBACK cisisdbxtrace( void *xciapip );
int* CALLBACK cisisrectrace( void *xciapip );
int* CALLBACK cisisdectrace( void *xciapip );
int* CALLBACK cisistrmtrace( void *xciapip );
int* CALLBACK cisismultrace( void *xciapip );
int* CALLBACK cisisb70trace( void *xciapip );
int* CALLBACK cisisb40trace( void *xciapip );
int* CALLBACK cisisb50trace( void *xciapip );
int* CALLBACK cisisfmttrace( void *xciapip );
int* CALLBACK cisisfsttrace( void *xciapip );
int* CALLBACK cisiscgitrace( void *xciapip );
LONGX CALLBACK cisisfmt_gener( void *xciapip, void **pgmpp, char *fmtp );
LONGX CALLBACK cisisfmt_inter( void *xciapip, void *xpgmp, LONGX irec, LONGX lw, char *areap, LONGX asize);
void CALLBACK cisisfmt_free( void *xciapip, void *xpgmp);
char* CALLBACK cisisfmterrxy( void *xciapip, void *xpgmp);
LONGX CALLBACK cisisrecfmt(void *xciapip, void *recp,LONGX lw,char *fmt,char *area,LONGX asize);
int CALLBACK cisisrecread(void *xciapip, void* xrecp, LONGX mfn);
void CALLBACK cisisrecreset(void *xciapip, char *dbnamp, LONGX mfn1, LONGX mfn2, void* xrecp, LONGX parmtell);
int CALLBACK cisisrecunlck(void *xciapip, void *xrecp, int option);
FFI* CALLBACK cisisrecreadl( void* xciapip );
LONGX* CALLBACK cisisrecreadb( void* xciapip );
int* CALLBACK cisisrecreadp( void* xciapip );
LONGX* CALLBACK cisisfmt_fsiz( void *xciapip );
LONGX* CALLBACK cisisfmt_errof( void *xciapip );
LONGX* CALLBACK cisisfmt_error( void *xciapip );
LONGX CALLBACK cisisfst_gener( void *xciapip, void **pgmpp, char *fstspecp );
LONGX CALLBACK cisisfst_inter( void *xciapip, void *pgmp, void *xrecp, char *stwp,char **area1pp, LONGX max1,char **area2pp, LONGX max2,LONGX *qty1p, LONGX *qty2p );
int CALLBACK cisisfst_open( void *xciapip, char *gidbnp, char *filnamp, int treecase );
int CALLBACK cisisfst_clos( void *xciapip, int treecase );
void CALLBACK cisisfst_free( void *xciapip, void *pgmpp );
int* CALLBACK cisisfst_fd( void *xciapip );
LONGX* CALLBACK cisisfst_fx( void *xciapip );
int* CALLBACK cisisfst_hdrx( void *xciapip );
int* CALLBACK cisisfst_hdru( void *xciapip );
int* CALLBACK cisisfst_hdrt( void *xciapip );
char** CALLBACK cisisfst_hdrp( void *xciapip );
LONGX* CALLBACK cisisfst_errl( void *xciapip );
char** CALLBACK cisisfst_errp( void *xciapip );
LONGX* CALLBACK cisisfst_error( void *xciapip );
char** CALLBACK cisisfst_batchup( void* xciapip );
char** CALLBACK cisisfst_batchp( void* xciapip );
int* CALLBACK cisisfst_batch0( void* xciapip );
char** CALLBACK cisisfst_wlupifnp( void *xciapip );
TRMSTRU** CALLBACK cisisfst_wluptrmp( void *xciapip );
LONGX* CALLBACK cisisfst_wlupitrm( void *xciapip );
int* CALLBACK cisiscifstfix( void* xciapip );
int* CALLBACK cisiscifstfim( void* xciapip );
int* CALLBACK cisisciiflfix( void* xciapip );
int* CALLBACK cisisciiflfim( void* xciapip );
int* CALLBACK cisisifl_balan( void* xciapip );
int CALLBACK cisisiso_open( void* xcisisp, char *gidbnp, unsigned char filnam[], int lrecb, int lrfix, int isfix);
int CALLBACK cisisiso_read( void* xcisisp, RECSTRU* xrecp, unsigned int ldrtag);
int CALLBACK cisisiso_creat( void* xcisisp, char *gidbnp, unsigned char filnam[], int lrecb, int lrfox, int isfox);
int CALLBACK cisisiso_write( void* xcisisp, void *xrecp, unsigned char isoxfs, unsigned char isoxgs, unsigned int ldrtag);
int CALLBACK cisisiso_close( void* xciapip );
int* CALLBACK cisisdbxopt_fatal( void *xciapip );
int* CALLBACK cisisdbxopt_ordwr( void *xciapip );
int* CALLBACK cisisdbxsleep( void *xciapip );
int* CALLBACK cisisdbxewlrc( void *xciapip );
int* CALLBACK cisisdbxfloop( void *xciapip );
int* CALLBACK cisisdbxwloop( void *xciapip );
int* CALLBACK cisisdbxiloop( void *xciapip );
char** CALLBACK cisisdbxcdcip( void *xciapip );
char* CALLBACK cisiscicopyr(char *namep);
int CALLBACK cisisdbxopen( void *xciapip, char *gidbnp, char *dbname, char *extp);
char* CALLBACK cisisdbxopenc(void *xciapip, char *gidbnp, char *filnamp,int *opnp,int *opwp,char *errmsgp, int xcreate, int xappend);
int CALLBACK cisisdbxopenw(void *xciapip, char *gidbnp, char *dbnamp,char *extp,int *opnp,int *opwp,char *errmsgp);
char* CALLBACK cisisdbxcipar( void *xciapip, char *gidbnp,char *argkey,char argchar);
UBYTE* CALLBACK cisissubfldp( UBYTE *fldp, UBYTE dlm, FFI *lenp );
FFI CALLBACK cisissubfldn(UBYTE *sfldp, FFI len);
int CALLBACK cisisrecisis0(void *xciapip, char *dbname );
int CALLBACK cisistrmisis0(void *xciapip, char *dbname );
void* CALLBACK cisisdbxstorp(void *ciapip, char *dbnamp);
char* CALLBACK cisisfldupdat( void *xrecp, char *batchp);
int CALLBACK cisisrecupdat( void *xrecp);
int CALLBACK cisisnocc(void* xrecp, int tag);
int CALLBACK cisisfieldx(void *xrecp, int tag, int occ);
int CALLBACK cisisfldocc( void *xciapip, void* xrecp, int diridx );
void CALLBACK cisisfatal(void *xciapip, char *msg);
unsigned char* CALLBACK cisisbitmask( void *xciapip );
char* CALLBACK cisisxx1extp( void *xciapip );
int* CALLBACK cisisb70trace( void *xciapip );
char* CALLBACK cisisMFX( void *xrecp );
/* cirun.h */
int* CALLBACK cisisNXPAGES( void *xciapip );
int* CALLBACK cisisisiswctot( void *xciapip );
unsigned char* CALLBACK cisisisiswctab( void *xciapip );
unsigned char* CALLBACK cisisisisuctab( void *xciapip );
char* CALLBACK cisisloaductb(void *xciapip, char *gidbnp,char *uctbp,char *ucfilp);
char* CALLBACK cisisloadactb(void *xciapip, char *gidbnp,char *actbp,char *acfilp);
char* CALLBACK cisisloadfile( void *xciapip, char *gidbnp, char at, char *atp, char *areap, LONGX asize, char lf2x);
unsigned LONGX CALLBACK cisisshowcore(void *xciapip, char *msg);
LONGX CALLBACK cisisprtfields(RECSTRU *recp, LONGX mfn);
int CALLBACK cisisgizmread(void *xciapip, char *gizdbnp, void **vgizpp);
char* CALLBACK cisisloadstw(void *xciapip, char *gidbnp, char *atp,char *areap,LONGX asize,int *nstws);
int CALLBACK cisisdbxcinet(void *xciapip, char *dbnamp);
LONGX CALLBACK cisisprtcontrol(void *xrecp, char dbname[]);
LONGX CALLBACK cisisprtxref(void *xciapip, RECSTRU *recp, LONGX mfn);
LONGX CALLBACK cisisprtleader(RECSTRU *recp, LONGX mfn);
LONGX CALLBACK cisisprtdir(RECSTRU *recp, LONGX mfn);
int CALLBACK cisisrecfgets(void *xciapip, RECSTRU *crec, RECSTRU *irec, char line[], FFI linsiz, FILE *fpconv);
LONGX CALLBACK cisisrecgizmo(void *xciapip, RECSTRU *recp, VGIZPSTRU *vgizmap);
int CALLBACK cisisreccopy(void *xciapip, RECSTRU *upirec,RECSTRU *upcrec,RECSTRU *recp,LONGX mfn);
void CALLBACK cisisinvflush(void *xciapip, char *dbnamp);
void CALLBACK cisisinvsetup(void *xciapip, UCHR *dbnamp, LONGX loadn0x,LONGX loadl0x,LONGX loadpst);
void CALLBACK cisisdbxflush(void *xciapip, char *dbnamp);
char* CALLBACK cisisdbxtmpnm(void *xciapip, char *dirtmp, int strip, char *filnamp);
FILE** CALLBACK cisisdbxcipfp( void* xciapip );
int* CALLBACK cisisdbxcipok( void* xciapip );
LONGX* CALLBACK cisisrec_maxmfrl(void *xciapip);
char* CALLBACK cisishighv(void *xciapip);
int* CALLBACK cisiscipnetws(void *xciapip);
char** CALLBACK cisismx1extp(void *xciapip);
int CALLBACK cisiscicgi0(void *xciapip, int *argc, char *argv[], char **wwwp, UWORD taghxsub, char *taghpfxp);
int CALLBACK cisiscicgi1(void *xciapip, int *argc, char *argv[], CICGI_ENTRY entries[], int nentries, char *cicgi_p);
void CALLBACK cisisupif_init(void *xciapip, char *dbnp );
int CALLBACK cisisupif_end(void *xciapip, char *dbnp, int pstflag);
void CALLBACK cisismstsetup(void *xciapip, char *dbnamp, LONGX loadxrf, LONGX loadmst);
void CALLBACK cisismstflush(void *xciapip, char *dbnamp);
int CALLBACK cisisifupdat(void *xciapip, char *mdbnp, LONGX mfn1, LONGX mfn2, char *idbnp, void *xfst, int pstflag, int endup);
int* CALLBACK cisisifupd_reset(void *xciapip);
int* CALLBACK cisisifupd_wrnmsg(void *xciapip);
void CALLBACK cisisvdifupd(void *xciapip,char *lnk1p,LONGX qtylk1,char *lnk2p,LONGX qtylk2,char *olnk1p,LONGX oqtylk1,char *olnk2p,LONGX oqtylk2,int pstflag,LONGX tell);
LONGX CALLBACK cisissvdifload(void *xciapip,char *dbnp,char *filekeys_1,char *filekeys_2,int pstflag,LONGX tell);
int CALLBACK cisisfatal_errcod(void *xciapip);
void CALLBACK cisisrecinit(void *xciapip);
void CALLBACK cisistrminit(void *xciapip);
void CALLBACK cisisdbxinit(void *xciapip);
#ifdef __cplusplus
}
#endif /* extern "C" */
#endif /* __CIAPI_H */