File: xlstat.h

package info (click to toggle)
xlispstat 3.52.14-1
  • links: PTS
  • area: main
  • in suites: potato
  • size: 7,560 kB
  • ctags: 12,676
  • sloc: ansic: 91,357; lisp: 21,759; sh: 1,525; makefile: 521; csh: 1
file content (789 lines) | stat: -rw-r--r-- 40,406 bytes parent folder | download | duplicates (3)
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
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
#ifndef XLSTAT_H
#define XLSTAT_H

/* xlstat.h - External declarations and defines for XLISP-STAT.        */
/* XLISP-STAT 2.1 Copyright (c) 1990, by Luke Tierney                  */
/* Additions to Xlisp 2.1, Copyright (c) 1989 by David Michael Betz    */
/* You may give out copies of this software; for conditions see the    */
/* file COPYING included with this distribution.                       */

#include "osdefs.h"
#include "iview.h"

typedef struct window_data {
  char *object;
  int idleOn, frontOnly;
  int mouse_x, mouse_y;
} *WindowData;

#define get_window_data(w)    ((WindowData *) GetWRefCon(w))
#define set_window_data(w, d) SetWRefCon(w, (long) d)

#define integer int
#define doublereal double

#ifndef ANSI
extern char *calloc(), *malloc(), *realloc();
#endif /* ANSI */

#ifdef MSDOS
#ifdef _Windows
#define CPTR HANDLE
#else
typedef long CPTR;
#endif
#else
typedef char *CPTR;
#endif /* MSDOS */

/* ...stuff.c */
extern int min _((int x, int y));
extern int max _((int x, int y));
extern VOID get_directory _((char *s));
#ifdef MACINTOSH
extern VOID maximum_memory _((void));
#ifndef applec
extern VOID fsetfileinfo  _((char *fname, OSType creator, OSType type));
#endif /* applec */
#endif /* MACINTOSH */

/* basics.c */
extern LVAL copyarray _((LVAL array));

/* betab.c */
extern VOID betabase _((double *x, double *a, double *b, int *gia,
			int *gib, double *cdf));
extern double ppbeta _((double p, double a, double b, int *ifault));

/* bivnor.c */
extern double bivnor _((double ah, double ak, double r));

/* cfft.c */
extern int cfft _((int n, double *c, double *wsave, int isign));

/* cholesky.c */
extern VOID choldecomp P4H(double *, int, double, double *);

/* clmath.c */
#ifdef BYTECODE
extern LVAL xladd2 _((LVAL x, LVAL y));
extern LVAL xlsub2 _((LVAL x, LVAL y));
extern LVAL xlmul2 _((LVAL x, LVAL y));
extern LVAL xldiv2 _((LVAL x, LVAL y));
extern LVAL xlpmax2 _((LVAL x, LVAL y));
extern LVAL xlpmin2 _((LVAL x, LVAL y));
extern LVAL xlmax2 _((LVAL x, LVAL y));
extern LVAL xlmin2 _((LVAL x, LVAL y));
extern LVAL xladd1 _((LVAL x));
extern LVAL xlsub1 _((LVAL x));
extern LVAL xllss2 _((LVAL x, LVAL y));
extern LVAL xlleq2 _((LVAL x, LVAL y));
extern LVAL xlgtr2 _((LVAL x, LVAL y));
extern LVAL xlgeq2 _((LVAL x, LVAL y));
extern LVAL xlequ2 _((LVAL x, LVAL y));
extern LVAL xlneq2 _((LVAL x, LVAL y));
extern int num_cmp2 _((int which, LVAL x, LVAL y));
#endif /* BYTECODE */

/* compound.c */
extern LVAL compounddataseq _((LVAL x));
extern int  compounddatalen _((LVAL x));
extern LVAL makecompound _((LVAL form, LVAL seq));
extern LVAL subr_map_elements _((LVAL (*f) _((void))));
extern LVAL recursive_subr_map_elements _((LVAL (*bf) _((void)),
					   LVAL (*f) _((void))));
extern LVAL reduce _((LVAL fcn, LVAL sequence,
		      int has_init, LVAL initial_value));
extern int compoundp _((LVAL x));

/* dialogs.c */
extern Point ListToPoint _((LVAL list));
extern LVAL PointToList _((Point pt));
extern int dialog_p _((LVAL x));
extern LVAL xsgetdialog _((void));
extern int dialog_item_p _((LVAL x));
extern int button_item_p _((LVAL x));
extern int toggle_item_p _((LVAL x));
extern int text_item_p _((LVAL x));
extern int choice_item_p _((LVAL x));
extern int scroll_item_p _((LVAL x));
extern int list_item_p _((LVAL x));
extern LVAL xsgetdialogitem _((void));
extern LVAL xsgetbuttonitem _((void));
extern LVAL xsgettoggleitem _((void));
extern LVAL xsgettextitem _((void));
extern LVAL xsgetchoiceitem _((void));
extern LVAL xsgetscrollitem _((void));
extern LVAL xsgetlistitem _((void));

/* gammab.c */
extern VOID gammabase _((double *x, double *a, double *p));
extern double ppgamma _((double p, double a, int *ifault));

/* gamln.c */
#define gamma mygamma
extern double gamma _((double xx));

