gr-sys 0.1.7

Bindings to the GR C library
Documentation
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
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
/* automatically generated by rust-bindgen 0.68.1 */

pub const GKS_K_CONID_DEFAULT: *mut ::core::ffi::c_char = ::core::ptr::null_mut();
pub unsafe fn gsetlinecolorind(x: Gint) -> ::core::ffi::c_int {
    gsetlinecolourind(x)
}
pub unsafe fn gsetmarkercolorind(x: Gint) -> ::core::ffi::c_int {
    gsetmarkercolourind(x)
}
pub unsafe fn gsettextcolorind(x: Gint) -> ::core::ffi::c_int {
    gsettextcolourind(x)
}
pub unsafe fn gsetfillcolorind(x: Gint) -> ::core::ffi::c_int {
    gsetfillcolourind(x)
}
pub unsafe fn gsetcolorrep(x: Gint, y: Gint, p: *mut Gcobundl) -> ::core::ffi::c_int {
    gsetcolourrep(x, y, p)
}
pub unsafe fn ginqlinecolorind(a: *mut Gint, b: *mut Gint) -> ::core::ffi::c_int {
    ginqlinecolourind(a, b)
}
pub unsafe fn ginqtextcolorind(a: *mut Gint, b: *mut Gint) -> ::core::ffi::c_int {
    ginqtextcolourind(a, b)
}
pub unsafe fn ginqmarkercolorind(a: *mut Gint, b: *mut Gint) -> ::core::ffi::c_int {
    ginqmarkercolourind(a, b)
}