/* hrdwrobs.c */
extern int valid_dialog_address _((LVAL addr));
extern VOID set_dialog_address _((CPTR ptr, LVAL object));
extern VOID standard_hardware_clobber _((LVAL object));
extern int valid_window_address _((LVAL addr));
extern VOID set_window_address _((CPTR ptr, LVAL object));
extern CPTR GETWINDOWADDRESS _((LVAL object));
extern int valid_iview_window_address _((LVAL addr));
extern VOID set_iview_window_address _((CPTR ptr, LVAL object));
extern CPTR GETIVIEWWINDOWADDRESS _((LVAL object));
extern int valid_iview_address _((LVAL addr));
extern VOID set_iview_address _((CPTR ptr, LVAL object));
extern CPTR get_iview_address _((LVAL object));
extern CPTR GETIVIEWADDRESS _((LVAL object));
extern CPTR GETDIALOGADDRESS _((LVAL object));
extern int valid_menu_address _((LVAL addr));
extern VOID set_menu_address _((CPTR ptr, LVAL object));
extern CPTR get_menu_address _((LVAL object));
extern LVAL get_hardware_object_by_address _((CPTR ptr));
#ifdef MACINTOSH
extern int valid_apple_menu_address _((LVAL addr));
extern VOID set_apple_menu_address _((CPTR ptr, LVAL object));
extern CPTR get_apple_menu_address _((LVAL object));
extern int valid_edit_window_address _((LVAL addr));
extern VOID set_edit_window_address _((CPTR ptr, LVAL object));
extern CPTR get_edit_window_address _((LVAL object));
extern int valid_display_window_address _((LVAL addr));
extern VOID set_display_window_address _((CPTR ptr, LVAL object));
extern CPTR get_display_window_address _((LVAL object));
#endif /* MACINTOSH */
#ifdef AMIGA
extern int valid_amiga_menu_address _((LVAL addr));
extern void set_amiga_menu_address _((void *ptr, LVAL object));
extern void *get_amiga_menu_address _((LVAL object));
extern void set_amiga_menu_window _((void *ptr, LVAL object));
extern void *get_amiga_menu_window _((LVAL object));
#endif /* AMIGA */

/* iview.c */
extern int StGrNumVariables _((StGWWinInfo *gwinfo));
extern int IViewNumVariables _((IVIEW_WINDOW w));
extern VOID IViewSetVariableLabel _((IVIEW_WINDOW w, int var, char *s));
extern char *IViewVariableLabel _((IVIEW_WINDOW w, int var));
extern VOID GetNiceRange _((double *low, double *high, int *ticks));
extern int IViewNumPoints _((IVIEW_WINDOW w));
extern VOID IViewSetPointState _((IVIEW_WINDOW w, int point, PointState state));
extern PointState IViewPointState _((IVIEW_WINDOW w, int point));
extern VOID IViewSetPointScreenState _((IVIEW_WINDOW w, int point, PointState state));
extern PointState IViewPointScreenState _((IVIEW_WINDOW w, int point));
extern VOID IViewSetScaledRange _((IVIEW_WINDOW w, int var, double low, double high));
extern VOID IViewGetScaledRange _((IVIEW_WINDOW w, int var, double *low, double *high));
extern VOID IViewSetScreenRange _((IVIEW_WINDOW w, int var, int low, int high));
extern VOID IViewGetScreenRange _((IVIEW_WINDOW w, int var, int *low, int *high));
extern VOID IViewSetIdentityTransformation _((IVIEW_WINDOW w));
extern VOID IViewSetTransformation _((IVIEW_WINDOW w, double **a));
extern double **IViewTransformation _((IVIEW_WINDOW w));
extern int IViewIsTransformed _((IVIEW_WINDOW w));
extern VOID IViewStdResize _((IVIEW_WINDOW w));
extern VOID IViewStdRedraw _((IVIEW_WINDOW w));
extern VOID IViewStdRedrawBackground _((IVIEW_WINDOW w));
extern VOID IViewGetContentMarginRect _((IVIEW_WINDOW w,
                                         int *left, int *top, int *width, int *height));
extern VOID IViewStdClearContent P1H(IVIEW_WINDOW);
extern VOID IViewStdRedrawContent _((IVIEW_WINDOW w));
extern VOID IViewStdMarkPointsInRect _((IVIEW_WINDOW w,
                                        int left, int top, int width, int height));
extern VOID IViewSetPointSymbol _((IVIEW_WINDOW w, int point, int sym, int hsym));
extern VOID IViewGetPointSymbol _((IVIEW_WINDOW w, int point, int *sym, int *hsym));
extern int IViewNumLines _((IVIEW_WINDOW w));
extern VOID IViewSetLineWidth _((IVIEW_WINDOW w, int line, int width));
extern VOID IViewGetLineWidth  _((IVIEW_WINDOW w, int line, int *width));
extern VOID IViewRotate2 _((IVIEW_WINDOW w,
                            unsigned var1, unsigned var2, double newalpha));
extern VOID IViewSetRange _((IVIEW_WINDOW w, int var, double low, double high));
extern VOID IViewGetRange _((IVIEW_WINDOW w, int var, double *low, double *high));
extern VOID IViewDrawDataPoints _((IVIEW_WINDOW w,
                                   unsigned var1, unsigned var2, unsigned m, unsigned n));
extern VOID IViewDrawDataLines _((IVIEW_WINDOW w,
                                  unsigned var1, unsigned var2, unsigned m, unsigned n));
extern VOID IViewResetScreenStates _((IVIEW_WINDOW w));
extern VOID IViewSetPointMask _((IVIEW_WINDOW w, int point, int masked));
extern int IViewPointMasked _((IVIEW_WINDOW w, int point));
extern int IViewPointScreenValue _((IVIEW_WINDOW w, int var, int point));
extern VOID IViewClearPointMarks _((IVIEW_WINDOW w));
extern VOID IViewGetScreenPointValues _((IVIEW_WINDOW w, int point, int *x));
extern VOID IViewSetPointColor _((IVIEW_WINDOW w, int point, int color));
extern int IViewPointColor _((IVIEW_WINDOW w, int point));
extern VOID IViewSetPointLabel _((IVIEW_WINDOW w, int point, char *s));
extern char *IViewPointLabel _((IVIEW_WINDOW w, int point));
extern VOID IViewSetPointMark _((IVIEW_WINDOW w, int point, int marked));
extern int IViewPointMarked _((IVIEW_WINDOW w, int point));
extern VOID IViewApplyTransformation _((IVIEW_WINDOW w, double **a, int *inbasis));
extern double IViewEncodeValue _((IVIEW_WINDOW w, double value, int var));
extern double IViewDecodeValue _((IVIEW_WINDOW w, double value, int var));
extern VOID IViewAddPoints _((IVIEW_WINDOW w, int n));
extern VOID IViewClearPoints _((IVIEW_WINDOW w));
extern VOID IViewSetPointValue _((IVIEW_WINDOW w, int var, int point, double value));
extern double IViewPointValue _((IVIEW_WINDOW w, int var, int point));
extern VOID IViewSetPointScaledValue _((IVIEW_WINDOW w, int var, int point, double value));
extern double IViewPointScaledValue _((IVIEW_WINDOW w, int var, int point));
extern double IViewPointTransformedValue _((IVIEW_WINDOW w, int var, int point));
extern int IViewPointScreenValue _((IVIEW_WINDOW w, int var, int point));
extern VOID IViewGetScreenPointValues _((IVIEW_WINDOW w, int point, int *x));
extern VOID IViewSetPointMask _((IVIEW_WINDOW w, int point, int masked));
extern int IViewPointMasked _((IVIEW_WINDOW w, int point));
extern VOID IViewSetPointColor _((IVIEW_WINDOW w, int point, int color));
extern int IViewPointColor _((IVIEW_WINDOW w, int point));
extern VOID IViewSetPointState _((IVIEW_WINDOW w, int point, PointState state));
extern PointState IViewPointState _((IVIEW_WINDOW w, int point));
extern VOID IViewSetPointScreenState _((IVIEW_WINDOW w, int point, PointState state));
extern PointState IViewPointScreenState _((IVIEW_WINDOW w, int point));
extern VOID IViewResetScreenStates _((IVIEW_WINDOW w));
extern VOID IViewSetPointMark _((IVIEW_WINDOW w, int point, int marked));
extern int IViewPointMarked _((IVIEW_WINDOW w, int point));
extern VOID IViewClearPointMarks _((IVIEW_WINDOW w));
extern VOID IViewSetPointLabel _((IVIEW_WINDOW w, int point, char *s));
extern char *IViewPointLabel _((IVIEW_WINDOW w, int point));
extern VOID IViewSetPointSymbol _((IVIEW_WINDOW w, int point, int sym, int hsym));
extern VOID IViewGetPointSymbol _((IVIEW_WINDOW w, int point, int *sym, int *hsym));
extern int IViewNumLines _((IVIEW_WINDOW w));
extern VOID IViewAddLines _((IVIEW_WINDOW w, int n));
extern VOID IViewClearLines _((IVIEW_WINDOW w));
extern VOID IViewSetLineValue _((IVIEW_WINDOW w, int var, int line, double value));
extern double IViewLineValue _((IVIEW_WINDOW w, int var, int line));
extern VOID IViewSetLineScaledValue _((IVIEW_WINDOW w, int var, int line, double value));
extern double IViewLineScaledValue _((IVIEW_WINDOW w, int var, int line));
extern double IViewLineTransformedValue _((IVIEW_WINDOW w, int var, int line));
extern int IViewLineScreenValue _((IVIEW_WINDOW w, int var, int line));
extern VOID IViewSetLineMask _((IVIEW_WINDOW w, int line, int masked));
extern int IViewLineMasked _((IVIEW_WINDOW w, int line));
extern VOID IViewSetLineColor _((IVIEW_WINDOW w, int line, int color));
extern int IViewLineColor _((IVIEW_WINDOW w, int line));
extern VOID IViewSetNextLine _((IVIEW_WINDOW w, int line, int next));
extern int IViewNextLine _((IVIEW_WINDOW w, int line));
extern VOID IViewSetLineType _((IVIEW_WINDOW w, int line, int type));
extern int IViewLineType _((IVIEW_WINDOW w, int line));
extern VOID IViewSetLineWidth _((IVIEW_WINDOW w, int line, int width));
extern VOID IViewGetLineWidth _((IVIEW_WINDOW w, int line, int *width));
extern VOID IViewDepthCuePoints _((IVIEW_WINDOW w, unsigned var,
                                   unsigned cut1, unsigned cut2, unsigned cut3,
                                   unsigned m, unsigned n));
extern VOID IViewStdAdjustScreen _((IVIEW_WINDOW w));
extern VOID IViewStdAdjustPointsInRect _((IVIEW_WINDOW w,
                                          int left, int top, int width, int height,
                                          PointState state));
extern VOID IViewStdAdjustScreenPoint _((IVIEW_WINDOW w, int i));