pub const GKS_K_WSTYPE_DEFAULT: ::core::ffi::c_int = 0;
pub const GKS_K_WSTYPE_MO: ::core::ffi::c_int = 2;
pub const GKS_K_WSTYPE_MI: ::core::ffi::c_int = 3;
pub const GKS_K_WSTYPE_WISS: ::core::ffi::c_int = 5;
pub const GKS_K_ASF_BUNDLED: ::core::ffi::c_int = 0;
pub const GKS_K_ASF_INDIVIDUAL: ::core::ffi::c_int = 1;
pub const GKS_K_CLEAR_CONDITIONALLY: ::core::ffi::c_int = 0;
pub const GKS_K_CLEAR_ALWAYS: ::core::ffi::c_int = 1;
pub const GKS_K_NOCLIP: ::core::ffi::c_int = 0;
pub const GKS_K_CLIP: ::core::ffi::c_int = 1;
pub const GKS_K_REGION_RECTANGLE: ::core::ffi::c_int = 0;
pub const GKS_K_REGION_ELLIPSE: ::core::ffi::c_int = 1;
pub const GKS_K_COORDINATES_WC: ::core::ffi::c_int = 0;
pub const GKS_K_COORDINATES_NDC: ::core::ffi::c_int = 1;
pub const GKS_K_METERS: ::core::ffi::c_int = 0;
pub const GKS_K_OTHER_UNITS: ::core::ffi::c_int = 1;
pub const GKS_K_INTSTYLE_HOLLOW: ::core::ffi::c_int = 0;
pub const GKS_K_INTSTYLE_SOLID: ::core::ffi::c_int = 1;
pub const GKS_K_INTSTYLE_PATTERN: ::core::ffi::c_int = 2;
pub const GKS_K_INTSTYLE_HATCH: ::core::ffi::c_int = 3;
pub const GKS_K_INTSTYLE_SOLID_WITH_BORDER: ::core::ffi::c_int = 4;
pub const GKS_K_STATUS_NONE: ::core::ffi::c_int = 0;
pub const GKS_K_STATUS_OK: ::core::ffi::c_int = 1;
pub const GKS_K_LEVEL_0A: ::core::ffi::c_int = 0;
pub const GKS_K_LEVEL_0B: ::core::ffi::c_int = 1;
pub const GKS_K_LEVEL_0C: ::core::ffi::c_int = 2;
pub const GKS_K_LEVEL_1A: ::core::ffi::c_int = 3;
pub const GKS_K_LEVEL_1B: ::core::ffi::c_int = 4;
pub const GKS_K_LEVEL_1C: ::core::ffi::c_int = 5;
pub const GKS_K_LEVEL_2A: ::core::ffi::c_int = 6;
pub const GKS_K_LEVEL_2B: ::core::ffi::c_int = 7;
pub const GKS_K_LEVEL_2C: ::core::ffi::c_int = 8;
pub const GKS_K_GKCL: ::core::ffi::c_int = 0;
pub const GKS_K_GKOP: ::core::ffi::c_int = 1;
pub const GKS_K_WSOP: ::core::ffi::c_int = 2;
pub const GKS_K_WSAC: ::core::ffi::c_int = 3;
pub const GKS_K_SGOP: ::core::ffi::c_int = 4;
pub const GKS_K_POSTPONE_FLAG: ::core::ffi::c_int = 0;
pub const GKS_K_PERFORM_FLAG: ::core::ffi::c_int = 1;
pub const GKS_K_WRITE_PAGE_FLAG: ::core::ffi::c_int = 2;
pub const GKS_K_TEXT_HALIGN_NORMAL: ::core::ffi::c_int = 0;
pub const GKS_K_TEXT_HALIGN_LEFT: ::core::ffi::c_int = 1;
pub const GKS_K_TEXT_HALIGN_CENTER: ::core::ffi::c_int = 2;
pub const GKS_K_TEXT_HALIGN_RIGHT: ::core::ffi::c_int = 3;
pub const GKS_K_TEXT_VALIGN_NORMAL: ::core::ffi::c_int = 0;
pub const GKS_K_TEXT_VALIGN_TOP: ::core::ffi::c_int = 1;
pub const GKS_K_TEXT_VALIGN_CAP: ::core::ffi::c_int = 2;
pub const GKS_K_TEXT_VALIGN_HALF: ::core::ffi::c_int = 3;
pub const GKS_K_TEXT_VALIGN_BASE: ::core::ffi::c_int = 4;
pub const GKS_K_TEXT_VALIGN_BOTTOM: ::core::ffi::c_int = 5;
pub const GKS_K_TEXT_PATH_RIGHT: ::core::ffi::c_int = 0;
pub const GKS_K_TEXT_PATH_LEFT: ::core::ffi::c_int = 1;
pub const GKS_K_TEXT_PATH_UP: ::core::ffi::c_int = 2;
pub const GKS_K_TEXT_PATH_DOWN: ::core::ffi::c_int = 3;
pub const GKS_K_TEXT_PRECISION_STRING: ::core::ffi::c_int = 0;
pub const GKS_K_TEXT_PRECISION_CHAR: ::core::ffi::c_int = 1;
pub const GKS_K_TEXT_PRECISION_STROKE: ::core::ffi::c_int = 2;
pub const GKS_K_TEXT_PRECISION_OUTLINE: ::core::ffi::c_int = 3;
pub const GKS_K_TEXT_MAX_SIZE: ::core::ffi::c_int = 500;
pub const GKS_K_WSCAT_OUTPUT: ::core::ffi::c_int = 0;
pub const GKS_K_WSCAT_INPUT: ::core::ffi::c_int = 1;
pub const GKS_K_WSCAT_OUTIN: ::core::ffi::c_int = 2;
pub const GKS_K_WSCAT_WISS: ::core::ffi::c_int = 3;
pub const GKS_K_WSCAT_MO: ::core::ffi::c_int = 4;
pub const GKS_K_WSCAT_MI: ::core::ffi::c_int = 5;
pub const GKS_K_WS_INACTIVE: ::core::ffi::c_int = 0;
pub const GKS_K_WS_ACTIVE: ::core::ffi::c_int = 1;
pub const GKS_K_LINETYPE_SOLID: ::core::ffi::c_int = 1;
pub const GKS_K_LINETYPE_DASHED: ::core::ffi::c_int = 2;
pub const GKS_K_LINETYPE_DOTTED: ::core::ffi::c_int = 3;
pub const GKS_K_LINETYPE_DASHED_DOTTED: ::core::ffi::c_int = 4;
pub const GKS_K_LINETYPE_DASH_2_DOT: ::core::ffi::c_int = -1;
pub const GKS_K_LINETYPE_DASH_3_DOT: ::core::ffi::c_int = -2;
pub const GKS_K_LINETYPE_LONG_DASH: ::core::ffi::c_int = -3;
pub const GKS_K_LINETYPE_LONG_SHORT_DASH: ::core::ffi::c_int = -4;
pub const GKS_K_LINETYPE_SPACED_DASH: ::core::ffi::c_int = -5;
pub const GKS_K_LINETYPE_SPACED_DOT: ::core::ffi::c_int = -6;
pub const GKS_K_LINETYPE_DOUBLE_DOT: ::core::ffi::c_int = -7;
pub const GKS_K_LINETYPE_TRIPLE_DOT: ::core::ffi::c_int = -8;
pub const GKS_K_MARKERTYPE_DOT: ::core::ffi::c_int = 1;
pub const GKS_K_MARKERTYPE_PLUS: ::core::ffi::c_int = 2;
pub const GKS_K_MARKERTYPE_ASTERISK: ::core::ffi::c_int = 3;
pub const GKS_K_MARKERTYPE_CIRCLE: ::core::ffi::c_int = 4;
pub const GKS_K_MARKERTYPE_DIAGONAL_CROSS: ::core::ffi::c_int = 5;
pub const GKS_K_MARKERTYPE_SOLID_CIRCLE: ::core::ffi::c_int = -1;
pub const GKS_K_MARKERTYPE_TRIANGLE_UP: ::core::ffi::c_int = -2;
pub const GKS_K_MARKERTYPE_SOLID_TRI_UP: ::core::ffi::c_int = -3;
pub const GKS_K_MARKERTYPE_TRIANGLE_DOWN: ::core::ffi::c_int = -4;
pub const GKS_K_MARKERTYPE_SOLID_TRI_DOWN: ::core::ffi::c_int = -5;
pub const GKS_K_MARKERTYPE_SQUARE: ::core::ffi::c_int = -6;
pub const GKS_K_MARKERTYPE_SOLID_SQUARE: ::core::ffi::c_int = -7;
pub const GKS_K_MARKERTYPE_BOWTIE: ::core::ffi::c_int = -8;
pub const GKS_K_MARKERTYPE_SOLID_BOWTIE: ::core::ffi::c_int = -9;
pub const GKS_K_MARKERTYPE_HOURGLASS: ::core::ffi::c_int = -10;
pub const GKS_K_MARKERTYPE_SOLID_HGLASS: ::core::ffi::c_int = -11;
pub const GKS_K_MARKERTYPE_DIAMOND: ::core::ffi::c_int = -12;
pub const GKS_K_MARKERTYPE_SOLID_DIAMOND: ::core::ffi::c_int = -13;
pub const GKS_K_MARKERTYPE_STAR: ::core::ffi::c_int = -14;
pub const GKS_K_MARKERTYPE_SOLID_STAR: ::core::ffi::c_int = -15;
pub const GKS_K_MARKERTYPE_TRI_UP_DOWN: ::core::ffi::c_int = -16;
pub const GKS_K_MARKERTYPE_SOLID_TRI_RIGHT: ::core::ffi::c_int = -17;
pub const GKS_K_MARKERTYPE_SOLID_TRI_LEFT: ::core::ffi::c_int = -18;
pub const GKS_K_MARKERTYPE_HOLLOW_PLUS: ::core::ffi::c_int = -19;
pub const GKS_K_MARKERTYPE_SOLID_PLUS: ::core::ffi::c_int = -20;
pub const GKS_K_MARKERTYPE_PENTAGON: ::core::ffi::c_int = -21;
pub const GKS_K_MARKERTYPE_HEXAGON: ::core::ffi::c_int = -22;
pub const GKS_K_MARKERTYPE_HEPTAGON: ::core::ffi::c_int = -23;
pub const GKS_K_MARKERTYPE_OCTAGON: ::core::ffi::c_int = -24;
pub const GKS_K_MARKERTYPE_STAR_4: ::core::ffi::c_int = -25;
pub const GKS_K_MARKERTYPE_STAR_5: ::core::ffi::c_int = -26;
pub const GKS_K_MARKERTYPE_STAR_6: ::core::ffi::c_int = -27;
pub const GKS_K_MARKERTYPE_STAR_7: ::core::ffi::c_int = -28;
pub const GKS_K_MARKERTYPE_STAR_8: ::core::ffi::c_int = -29;
pub const GKS_K_MARKERTYPE_VLINE: ::core::ffi::c_int = -30;
pub const GKS_K_MARKERTYPE_HLINE: ::core::ffi::c_int = -31;
pub const GKS_K_MARKERTYPE_OMARK: ::core::ffi::c_int = -32;
pub const GKS_K_VALUE_SET: ::core::ffi::c_int = 0;
pub const GKS_K_VALUE_REALIZED: ::core::ffi::c_int = 1;
pub const GKS_K_UPSAMPLE_VERTICAL_DEFAULT: ::core::ffi::c_int = 0;
pub const GKS_K_UPSAMPLE_HORIZONTAL_DEFAULT: ::core::ffi::c_int = 0;
pub const GKS_K_DOWNSAMPLE_VERTICAL_DEFAULT: ::core::ffi::c_int = 0;
pub const GKS_K_DOWNSAMPLE_HORIZONTAL_DEFAULT: ::core::ffi::c_int = 0;
pub const GKS_K_UPSAMPLE_VERTICAL_NEAREST: ::core::ffi::c_int = 1;
pub const GKS_K_UPSAMPLE_HORIZONTAL_NEAREST: ::core::ffi::c_int = 256;
pub const GKS_K_DOWNSAMPLE_VERTICAL_NEAREST: ::core::ffi::c_int = 65536;
pub const GKS_K_DOWNSAMPLE_HORIZONTAL_NEAREST: ::core::ffi::c_int = 16777216;
pub const GKS_K_UPSAMPLE_VERTICAL_LINEAR: ::core::ffi::c_int = 2;
pub const GKS_K_UPSAMPLE_HORIZONTAL_LINEAR: ::core::ffi::c_int = 512;
pub const GKS_K_DOWNSAMPLE_VERTICAL_LINEAR: ::core::ffi::c_int = 131072;
pub const GKS_K_DOWNSAMPLE_HORIZONTAL_LINEAR: ::core::ffi::c_int = 33554432;
pub const GKS_K_UPSAMPLE_VERTICAL_LANCZOS: ::core::ffi::c_int = 3;
pub const GKS_K_UPSAMPLE_HORIZONTAL_LANCZOS: ::core::ffi::c_int = 768;
pub const GKS_K_DOWNSAMPLE_VERTICAL_LANCZOS: ::core::ffi::c_int = 196608;
pub const GKS_K_DOWNSAMPLE_HORIZONTAL_LANCZOS: ::core::ffi::c_int = 50331648;
pub const GKS_K_RESAMPLE_DEFAULT: ::core::ffi::c_int = 0;
pub const GKS_K_RESAMPLE_NEAREST: ::core::ffi::c_int = 16843009;
pub const GKS_K_RESAMPLE_LINEAR: ::core::ffi::c_int = 33686018;
pub const GKS_K_RESAMPLE_LANCZOS: ::core::ffi::c_int = 50529027;
pub const GKS_K_GDP_DRAW_PATH: ::core::ffi::c_int = 1;
pub const GKS_K_GDP_DRAW_LINES: ::core::ffi::c_int = 2;
pub const GKS_K_GDP_DRAW_MARKERS: ::core::ffi::c_int = 3;
pub const GKS_K_GDP_DRAW_TRIANGLES: ::core::ffi::c_int = 4;
pub const GKS_K_GDP_FILL_POLYGONS: ::core::ffi::c_int = 5;
pub const GKS_K_NO_ERROR: ::core::ffi::c_int = 0;
pub const GKS_K_ERROR: ::core::ffi::c_int = 1;
pub type Gfile = ::core::ffi::c_void;
pub type Gchar = ::core::ffi::c_char;
pub type Gconn = ::core::ffi::c_char;
pub type Gfloat = f64;
pub type Gwstype = ::core::ffi::c_int;
pub type Gint = ::core::ffi::c_int;
pub type Guint = ::core::ffi::c_uint;
pub type Glong = ::core::ffi::c_long;
pub const Gasf_GBUNDLED: Gasf = 0;
pub const Gasf_GINDIVIDUAL: Gasf = 1;
pub type Gasf = ::core::ffi::c_uint;
pub const Gclip_GCLIP: Gclip = 0;
pub const Gclip_GNOCLIP: Gclip = 1;
pub type Gclip = ::core::ffi::c_uint;
pub const Gclrflag_GCONDITIONALLY: Gclrflag = 0;
pub const Gclrflag_GALWAYS: Gclrflag = 1;
pub type Gclrflag = ::core::ffi::c_uint;
pub const Gcsw_GWC: Gcsw = 0;
pub const Gcsw_GNDC: Gcsw = 1;
pub type Gcsw = ::core::ffi::c_uint;
pub const Gdevunits_GDC_METRES: Gdevunits = 0;
pub const Gdevunits_GDC_OTHER: Gdevunits = 1;
pub type Gdevunits = ::core::ffi::c_uint;
pub const Gflinter_GHOLLOW: Gflinter = 0;
pub const Gflinter_GSOLID: Gflinter = 1;
pub const Gflinter_GPATTERN: Gflinter = 2;
pub const Gflinter_GHATCH: Gflinter = 3;
pub type Gflinter = ::core::ffi::c_uint;
pub const Gistat_GOK: Gistat = 0;
pub const Gistat_GNONE: Gistat = 1;
pub type Gistat = ::core::ffi::c_uint;
pub const Glntype_GLN_SOLID: Glntype = 1;
pub const Glntype_GLN_DASHED: Glntype = 2;
pub const Glntype_GLN_DOTTED: Glntype = 3;
pub const Glntype_GLN_DASHDOT: Glntype = 4;
pub const Glntype_GLN_TRIPLE_DOT: Glntype = -8;
pub const Glntype_GLN_DOUBLE_DOT: Glntype = -7;
pub const Glntype_GLN_SPACED_DOT: Glntype = -6;
pub const Glntype_GLN_SPACED_DASH: Glntype = -5;
pub const Glntype_GLN_LONG_SHORT_DASH: Glntype = -4;
pub const Glntype_GLN_LONG_DASH: Glntype = -3;
pub const Glntype_GLN_DASH_3_DOT: Glntype = -2;
pub const Glntype_GLN_DASH_2_DOT: Glntype = -1;
pub type Glntype = ::core::ffi::c_int;
pub const Gmktype_GMK_POINT: Gmktype = 1;
pub const Gmktype_GMK_PLUS: Gmktype = 2;
pub const Gmktype_GMK_STAR: Gmktype = 3;
pub const Gmktype_GMK_O: Gmktype = 4;
pub const Gmktype_GMK_X: Gmktype = 5;
pub const Gmktype_GMK_SOLID_DIAMOND: Gmktype = -13;
pub const Gmktype_GMK_DIAMOND: Gmktype = -12;
pub const Gmktype_GMK_SOLID_HGLASS: Gmktype = -11;
pub const Gmktype_GMK_HOURGLASS: Gmktype = -10;
pub const Gmktype_GMK_SOLID_BOWTIE: Gmktype = -9;
pub const Gmktype_GMK_BOWTIE: Gmktype = -8;
pub const Gmktype_GMK_SOLID_SQUARE: Gmktype = -7;
pub const Gmktype_GMK_SQUARE: Gmktype = -6;
pub const Gmktype_GMK_SOLID_TRI_DOWN: Gmktype = -5;
pub const Gmktype_GMK_TRIANGLE_DOWN: Gmktype = -4;
pub const Gmktype_GMK_SOLID_TRI_UP: Gmktype = -3;
pub const Gmktype_GMK_TRIANGLE_UP: Gmktype = -2;
pub const Gmktype_GMK_SOLID_CIRCLE: Gmktype = -1;
pub type Gmktype = ::core::ffi::c_int;
pub const Gopst_GGKCL: Gopst = 0;
pub const Gopst_GGKOP: Gopst = 1;
pub const Gopst_GWSOP: Gopst = 2;
pub const Gopst_GWSAC: Gopst = 3;
pub const Gopst_GSGOP: Gopst = 4;
pub type Gopst = ::core::ffi::c_uint;
pub const Gregen_GPERFORM: Gregen = 0;
pub const Gregen_GPOSTPONE: Gregen = 1;
pub type Gregen = ::core::ffi::c_uint;
pub const Gtxhor_GAH_NORMAL: Gtxhor = 0;
pub const Gtxhor_GAH_LEFT: Gtxhor = 1;
pub const Gtxhor_GAH_CENTRE: Gtxhor = 2;
pub const Gtxhor_GAH_RIGHT: Gtxhor = 3;
pub type Gtxhor = ::core::ffi::c_uint;
pub const Gtxpath_GTP_RIGHT: Gtxpath = 0;
pub const Gtxpath_GTP_LEFT: Gtxpath = 1;
pub const Gtxpath_GTP_UP: Gtxpath = 2;
pub const Gtxpath_GTP_DOWN: Gtxpath = 3;
pub type Gtxpath = ::core::ffi::c_uint;
pub const Gtxprec_GP_STRING: Gtxprec = 0;
pub const Gtxprec_GP_CHAR: Gtxprec = 1;
pub const Gtxprec_GP_STROKE: Gtxprec = 2;
pub type Gtxprec = ::core::ffi::c_uint;
pub const Gtxver_GAV_NORMAL: Gtxver = 0;
pub const Gtxver_GAV_TOP: Gtxver = 1;
pub const Gtxver_GAV_CAP: Gtxver = 2;
pub const Gtxver_GAV_HALF: Gtxver = 3;
pub const Gtxver_GAV_BASE: Gtxver = 4;
pub const Gtxver_GAV_BOTTOM: Gtxver = 5;
pub type Gtxver = ::core::ffi::c_uint;
pub const Gwscat_GOUTPUT: Gwscat = 0;
pub const Gwscat_GINPUT: Gwscat = 1;
pub const Gwscat_GOUTIN: Gwscat = 2;
pub const Gwscat_GWISS: Gwscat = 3;
pub const Gwscat_GMO: Gwscat = 4;
pub const Gwscat_GMI: Gwscat = 5;
pub type Gwscat = ::core::ffi::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gipoint {
    pub x: Gint,
    pub y: Gint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gpoint {
    pub x: Gfloat,
    pub y: Gfloat,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Glimit {
    pub xmin: Gfloat,
    pub xmax: Gfloat,
    pub ymin: Gfloat,
    pub ymax: Gfloat,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gtxfp {
    pub font: Gint,
    pub prec: Gtxprec,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gtxalign {
    pub hor: Gtxhor,
    pub ver: Gtxver,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Grect {
    pub ul: Gpoint,
    pub lr: Gpoint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gidim {
    pub x_dim: Guint,
    pub y_dim: Guint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gasfs {
    pub ln_type: Gasf,
    pub ln_width: Gasf,
    pub ln_colour: Gasf,
    pub mk_type: Gasf,
    pub mk_size: Gasf,
    pub mk_colour: Gasf,
    pub tx_fp: Gasf,
    pub tx_exp: Gasf,
    pub tx_space: Gasf,
    pub tx_colour: Gasf,
    pub fl_inter: Gasf,
    pub fl_style: Gasf,
    pub fl_colour: Gasf,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gcobundl {
    pub red: Gfloat,
    pub green: Gfloat,
    pub blue: Gfloat,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gcliprect {
    pub ind: Gclip,
    pub rec: Glimit,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gdspsize {
    pub units: Gdevunits,
    pub device: Gpoint,
    pub raster: Gipoint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gextent {
    pub concat: Gpoint,
    pub corner_1: Gpoint,
    pub corner_2: Gpoint,
    pub corner_3: Gpoint,
    pub corner_4: Gpoint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gloc {
    pub transform: Gint,
    pub position: Gpoint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gqloc {
    pub status: Gistat,
    pub loc: Gloc,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gqstring {
    pub status: Gistat,
    pub string: *mut Gchar,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gscale {
    pub x_scale: Gfloat,
    pub y_scale: Gfloat,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Gtran {
    pub w: Glimit,
    pub v: Glimit,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Ggksmit {
    pub type_: Gint,
    pub length: Gint,
}
extern "C" {
    pub fn gks_init_gks();
}
extern "C" {
    pub fn gks_open_gks(errfil: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_close_gks();
}
extern "C" {
    pub fn gks_open_ws(
        wkid: ::core::ffi::c_int,
        conid: *mut ::core::ffi::c_char,
        wtype: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_close_ws(wkid: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_activate_ws(wkid: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_deactivate_ws(wkid: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_configure_ws(wkid: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_clear_ws(wkid: ::core::ffi::c_int, cofl: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_redraw_seg_on_ws(wkid: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_update_ws(wkid: ::core::ffi::c_int, regfl: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_deferral_state(
        wkid: ::core::ffi::c_int,
        defmo: ::core::ffi::c_int,
        regmo: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_escape(
        funid: ::core::ffi::c_int,
        dimidr: ::core::ffi::c_int,
        idr: *mut ::core::ffi::c_int,
        maxodr: ::core::ffi::c_int,
        lenodr: *mut ::core::ffi::c_int,
        odr: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_message(wkid: ::core::ffi::c_int, message: *mut ::core::ffi::c_char);
}
extern "C" {
    pub fn gks_polyline(n: ::core::ffi::c_int, pxa: *mut f64, pya: *mut f64);
}
extern "C" {
    pub fn gks_polymarker(n: ::core::ffi::c_int, pxa: *mut f64, pya: *mut f64);
}
extern "C" {
    pub fn gks_text(px: f64, py: f64, str_: *mut ::core::ffi::c_char);
}
extern "C" {
    pub fn gks_fillarea(n: ::core::ffi::c_int, pxa: *mut f64, pya: *mut f64);
}
extern "C" {
    pub fn gks_cellarray(
        qx: f64,
        qy: f64,
        rx: f64,
        ry: f64,
        dimx: ::core::ffi::c_int,
        dimy: ::core::ffi::c_int,
        scol: ::core::ffi::c_int,
        srow: ::core::ffi::c_int,
        ncol: ::core::ffi::c_int,
        nrow: ::core::ffi::c_int,
        colia: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_gdp(
        n: ::core::ffi::c_int,
        px: *mut f64,
        py: *mut f64,
        primid: ::core::ffi::c_int,
        ldr: ::core::ffi::c_int,
        datrec: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_set_pline_index(index: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_pline_linetype(ltype: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_pline_linewidth(lwidth: f64);
}
extern "C" {
    pub fn gks_set_pline_color_index(coli: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_pmark_index(index: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_pmark_type(mtype: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_pmark_size(mszsc: f64);
}
extern "C" {
    pub fn gks_set_pmark_color_index(coli: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_text_index(index: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_text_fontprec(font: ::core::ffi::c_int, prec: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_text_expfac(chxp: f64);
}
extern "C" {
    pub fn gks_set_text_spacing(chsp: f64);
}
extern "C" {
    pub fn gks_set_text_color_index(coli: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_text_height(chh: f64);
}
extern "C" {
    pub fn gks_inq_ws_text_height(chh: f64, height: f64) -> f64;
}
extern "C" {
    pub fn gks_set_text_upvec(chux: f64, chuy: f64);
}
extern "C" {
    pub fn gks_set_text_path(txp: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_text_align(txalh: ::core::ffi::c_int, txalv: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_fill_index(index: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_fill_int_style(ints: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_fill_style_index(styli: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_fill_color_index(coli: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_asf(flag: *mut ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_color_rep(
        wkid: ::core::ffi::c_int,
        index: ::core::ffi::c_int,
        red: f64,
        green: f64,
        blue: f64,
    );
}
extern "C" {
    pub fn gks_set_window(tnr: ::core::ffi::c_int, xmin: f64, xmax: f64, ymin: f64, ymax: f64);
}
extern "C" {
    pub fn gks_set_viewport(tnr: ::core::ffi::c_int, xmin: f64, xmax: f64, ymin: f64, ymax: f64);
}
extern "C" {
    pub fn gks_select_xform(tnr: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_clipping(clsw: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_ws_window(wkid: ::core::ffi::c_int, xmin: f64, xmax: f64, ymin: f64, ymax: f64);
}
extern "C" {
    pub fn gks_set_ws_viewport(
        wkid: ::core::ffi::c_int,
        xmin: f64,
        xmax: f64,
        ymin: f64,
        ymax: f64,
    );
}
extern "C" {
    pub fn gks_create_seg(segn: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_close_seg();
}
extern "C" {
    pub fn gks_delete_seg(segn: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_assoc_seg_with_ws(wkid: ::core::ffi::c_int, segn: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_copy_seg_to_ws(wkid: ::core::ffi::c_int, segn: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_seg_xform(segn: ::core::ffi::c_int, mat: *mut [f64; 2usize]);
}
extern "C" {
    pub fn gks_initialize_locator(
        wkid: ::core::ffi::c_int,
        lcdnr: ::core::ffi::c_int,
        tnr: ::core::ffi::c_int,
        px: f64,
        py: f64,
        pet: ::core::ffi::c_int,
        xmin: f64,
        xmax: f64,
        ymin: f64,
        ymax: f64,
        ldr: ::core::ffi::c_int,
        datrec: *mut ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn gks_request_locator(
        wkid: ::core::ffi::c_int,
        lcdnr: ::core::ffi::c_int,
        stat: *mut ::core::ffi::c_int,
        tnr: *mut ::core::ffi::c_int,
        px: *mut f64,
        py: *mut f64,
    );
}
extern "C" {
    pub fn gks_request_stroke(
        wkid: ::core::ffi::c_int,
        skdnr: ::core::ffi::c_int,
        n: ::core::ffi::c_int,
        stat: *mut ::core::ffi::c_int,
        tnr: *mut ::core::ffi::c_int,
        np: *mut ::core::ffi::c_int,
        pxa: *mut f64,
        pya: *mut f64,
    );
}
extern "C" {
    pub fn gks_request_choice(
        wkid: ::core::ffi::c_int,
        chdnr: ::core::ffi::c_int,
        stat: *mut ::core::ffi::c_int,
        chnr: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_request_string(
        wkid: ::core::ffi::c_int,
        stdnr: ::core::ffi::c_int,
        stat: *mut ::core::ffi::c_int,
        lostr: *mut ::core::ffi::c_int,
        str_: *mut ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn gks_read_item(
        wkid: ::core::ffi::c_int,
        lenidr: ::core::ffi::c_int,
        maxodr: ::core::ffi::c_int,
        odr: *mut ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn gks_get_item(
        wkid: ::core::ffi::c_int,
        type_: *mut ::core::ffi::c_int,
        lenodr: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_interpret_item(
        type_: ::core::ffi::c_int,
        lenidr: ::core::ffi::c_int,
        dimidr: ::core::ffi::c_int,
        idr: *mut ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn gks_eval_xform_matrix(
        fx: f64,
        fy: f64,
        transx: f64,
        transy: f64,
        phi: f64,
        scalex: f64,
        scaley: f64,
        coord: ::core::ffi::c_int,
        tran: *mut [f64; 2usize],
    );
}
extern "C" {
    pub fn gks_inq_operating_state(opsta: *mut ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_inq_level(errind: *mut ::core::ffi::c_int, lev: *mut ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_inq_wstype(
        n: ::core::ffi::c_int,
        errind: *mut ::core::ffi::c_int,
        number: *mut ::core::ffi::c_int,
        wtype: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_inq_max_xform(errind: *mut ::core::ffi::c_int, maxtnr: *mut ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_inq_open_ws(
        n: ::core::ffi::c_int,
        errind: *mut ::core::ffi::c_int,
        ol: *mut ::core::ffi::c_int,
        wkid: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_inq_active_ws(
        n: ::core::ffi::c_int,
        errind: *mut ::core::ffi::c_int,
        ol: *mut ::core::ffi::c_int,
        wkid: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_inq_segn_ws(
        wkid: ::core::ffi::c_int,
        n: ::core::ffi::c_int,
        errind: *mut ::core::ffi::c_int,
        ol: *mut ::core::ffi::c_int,
        segn: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_inq_color_rep(
        wkid: ::core::ffi::c_int,
        index: ::core::ffi::c_int,
        type_: ::core::ffi::c_int,
        errind: *mut ::core::ffi::c_int,
        red: *mut f64,
        green: *mut f64,
        blue: *mut f64,
    );
}
extern "C" {
    pub fn gks_inq_pline_linetype(errind: *mut ::core::ffi::c_int, ltype: *mut ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_inq_pline_linewidth(errind: *mut ::core::ffi::c_int, lwidth: *mut f64);
}
extern "C" {
    pub fn gks_inq_pline_color_index(
        errind: *mut ::core::ffi::c_int,
        coli: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_inq_pmark_type(errind: *mut ::core::ffi::c_int, mtype: *mut ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_inq_pmark_size(errind: *mut ::core::ffi::c_int, mszsc: *mut f64);
}
extern "C" {
    pub fn gks_inq_pmark_color_index(
        errind: *mut ::core::ffi::c_int,
        coli: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_inq_text_fontprec(
        errind: *mut ::core::ffi::c_int,
        font: *mut ::core::ffi::c_int,
        prec: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_inq_text_expfac(errind: *mut ::core::ffi::c_int, chxp: *mut f64);
}
extern "C" {
    pub fn gks_inq_text_spacing(errind: *mut ::core::ffi::c_int, chsp: *mut f64);
}
extern "C" {
    pub fn gks_inq_text_color_index(errind: *mut ::core::ffi::c_int, coli: *mut ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_inq_text_height(errind: *mut ::core::ffi::c_int, chh: *mut f64);
}
extern "C" {
    pub fn gks_inq_text_upvec(errind: *mut ::core::ffi::c_int, chux: *mut f64, chuy: *mut f64);
}
extern "C" {
    pub fn gks_inq_text_path(errind: *mut ::core::ffi::c_int, txp: *mut ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_inq_text_align(
        errind: *mut ::core::ffi::c_int,
        txalh: *mut ::core::ffi::c_int,
        txalv: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_inq_fill_int_style(errind: *mut ::core::ffi::c_int, ints: *mut ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_inq_fill_style_index(
        errind: *mut ::core::ffi::c_int,
        styli: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_inq_fill_color_index(errind: *mut ::core::ffi::c_int, coli: *mut ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_inq_transparency(errind: *mut ::core::ffi::c_int, alpha: *mut f64);
}
extern "C" {
    pub fn gks_inq_open_segn(errind: *mut ::core::ffi::c_int, segn: *mut ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_inq_current_xformno(errind: *mut ::core::ffi::c_int, tnr: *mut ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_inq_xform(
        tnr: ::core::ffi::c_int,
        errind: *mut ::core::ffi::c_int,
        wn: *mut f64,
        vp: *mut f64,
    );
}
extern "C" {
    pub fn gks_inq_clip(
        errind: *mut ::core::ffi::c_int,
        clsw: *mut ::core::ffi::c_int,
        clrt: *mut f64,
    );
}
extern "C" {
    pub fn gks_inq_ws_conntype(
        wkid: ::core::ffi::c_int,
        errind: *mut ::core::ffi::c_int,
        conid: *mut ::core::ffi::c_int,
        wtype: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_inq_ws_category(
        wkid: ::core::ffi::c_int,
        errind: *mut ::core::ffi::c_int,
        wscat: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_inq_text_extent(
        wkid: ::core::ffi::c_int,
        px: f64,
        py: f64,
        str_: *mut ::core::ffi::c_char,
        errind: *mut ::core::ffi::c_int,
        cpx: *mut f64,
        cpy: *mut f64,
        tx: *mut f64,
        ty: *mut f64,
    );
}
extern "C" {
    pub fn gks_inq_max_ds_size(
        wtype: ::core::ffi::c_int,
        errind: *mut ::core::ffi::c_int,
        dcunit: *mut ::core::ffi::c_int,
        rx: *mut f64,
        ry: *mut f64,
        lx: *mut ::core::ffi::c_int,
        ly: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_inq_vp_size(
        wkid: ::core::ffi::c_int,
        errind: *mut ::core::ffi::c_int,
        width: *mut ::core::ffi::c_int,
        height: *mut ::core::ffi::c_int,
        device_pixel_ratio: *mut f64,
    );
}
extern "C" {
    pub fn gks_sample_locator(
        wkid: ::core::ffi::c_int,
        errind: *mut ::core::ffi::c_int,
        x: *mut f64,
        y: *mut f64,
        buttons: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_emergency_close();
}
extern "C" {
    pub fn gks_set_text_slant(slant: f64);
}
extern "C" {
    pub fn gks_draw_image(
        x: f64,
        y: f64,
        scalex: f64,
        scaley: f64,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
        data: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_set_shadow(offsetx: f64, offsety: f64, blur: f64);
}
extern "C" {
    pub fn gks_set_transparency(alpha: f64);
}
extern "C" {
    pub fn gks_set_coord_xform(mat: *mut [f64; 2usize]);
}
extern "C" {
    pub fn gks_begin_selection(index: ::core::ffi::c_int, kind: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_end_selection();
}
extern "C" {
    pub fn gks_move_selection(x: f64, y: f64);
}
extern "C" {
    pub fn gks_resize_selection(kind: ::core::ffi::c_int, x: f64, y: f64);
}
extern "C" {
    pub fn gks_set_bbox_callback(
        id: ::core::ffi::c_int,
        callback: ::core::option::Option<
            unsafe extern "C" fn(
                arg1: ::core::ffi::c_int,
                arg2: f64,
                arg3: f64,
                arg4: f64,
                arg5: f64,
            ),
        >,
    );
}
extern "C" {
    pub fn gks_cancel_bbox_callback();
}
extern "C" {
    pub fn gks_set_background();
}
extern "C" {
    pub fn gks_clear_background();
}
extern "C" {
    pub fn gks_inq_bbox(
        errind: *mut ::core::ffi::c_int,
        xmin: *mut f64,
        xmax: *mut f64,
        ymin: *mut f64,
        ymax: *mut f64,
    );
}
extern "C" {
    pub fn gks_inq_text_slant(errind: *mut ::core::ffi::c_int, slant: *mut f64);
}
extern "C" {
    pub fn gks_precision() -> f64;
}
extern "C" {
    pub fn gks_text_maxsize() -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gks_set_border_color_index(coli: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_inq_border_color_index(
        errind: *mut ::core::ffi::c_int,
        coli: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_set_border_width(bwidth: f64);
}
extern "C" {
    pub fn gks_inq_border_width(errind: *mut ::core::ffi::c_int, bwidth: *mut f64);
}
extern "C" {
    pub fn gks_select_clip_xform(tnr: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_inq_clip_xform(errind: *mut ::core::ffi::c_int, tnr: *mut ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_resample_method(flag: ::core::ffi::c_uint);
}
extern "C" {
    pub fn gks_inq_resample_method(flag: *mut ::core::ffi::c_uint);
}
extern "C" {
    pub fn gks_ft_gdp(
        n: ::core::ffi::c_int,
        px: *mut f64,
        py: *mut f64,
        primid: ::core::ffi::c_int,
        ldr: ::core::ffi::c_int,
        datrec: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn gks_state() -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn gks_set_nominal_size(factor: f64);
}
extern "C" {
    pub fn gks_inq_nominal_size(factor: *mut f64);
}
extern "C" {
    pub fn gks_set_clip_region(region: ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_inq_clip_region(errind: *mut ::core::ffi::c_int, region: *mut ::core::ffi::c_int);
}
extern "C" {
    pub fn gks_set_clip_sector(start_angle: f64, end_angle: f64);
}
extern "C" {
    pub fn gks_inq_clip_sector(
        errind: *mut ::core::ffi::c_int,
        start_angle: *mut f64,
        end_angle: *mut f64,
    );
}
extern "C" {
    pub fn gopengks(arg1: *mut Gfile, arg2: Glong) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gclosegks() -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gopenws(arg1: Gint, arg2: *mut Gconn, arg3: *mut Gwstype) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gclosews(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gactivatews(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gdeactivatews(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gconfigurews(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gclearws(arg1: Gint, arg2: Gclrflag) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gupdatews(arg1: Gint, arg2: Gregen) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gmessage(arg1: Gint, arg2: *mut Gchar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gpolyline(arg1: Gint, arg2: *mut Gpoint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gpolymarker(arg1: Gint, arg2: *mut Gpoint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gtext(arg1: *mut Gpoint, arg2: *mut Gchar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gfillarea(arg1: Gint, arg2: *mut Gpoint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gcellarray(arg1: *mut Grect, arg2: *mut Gidim, arg3: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetasf(arg1: *mut Gasfs) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetlineind(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetlinetype(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetlinewidth(arg1: Gfloat) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetlinecolourind(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetmarkerind(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetmarkertype(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetmarkersize(arg1: Gfloat) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetmarkercolourind(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsettextind(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsettextfontprec(arg1: *mut Gtxfp) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetcharexpan(arg1: Gfloat) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetcharspace(arg1: Gfloat) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsettextcolourind(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetcharheight(arg1: Gfloat) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetcharup(arg1: *mut Gpoint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsettextpath(arg1: Gtxpath) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsettextalign(arg1: *mut Gtxalign) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetfillind(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetfillintstyle(arg1: Gflinter) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetfillstyle(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetfillcolourind(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetcolourrep(arg1: Gint, arg2: Gint, arg3: *mut Gcobundl) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetwindow(arg1: Gint, arg2: *mut Glimit) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetviewport(arg1: Gint, arg2: *mut Glimit) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gselntran(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetclip(arg1: Gclip) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetwswindow(arg1: Gint, arg2: *mut Glimit) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetwsviewport(arg1: Gint, arg2: *mut Glimit) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn greqloc(arg1: Gint, arg2: Gint, arg3: *mut Gqloc) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn greqstring(arg1: Gint, arg2: Gint, arg3: *mut Gqstring) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gcreateseg(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gcopysegws(arg1: Gint, arg2: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gredrawsegws(arg1: Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gcloseseg() -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gevaltran(
        arg1: *mut Gpoint,
        arg2: *mut Gpoint,
        arg3: Gfloat,
        arg4: *mut Gscale,
        arg5: Gcsw,
        arg6: *mut [Gfloat; 3usize],
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gsetsegtran(arg1: Gint, arg2: *mut [Gfloat; 3usize]) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqopst(arg1: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqlevelgks(arg1: *mut Gint, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqmaxntrannum(arg1: *mut Gint, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqcharheight(arg1: *mut Gfloat, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqcharup(arg1: *mut Gpoint, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqtextpath(arg1: *mut Gtxpath, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqtextalign(arg1: *mut Gtxalign, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqlinetype(arg1: *mut Gint, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqlinewidth(arg1: *mut Gfloat, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqlinecolourind(arg1: *mut Gint, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqmarkertype(arg1: *mut Gint, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqmarkersize(arg1: *mut Gfloat, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqmarkercolourind(arg1: *mut Gint, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqtextfontprec(arg1: *mut Gtxfp, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqcharexpan(arg1: *mut Gfloat, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqcharspace(arg1: *mut Gfloat, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqtextcolourind(arg1: *mut Gint, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqfillintstyle(arg1: *mut Gint, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqfillstyle(arg1: *mut Gint, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqfillcolourind(arg1: *mut Gint, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqcurntrannum(arg1: *mut Gint, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqntran(arg1: Gint, arg2: *mut Gtran, arg3: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqclip(arg1: *mut Gcliprect, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqwscategory(
        arg1: *mut Gwstype,
        arg2: *mut Gint,
        arg3: *mut Gint,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqdisplaysize(
        arg1: *mut Gwstype,
        arg2: *mut Gdspsize,
        arg3: *mut Gint,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqtextextent(
        arg1: Gint,
        arg2: *mut Gpoint,
        arg3: *mut Gchar,
        arg4: *mut Gextent,
        arg5: *mut Gint,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn ginqnameopenseg(arg1: *mut Gint, arg2: *mut Gint) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn gemergencyclosegks() -> ::core::ffi::c_int;
}