/* iviewdat.c */
extern VOID IViewDataSetPointColor _((IViewData p, unsigned point, int color));
extern VOID IViewDataSetPointState _((IViewData p, unsigned point, int state));
extern VOID IViewDataSetPointSymbol _((IViewData p, unsigned point, int sym, int hsym));
extern VOID IViewDataSetLineValue _((IViewData p, int var, int line, double value));
extern VOID IViewDataSetLineColor _((IViewData p, unsigned line, int color));
extern VOID IViewDataSetLineWidth _((IViewData p, unsigned line, unsigned width));
extern VOID IViewDataSetNextLine _((IViewData p, unsigned line, int next));
extern VOID IViewDataSetLineType _((IViewData p, unsigned line, int type));
extern int IViewDataNumVariables _((IViewData p));
extern VOID IViewDataSetVariableLabel _((IViewData p, unsigned var, char *s));
extern char *IViewDataVariableLabel _((IViewData p, unsigned var));
extern VOID IViewDataSetRange _((IViewData p, unsigned var, double low, double high));
extern VOID IViewDataGetRange _((IViewData p, unsigned var, double *low, double *high));
extern VOID IViewDataSetScreenRange _((IViewData p, unsigned var, int low, int high));
extern VOID IViewDataGetScreenRange _((IViewData p, unsigned var, int *low, int *high));
extern IViewData IViewDataNew _((int vars));
extern VOID IViewDataFree _((IViewData p));
extern VOID IViewDataSetIdentityTransformation _((IViewData data));
extern VOID IViewDataSetTransformation _((IViewData data, double **a));
extern double **IViewDataTransformation _((IViewData data));
extern VOID IViewDataApplyTransformation _((IViewData data, double **a, int *inbasis));
extern int IViewDataIsTransformed _((IViewData data));
extern VOID IViewDataAddPoints _((IViewData p, int n));
extern VOID IViewDataClearPoints _((IViewData p));
extern int IViewDataNumPoints _((IViewData p));
extern VOID IViewDataSetPointValue _((IViewData p, int var, int point, double value));
extern double IViewDataPointValue _((IViewData p, int var, int point));
extern double IViewDataPointTransformedValue _((IViewData p, int var, int point));
extern int IViewDataPointScreenValue _((IViewData p, int var, int point));
extern VOID IViewDataGetScreenPointValues _((IViewData d, int point, int *x));
extern VOID IViewDataSetPointMask _((IViewData p, unsigned point, int masked));
extern int IViewDataPointMasked _((IViewData p, unsigned point));
extern VOID IViewDataSetPointColor _((IViewData p, unsigned point, int color));
extern int IViewDataPointColor _((IViewData p, unsigned point));
extern VOID IViewDataSetPointState _((IViewData p, unsigned point, int state));
extern PointState IViewDataPointState _((IViewData p, unsigned point));
extern VOID IViewDataSetPointScreenState _((IViewData p, unsigned point, PointState state));
extern PointState IViewDataPointScreenState _((IViewData p, unsigned point));
extern VOID IViewDataResetScreenStates _((IViewData p));
extern VOID IViewDataSetPointMark _((IViewData p, unsigned point, int marked));
extern int IViewDataPointMarked _((IViewData p, unsigned point));
extern VOID IViewDataClearPointMarks _((IViewData p));
extern VOID IViewDataSetPointLabel _((IViewData p, unsigned point, char *s));
extern char *IViewDataPointLabel _((IViewData p, unsigned point));
extern VOID IViewDataSetPointSymbol _((IViewData p, unsigned point, int sym, int hsym));
extern VOID IViewDataGetPointSymbol _((IViewData p, unsigned point, int *sym, int *hsym));
extern int IViewDataNumLines _((IViewData p));
extern VOID IViewDataAddLines _((IViewData p, int n));
extern VOID IViewDataClearLines _((IViewData p));
extern VOID IViewDataSetLineValue _((IViewData p, int var, int line, double value));
extern double IViewDataLineValue _((IViewData p, int var, int line));
extern double IViewDataLineTransformedValue _((IViewData p, int var, int line));
extern int IViewDataLineScreenValue _((IViewData p, int var, int line));
extern VOID IViewDataSetLineMask _((IViewData p, unsigned line, int masked));
extern int IViewDataLineMasked _((IViewData p, unsigned line));
extern VOID IViewDataSetLineColor _((IViewData p, unsigned line, int color));
extern int IViewDataLineColor _((IViewData p, unsigned line));
extern VOID IViewDataSetLineWidth _((IViewData p, unsigned line, unsigned width));
extern VOID IViewDataGetLineWidth _((IViewData p, unsigned line, unsigned *width));
extern VOID IViewDataSetNextLine _((IViewData p, unsigned line, int next));
extern int IViewDataNextLine _((IViewData p, unsigned line));
extern VOID IViewDataSetLineType _((IViewData p, unsigned line, int type));
extern int IViewDataLineType _((IViewData p, unsigned line));
extern VOID IViewDataDrawPoints _((IViewData data, IVIEW_WINDOW w,
                                   unsigned var1, unsigned var2, unsigned m, unsigned n,
                                   int offset));
extern VOID IViewDataDrawLines _((IViewData data, IVIEW_WINDOW w,
                                  unsigned var1, unsigned var2, unsigned m, unsigned n));
extern VOID IViewDataCuePoints _((IViewData data, unsigned var,
                                  int cut1, int cut2, int cut3, unsigned m, unsigned n));

/* iviewint.c */
extern VOID IViewSetShowingLabels _((IVIEW_WINDOW w, int show));
extern int IViewShowingLabels _((IVIEW_WINDOW w));
extern VOID IViewSetFixedAspect _((IVIEW_WINDOW w, int fixed));
extern int IViewFixedAspect _((IVIEW_WINDOW w));
extern VOID IViewSetMouseMode _((IVIEW_WINDOW w, MouseMode mode));
extern VOID IViewSetData _((IVIEW_WINDOW w, IViewData data));
extern VOID IViewSetScale _((IVIEW_WINDOW w, unsigned var, double scale));
extern double IViewScale _((IVIEW_WINDOW w, unsigned var));
extern VOID IViewSetShift _((IVIEW_WINDOW w, unsigned var, double shift));
extern double IViewShift _((IVIEW_WINDOW w, unsigned var));
extern VOID StGrSetContentRect _((StGWWinInfo *gwinfo,
                                  int left, int top, int width, int height));
extern VOID StGrGetContentRect _((StGWWinInfo *gwinfo,
                                  int *left, int *top, int *width, int *height));
extern VOID StGrSetContentOrigin _((StGWWinInfo *gwinfo, int x, int y));
extern VOID StGrGetContentOrigin _((StGWWinInfo *gwinfo, int *x, int *y));
extern VOID StGrSetContentVariables _((StGWWinInfo *gwinfo, int x, int y));
extern VOID StGrGetContentVariables _((StGWWinInfo *gwinfo, int *x, int *y));
extern VOID StGrSetClickRange _((StGWWinInfo *gwinfo, int width, int height));
extern VOID StGrGetClickRange _((StGWWinInfo *gwinfo, int *width, int *height));
extern VOID StGrSetMargin _((StGWWinInfo *gwinfo,
                             int left, int top, int right, int bottom));
extern VOID StGrGetMargin _((StGWWinInfo *gwinfo,
                             int *left, int *top, int *right, int *bottom));
extern VOID IViewSetMouseMode _((IVIEW_WINDOW w, MouseMode mode));
extern MouseMode IViewMouseMode _((IVIEW_WINDOW w));
extern int StGrDirty _((StGWWinInfo *gwinfo));
extern VOID StGrSetDirty _((StGWWinInfo *gwinfo, int dirty));
extern VOID IViewSetXaxis _((IVIEW_WINDOW w, int showing, int labeled, int ticks));
extern VOID IViewGetXaxis _((IVIEW_WINDOW w, int *showing, int *labeled, int *ticks));
extern VOID IViewSetYaxis _((IVIEW_WINDOW w, int showing, int labeled, int ticks));
extern VOID IViewGetYaxis _((IVIEW_WINDOW w, int *showing, int *labeled, int *ticks));
extern VOID IViewSetBrush _((IVIEW_WINDOW w, int x, int y, int width, int height));
extern VOID IViewGetBrush _((IVIEW_WINDOW w, int *x, int *y, int *width, int *height));
extern VOID IViewEraseBrush _((IVIEW_WINDOW w));
extern VOID IViewDrawBrush _((IVIEW_WINDOW w));
extern VOID IViewMoveBrush _((IVIEW_WINDOW w, int x, int y));
extern VOID IViewStdMouseAction _((IVIEW_WINDOW w, int x, int y,
                                   MouseEventType type, MouseClickModifier mods));
extern VOID IViewStdUnselectAllPoints _((IVIEW_WINDOW w));
extern VOID IViewEraseSelection _((IVIEW_WINDOW w));
extern VOID IViewMaskSelection _((IVIEW_WINDOW w));
extern VOID IViewUnmaskAllPoints _((IVIEW_WINDOW w));
extern VOID IViewShowAllPoints _((IVIEW_WINDOW w));
extern int IViewAllPointsShowing _((IVIEW_WINDOW w));
extern int IViewAllPointsUnmasked _((IVIEW_WINDOW w));
extern int IViewAnyPointsSelected _((IVIEW_WINDOW w));
extern VOID IViewSetLinks _((IVIEW_WINDOW w, LVAL links));
extern LVAL IViewGetLinks _((IVIEW_WINDOW w));
extern int IViewIsLinked _((IVIEW_WINDOW w));
extern char *StGrData _((StGWWinInfo *gwinfo));
extern IViewData IViewDataPtr _((IVIEW_WINDOW w));
extern VOID IViewGetAxisMargin _((IVIEW_WINDOW w,
                                  int *left, int *top, int *right, int *bottom));
extern VOID IViewDrawAxes _((IVIEW_WINDOW w));
extern VOID IViewFreeMem _((IVIEW_WINDOW w));
extern VOID IViewStdSelectingMouseAction _((IVIEW_WINDOW w, int x, int y,
                                            MouseEventType type, MouseClickModifier mods));
extern VOID IViewStdBrushingMouseAction _((IVIEW_WINDOW w, int x, int y,
                                           MouseEventType type, MouseClickModifier mods));


/* iviewscl.c */
extern VOID IViewScaleToRange _((IVIEW_WINDOW w, unsigned var,
	                             double low, double high));
extern VOID IViewApplyScaleShift _((IVIEW_WINDOW w, unsigned var,
                                    double scale, double shift));
extern VOID IViewGetVisibleRange _((IVIEW_WINDOW w, unsigned var,
                                    double *plow, double *phigh));

/* mats1.c */
#define matrixp(a) (darrayp(a) && (getdarrayrank(a) == 2))
#define xlgamatrix() (testarg(typearg(matrixp)))
#define numrows(a) ((int) getfixnum(getelement(getdarraydim(a), 0)))
#define numcols(a) ((int) getfixnum(getelement(getdarraydim(a), 1)))

/* kernel.c */
extern int kernel_smooth P10H(double *, double *, int, double, double *,
			      double *, double *, double *, int, int);

/* linalg.c */
#define seqlen(x) (listp(x) ? llength(x) : gettvecsize(x))
extern int anycomplex P1H(LVAL);
extern double macheps _((void));

/* lowess.c */
extern int lowess _((double *x, double *y, int n, double f, int nsteps,
                     double delta, double *ys, double *rw, double *res));

/* makerot.c */
extern VOID make_rotation _((int n, double *rot, double *x, double *y,
                             int use_alpha, double alpha));

/* menus.c */
extern int menu_p _((LVAL x));
extern LVAL xsgetmenu _((void));
extern int StMObAllocated _((LVAL menu));
extern int menu_item_p _((LVAL x));
extern LVAL xsgetmenuitem _((void));
extern VOID StMObAllocate _((LVAL menu));
VOID StMObAllocate _((LVAL menu));
VOID StMObDispose _((LVAL menu));

/* obinit.c */
extern VOID init_objects _((void));

/* objects.c */
extern int kind_of_p _((LVAL x, LVAL y));
extern LVAL slot_value _((LVAL x, LVAL slot));
extern LVAL set_slot_value _((LVAL x, LVAL slot, LVAL value));
extern LVAL send_message_stk _((LVAL object, LVAL selector));
extern int lex_slot_value _((LVAL object, LVAL sym, LVAL *pval));
extern LVAL init_root_object _((void));
extern LVAL xsnewproto _((char *str, LVAL parents));

/* nor.c */
extern VOID normbase _((double *x, double *phi));

/* obinit.c */
extern VOID init_objects _((void));

/* objects.c */
extern VOID xsaddmsg _((LVAL object, char *str));
extern VOID xsaddslot _((LVAL object, char *str));
extern VOID xsaddinstanceslot _((LVAL x, char *s));
extern VOID xssetslotval _((LVAL x, char *s, LVAL val));
extern VOID statobsymbols _((void));
extern VOID object_isnew _((LVAL object));
extern VOID print_mobject _((LVAL object, LVAL stream));

/* ppnd.c */
extern double ppnd _((double p, int *ifault));

/* splines.c */
extern int fit_spline _((int n, double *x, double *y,
                         int ns, double *xs, double *ys, double *work));

/* statinit.c */
extern VOID statsymbols _((void));

/* stats.c */
extern LVAL elementseq _((LVAL x));

/* stmem.c */
extern ALLOCTYPE *StCalloc _((int n, int m));
extern VOID StFree _((ALLOCTYPE *));
extern ALLOCTYPE *StRCalloc _((int n, int m));
extern VOID StRFree _((ALLOCTYPE *p));
extern long StRSize _((ALLOCTYPE *p));
extern ALLOCTYPE *StRRealloc _((ALLOCTYPE *p, int n, int m));
extern ALLOCTYPE *StRPtr _((ALLOCTYPE *p));
extern VOID StRLock _((ALLOCTYPE *p));
extern VOID StRUnlock _((ALLOCTYPE *p));

/* studentb.c */
extern VOID studentbase _((double *x, double *df, double *cdf));
extern double ppstudent _((double pp, double n, int *ifault));     

/* utils.c */
extern LVAL list2 _((LVAL x1, LVAL x2));
extern LVAL list3 _((LVAL x1, LVAL x2, LVAL x3));
extern LVAL getnextelement _((LVAL *pseq, int i));
extern VOID setnextelement _((LVAL *pseq, int i, LVAL value));
extern LVAL peekarg _((int i));
extern LVAL xsgetsequence _((void));
extern int xsboolkey _((LVAL key, int dflt));
extern LVAL xsfuncall0 _((LVAL fun));
extern LVAL xsfuncall1 _((LVAL fun, LVAL x));
extern LVAL xsfuncall2 _((LVAL fun, LVAL x, LVAL y));
extern LVAL list3 _((LVAL x1, LVAL x2, LVAL x3));
extern VOID pushargvec _((LVAL fun, int argc, LVAL  *argv));
extern LVAL xsapplysubr _((LVAL (*f) _((void)), LVAL args));
extern LVAL xscallsubrvec _((LVAL (*f) _((void)), int argc, LVAL *argv));

/* utils2.c */
extern LVAL integer_list_2 _((int a, int b));
extern LVAL integer_list_3 _((int a, int b, int c));
extern LVAL integer_list_4 _((int a, int b, int c, int d));
extern LVAL send_message _((LVAL object, LVAL msg));
extern LVAL send_callback_message _((LVAL object, LVAL msg));
extern LVAL send_message1 _((LVAL object, LVAL msg, int a));
extern LVAL send_callback_message1 _((LVAL object, LVAL msg, int a));
extern LVAL send_message_1L _((LVAL object, LVAL symbol, LVAL value));
extern LVAL send_callback_message_1L _((LVAL object, LVAL msg, LVAL value));
extern LVAL apply_send _((LVAL object, LVAL symbol, LVAL args));
extern LVAL double_list_2 _((double a, double b));

/* windows.c */
extern VOID get_window_bounds _((LVAL object,
	                             int *left, int *top, int *width, int *height));

/* xsiview.c */
extern VOID check_redraw _((LVAL object, int deflt, int content_only));
extern int draw_key_arg _((int deflt));
extern VOID check_add_to_screen _((LVAL object,
				   int which, int old_n, int n, int redraw));
extern VOID internal_iview_add_points _((IVIEW_WINDOW w, LVAL object, LVAL data)); 
extern VOID IViewRedrawBackground _((IVIEW_WINDOW w));
extern VOID IViewClearContent P1H(IVIEW_WINDOW);
extern VOID IViewRedrawContent _((IVIEW_WINDOW w));
extern VOID IViewRedrawOverlays _((IVIEW_WINDOW w));
extern VOID IViewResizeOverlays _((IVIEW_WINDOW w));

/* xsiview3.c */
extern PointState decode_point_state _((LVAL state));

/* xsivint.c */
extern VOID initialize_graph _((LVAL object));
extern VOID initialize_iview _((IVIEW_WINDOW w, LVAL object));
extern VOID IViewMatchPointState _((IVIEW_WINDOW w, unsigned p));
extern VOID IViewAdjustScreens _((IVIEW_WINDOW w));
extern VOID IViewAdjustScreens _((IVIEW_WINDOW w));
extern VOID IViewCheckLinks _((IVIEW_WINDOW w));
extern VOID get_iview_ivars _((LVAL object, int *vars));
extern VOID IViewMarkPointsInRect _((IVIEW_WINDOW w,
                                     int left, int top, int width, int height));
extern VOID IViewAdjustPointsInRect _((IVIEW_WINDOW w,
                                       int left, int top, int width, int height,
                                       PointState state));
extern VOID IViewAdjustOwnScreenPoint _((IVIEW_WINDOW w, int point));
extern VOID IViewUnselectAllPoints _((IVIEW_WINDOW w));
extern VOID initialize_iview _((IVIEW_WINDOW w, LVAL object));
extern VOID IViewDoClick _((LVAL object));
extern VOID IViewDoMotion _((LVAL object));
extern int IViewInternalIsLinked _((IVIEW_WINDOW w));
extern VOID IViewUnlinkWindow _((IVIEW_WINDOW w));

/* xsivwin.c */
extern VOID initialize_graph_window _((LVAL object));
extern VOID StGWObResize _((LVAL object));
extern VOID StGWObRedraw _((LVAL object));
extern VOID internal_iview_add_lines _((IVIEW_WINDOW w, LVAL object, LVAL data));
extern VOID StGWObDoMouse _((LVAL object, int x, int y,
                             MouseEventType type, MouseClickModifier mods));
extern VOID StGWObDoKey _((LVAL object, int key, int shift, int opt));
extern VOID StGWObDoClobber _((LVAL object));
extern VOID StGWObDoIdle _((LVAL object));
extern VOID StGWGetAllocInfo _((LVAL object, char **title,
                                int *left, int *top, int *width, int *height,
                                int *goAway));

/* xsivwin2.c */
extern VOID decode_point_symbol _((LVAL lsym, int *psym, int *phsym));
extern int decode_lisp_color _((LVAL arg));
extern LVAL encode_lisp_color _((int color));
extern VOID decode_point_symbol _((LVAL lsym, int *psym, int *phsym));
extern LVAL encode_point_symbol _((int sym, int hsym));
extern int decode_cursor _((LVAL arg));
extern LVAL encode_cursor _((int cursor));

/* xshist.c */
extern VOID newhistinternals _((LVAL object));

/* xsnewplt.c */
extern VOID StGrObAdjustToData _((LVAL object, int draw));

/* graphics interface */
extern VOID SysBeep _((int n));
extern VOID StInitGraphics _((void));
extern VOID StGWSetColRefCon _((unsigned int index, long rc));
extern VOID StGWSetCursRefCon _((unsigned int index, long rc));
extern VOID StGWSetSymRefCon _((unsigned int index, long rc));
extern VOID StShowWindow _((IVIEW_WINDOW w));
extern VOID StHideWindow _((IVIEW_WINDOW w));
extern VOID StWSetTitle _((IVIEW_WINDOW w, char *str));
extern VOID StGWShowWindow _((StGWWinInfo *gwinfo));
extern int IViewGetNewBrushSize _((IVIEW_WINDOW w, int *new_width, int *new_height));
extern int StGWTextAscent _((StGWWinInfo *gwinfo));
extern int StGWTextDescent _((StGWWinInfo *gwinfo));
int StGWTextWidth _((StGWWinInfo *gwinfo, char *text));
extern VOID StGWGetViewRect _((StGWWinInfo *gwinfo,
                               int *left, int *top, int *width, int *height));
extern VOID StGWSetClipRect _((StGWWinInfo *gwinfo,
                               int clipped,
                               int left, int top, int width, int height));
extern int StGWGetClipRect _((StGWWinInfo *gwinfo,
                              int *left, int *top, int *width, int *height));
extern VOID StGWStartBuffering _((StGWWinInfo *gwinfo));
extern VOID StGWBufferToScreen _((StGWWinInfo *gwinfo,
                           int left, int top, int width, int height));
extern VOID StGWDrawLine _((StGWWinInfo *gwinfo, int x1, int y1, int x2, int y2));
extern VOID StGWDrawPoint _((StGWWinInfo *gwinfo, int x, int y));
extern VOID StGWEraseRect _((StGWWinInfo *gwinfo,
	                         int left, int top, int width, int height));
extern VOID StGWFrameRect _((StGWWinInfo *gwinfo,
	                         int left, int top, int width, int height));
extern VOID StGWPaintRect _((StGWWinInfo *gwinfo,
	                         int left, int top, int width, int height));
extern VOID StGWEraseOval _((StGWWinInfo *gwinfo,
                             int left, int top, int width, int height));
extern VOID StGWFrameOval _((StGWWinInfo *gwinfo,
                             int left, int top, int width, int height));
extern VOID StGWPaintOval _((StGWWinInfo *gwinfo,
                             int left, int top, int width, int height));
extern VOID StGWEraseArc _((StGWWinInfo *gwinfo,
                            int left, int top, int width, int height,
	                        double angle1, double angle2));
extern VOID StGWFrameArc _((StGWWinInfo *gwinfo,
                            int left, int top, int width, int height,
	                        double angle1, double angle2));
extern VOID StGWPaintArc _((StGWWinInfo *gwinfo,
	                        int left, int top, int width, int height,
	                        double angle1, double angle2));
extern VOID StGWErasePoly _((StGWWinInfo *gwinfo, int n, short *p, int from_origin));
extern VOID StGWFramePoly _((StGWWinInfo *gwinfo, int n, short *p, int from_origin));
extern VOID StGWPaintPoly _((StGWWinInfo *gwinfo, int n, short *p, int from_origin));
extern VOID StGWDrawString _((StGWWinInfo *gwinfo, char *s, int x, int y));
extern VOID StGWDrawText _((StGWWinInfo *gwinfo, char *text,
                            int x, int y, int h, int v));
extern VOID StGWDrawStringUp _((StGWWinInfo *gwinfo, char *s, int x, int y));
extern VOID StGWDrawTextUp _((StGWWinInfo *gwinfo, char *text,
                              int x, int y, int h, int v));
extern int StGWUseColor _((StGWWinInfo *gwinfo));
extern VOID StGWGetSymbolSize _((int sym, int *width, int *height));
extern VOID StGWSetLineType _((StGWWinInfo *gwinfo, int type));
extern VOID StGWSetDrawMode _((StGWWinInfo *gwinfo, int mode));
extern VOID StGWSetDrawColor _((StGWWinInfo *gwinfo, ColorCode color));
extern VOID StGWSetBackColor _((StGWWinInfo *gwinfo, ColorCode color));
extern VOID StGWSetUseColor _((StGWWinInfo *gwinfo, int use));
extern VOID StGWSetLineWidth _((StGWWinInfo *gwinfo, int width));
extern VOID StGWReverseColors _((StGWWinInfo *gwinfo));
extern VOID StGWDrawSymbol _((StGWWinInfo *gwinfo, int sym, int x, int y));
extern VOID StGWReplaceSymbol _((StGWWinInfo *gwinfo,
                                 unsigned oldsym, unsigned newsym,
	                             int x, int y));
extern int StGWCanvasWidth _((StGWWinInfo *gwinfo));
extern int StGWCanvasHeight _((StGWWinInfo *gwinfo));
extern int StGWLineType _((StGWWinInfo *gwinfo));
extern int StGWDrawMode _((StGWWinInfo *gwinfo));
extern ColorCode StGWDrawColor _((StGWWinInfo *gwinfo));
extern ColorCode StGWBackColor _((StGWWinInfo *gwinfo));
extern int StGWUseColor _((StGWWinInfo *gwinfo));
extern VOID StGWGetLineWidth _((StGWWinInfo *gwinfo, int *width));
extern int StScreenHasColor _((void));
extern int StHasWindows _((void));
extern VOID StFlushGraphics _((void));
extern VOID StGWSetSize _((StGWWinInfo *gwinfo, int width, int height, int frame));
extern VOID StWSetSize _((IVIEW_WINDOW w, int width, int height, int frame));
extern VOID StGWSetHasHscroll _((StGWWinInfo *gwinfo, int has, int size));
extern VOID StGWSetHasVscroll _((StGWWinInfo *gwinfo, int has, int size));
extern int StGWHasHscroll _((StGWWinInfo *gwinfo));
extern int StGWHasVscroll _((StGWWinInfo *gwinfo));
extern VOID StGWSetScroll _((StGWWinInfo *gwinfo, int h, int v, int move));
extern VOID StGWGetScroll _((StGWWinInfo *gwinfo, int *h, int *v));
extern VOID StGWSetHscrollIncs _((StGWWinInfo *gwinfo, int inc, int pageInc));
extern VOID StGWGetHscrollIncs _((StGWWinInfo *gwinfo, int *inc, int *pageInc));
extern VOID StGWSetVscrollIncs _((StGWWinInfo *gwinfo, int inc, int pageInc));
extern VOID StGWGetVscrollIncs _((StGWWinInfo *gwinfo, int *inc, int *pageInc));
extern int StMObInstalled _((LVAL m));
extern VOID StMObAllocateMach _((LVAL menu));
extern VOID StMObDisposeMach _((LVAL menu));
extern LVAL get_window_object _((IVIEW_WINDOW w));
extern VOID set_window_object _((IVIEW_WINDOW w, LVAL object));
extern VOID StWSetLocation _((IVIEW_WINDOW w, int left, int top, int frame));
extern VOID StWGetLocation _((IVIEW_WINDOW w, int *left, int *top, int frame));
extern VOID StWGetSize _((IVIEW_WINDOW w, int *width, int *height, int frame));
extern VOID StGetScreenSize _((int *width, int *height));
extern VOID StGWSetFreeMem _((StGWWinInfo *gwinfo, void (*FreeMem) _((IVIEW_WINDOW))));
extern int StGWIdleOn _((StGWWinInfo *gwinfo));
extern VOID StGWSetIdleOn _((StGWWinInfo *gwinfo, int on));
extern VOID StGWInitialDraw _((StGWWinInfo *gwinfo));
extern VOID StGWRemove _((StGWWinInfo *gwinfo));
extern VOID StGWWhileButtonDown _((StGWWinInfo *gwinfo,
                                   VOID (*action) _((IVIEW_WINDOW,int, int)),
                                   int motionOnly));
extern VOID DialogAllocate _((LVAL dialog));
extern VOID DialogRemove _((LVAL dialog));
extern VOID DialogSetDefaultButton _((LVAL dialog, LVAL item));
extern LVAL DialogGetModalItem _((LVAL dialog));
extern VOID DialogButtonGetDefaultSize _((LVAL item, int *width, int *height));
extern VOID DialogToggleGetDefaultSize _((LVAL item, int *width, int *height));
extern LVAL DialogToggleItemValue _((LVAL item, int set, LVAL value));
extern VOID DialogTextGetDefaultSize _((LVAL item, int *width, int *height));
extern LVAL DialogTextItemText _((LVAL item, int set, char *text));
extern VOID DialogChoiceGetDefaultSize _((LVAL item, int *width, int *height));
extern LVAL DialogChoiceItemValue _((LVAL item, int set, int value));
extern VOID DialogScrollGetDefaultSize _((LVAL item, int *width, int *height));
extern LVAL DialogScrollItemValue _((LVAL item, int set, int value));
extern LVAL DialogScrollItemMax _((LVAL item, int set, int value));
extern LVAL DialogScrollItemMin _((LVAL item, int set, int value));
extern VOID DialogListGetDefaultSize _((LVAL item, int *width, int *height));
extern VOID DialogListItemSetText _((LVAL item, LVAL index, char *text));
extern LVAL DialogListItemSelection _((LVAL item, int set, LVAL index));
extern LVAL StGWGetObject _((StGWWinInfo *gwinfo));
extern int StGWWinInfoSize _((void));
extern VOID StGWInitWinInfo _((LVAL object));
extern VOID StGWSetObject _((StGWWinInfo *gwinfo, LVAL x));
#ifdef MACINTOSH
extern VOID graph_update_action _((StGWWinInfo *gwinfo, int resized));
extern VOID graph_activate_action _((StGWWinInfo *gwinfo, int active));
extern pascal void UpdateLispMenus _((void));
#endif /* MACINTOSH */
extern VOID StMObAppendItems _((LVAL menu, LVAL items));
extern VOID StMObDeleteItem _((LVAL menu, LVAL item));
extern VOID StMObInstall _((LVAL menu));
extern VOID StMObRemove _((LVAL menu));
extern VOID StMObEnable _((LVAL menu, int enable));
extern int StMObPopup _((LVAL menu, int left, int top, LVAL window));
extern VOID StMObSetItemProp _((LVAL item, int which));
extern int StGWMakeCursor _((int n, char *image, char *mask, int h, int v, long refcon));
extern int StGWMakeResCursor _((char *name, int num, long refcon));
extern VOID StGWFreeCursor _((unsigned int index));
extern VOID StGWSetCursor _((StGWWinInfo *gwinfo, int cursor));
extern int StGWCursor _((StGWWinInfo *gwinfo));
extern VOID StGWSetRefCon _((StGWWinInfo *gwinfo, long x));
extern long StGWGetRefCon _((StGWWinInfo *gwinfo));
extern int StGWMakeColor _((double red, double green, double blue, long refcon));
extern VOID StGWFreeColor _((unsigned int index));
extern VOID StGWDrawBitmap _((StGWWinInfo *gwinfo,
                              int left, int top, int width, int height,
                              char *image));
#ifdef MACINTOSH
extern VOID StGWCopyToClip _((StGWWinInfo *gwinfo));
#endif
extern VOID StGWResetBuffer _((void));
#ifndef UNIX
extern LVAL get_menu_by_hardware _((IVIEW_MENU m));
#endif
#if (defined(AMIGA) || defined(MACINTOSH))
extern VOID StGWDumpImage _((StGWWinInfo *gwinfo, char *fname, double scale));
#else
extern VOID StGWDumpImage _((StGWWinInfo *gwinfo, FILEP file, double scale));
#endif /* AMIGA || MACINTOSH */

#ifdef _Windows
/* function prototypes */
extern int MSWAnyIdleActions(void);
extern int MSWAnyEventQueued(void);
extern void MSWDoIdleActions(void);
extern void MSWDoEventQueue(void);
extern int IsLispMenuHandle(HMENU);
extern void LispMenuUpdate(HMENU);
extern int IsLispMenuItem(WORD);
extern void LispMenuSelect(WORD);
extern void xlsmain(int, char **);
extern LVAL string2stream(char *);
extern LVAL readevalstream(LVAL);
extern void MSWCloseHelp(void);
extern BOOL InitApplResizeBrush(HANDLE hInstance);
extern BOOL StGwPrinting(StGWWinInfo *gwinfo);
extern void StGwSetPrintingDC(StGWWinInfo *gwinfo, HDC hdc);
#endif /* _Windows */
#endif /* XLSTAT_H */