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
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
/* automatically generated by rust-bindgen */

pub const true_ : u32 = 1 ; pub const false_ : u32 = 0 ; pub const __bool_true_false_are_defined : u32 = 1 ; pub const _LIBC_LIMITS_H_ : u32 = 1 ; pub const _FEATURES_H : u32 = 1 ; pub const _DEFAULT_SOURCE : u32 = 1 ; pub const __USE_ISOC11 : u32 = 1 ; pub const __USE_ISOC99 : u32 = 1 ; pub const __USE_ISOC95 : u32 = 1 ; pub const __USE_POSIX_IMPLICITLY : u32 = 1 ; pub const _POSIX_SOURCE : u32 = 1 ; pub const _POSIX_C_SOURCE : u32 = 200809 ; pub const __USE_POSIX : u32 = 1 ; pub const __USE_POSIX2 : u32 = 1 ; pub const __USE_POSIX199309 : u32 = 1 ; pub const __USE_POSIX199506 : u32 = 1 ; pub const __USE_XOPEN2K : u32 = 1 ; pub const __USE_XOPEN2K8 : u32 = 1 ; pub const _ATFILE_SOURCE : u32 = 1 ; pub const __USE_MISC : u32 = 1 ; pub const __USE_ATFILE : u32 = 1 ; pub const __USE_FORTIFY_LEVEL : u32 = 0 ; pub const __GLIBC_USE_DEPRECATED_GETS : u32 = 0 ; pub const _STDC_PREDEF_H : u32 = 1 ; pub const __STDC_IEC_559__ : u32 = 1 ; pub const __STDC_IEC_559_COMPLEX__ : u32 = 1 ; pub const __STDC_ISO_10646__ : u32 = 201706 ; pub const __STDC_NO_THREADS__ : u32 = 1 ; pub const __GNU_LIBRARY__ : u32 = 6 ; pub const __GLIBC__ : u32 = 2 ; pub const __GLIBC_MINOR__ : u32 = 27 ; pub const _SYS_CDEFS_H : u32 = 1 ; pub const __glibc_c99_flexarr_available : u32 = 1 ; pub const __WORDSIZE : u32 = 64 ; pub const __WORDSIZE_TIME64_COMPAT32 : u32 = 1 ; pub const __SYSCALL_WORDSIZE : u32 = 64 ; pub const __HAVE_GENERIC_SELECTION : u32 = 1 ; pub const __GLIBC_USE_LIB_EXT2 : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_BFP_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT : u32 = 0 ; pub const __GLIBC_USE_IEC_60559_TYPES_EXT : u32 = 0 ; pub const MB_LEN_MAX : u32 = 16 ; pub const _BITS_POSIX1_LIM_H : u32 = 1 ; pub const _POSIX_AIO_LISTIO_MAX : u32 = 2 ; pub const _POSIX_AIO_MAX : u32 = 1 ; pub const _POSIX_ARG_MAX : u32 = 4096 ; pub const _POSIX_CHILD_MAX : u32 = 25 ; pub const _POSIX_DELAYTIMER_MAX : u32 = 32 ; pub const _POSIX_HOST_NAME_MAX : u32 = 255 ; pub const _POSIX_LINK_MAX : u32 = 8 ; pub const _POSIX_LOGIN_NAME_MAX : u32 = 9 ; pub const _POSIX_MAX_CANON : u32 = 255 ; pub const _POSIX_MAX_INPUT : u32 = 255 ; pub const _POSIX_MQ_OPEN_MAX : u32 = 8 ; pub const _POSIX_MQ_PRIO_MAX : u32 = 32 ; pub const _POSIX_NAME_MAX : u32 = 14 ; pub const _POSIX_NGROUPS_MAX : u32 = 8 ; pub const _POSIX_OPEN_MAX : u32 = 20 ; pub const _POSIX_PATH_MAX : u32 = 256 ; pub const _POSIX_PIPE_BUF : u32 = 512 ; pub const _POSIX_RE_DUP_MAX : u32 = 255 ; pub const _POSIX_RTSIG_MAX : u32 = 8 ; pub const _POSIX_SEM_NSEMS_MAX : u32 = 256 ; pub const _POSIX_SEM_VALUE_MAX : u32 = 32767 ; pub const _POSIX_SIGQUEUE_MAX : u32 = 32 ; pub const _POSIX_SSIZE_MAX : u32 = 32767 ; pub const _POSIX_STREAM_MAX : u32 = 8 ; pub const _POSIX_SYMLINK_MAX : u32 = 255 ; pub const _POSIX_SYMLOOP_MAX : u32 = 8 ; pub const _POSIX_TIMER_MAX : u32 = 32 ; pub const _POSIX_TTY_NAME_MAX : u32 = 9 ; pub const _POSIX_TZNAME_MAX : u32 = 6 ; pub const _POSIX_CLOCKRES_MIN : u32 = 20000000 ; pub const NR_OPEN : u32 = 1024 ; pub const NGROUPS_MAX : u32 = 65536 ; pub const ARG_MAX : u32 = 131072 ; pub const LINK_MAX : u32 = 127 ; pub const MAX_CANON : u32 = 255 ; pub const MAX_INPUT : u32 = 255 ; pub const NAME_MAX : u32 = 255 ; pub const PATH_MAX : u32 = 4096 ; pub const PIPE_BUF : u32 = 4096 ; pub const XATTR_NAME_MAX : u32 = 255 ; pub const XATTR_SIZE_MAX : u32 = 65536 ; pub const XATTR_LIST_MAX : u32 = 65536 ; pub const RTSIG_MAX : u32 = 32 ; pub const _POSIX_THREAD_KEYS_MAX : u32 = 128 ; pub const PTHREAD_KEYS_MAX : u32 = 1024 ; pub const _POSIX_THREAD_DESTRUCTOR_ITERATIONS : u32 = 4 ; pub const PTHREAD_DESTRUCTOR_ITERATIONS : u32 = 4 ; pub const _POSIX_THREAD_THREADS_MAX : u32 = 64 ; pub const AIO_PRIO_DELTA_MAX : u32 = 20 ; pub const PTHREAD_STACK_MIN : u32 = 16384 ; pub const DELAYTIMER_MAX : u32 = 2147483647 ; pub const TTY_NAME_MAX : u32 = 32 ; pub const LOGIN_NAME_MAX : u32 = 256 ; pub const HOST_NAME_MAX : u32 = 64 ; pub const MQ_PRIO_MAX : u32 = 32768 ; pub const SEM_VALUE_MAX : u32 = 2147483647 ; pub const _BITS_POSIX2_LIM_H : u32 = 1 ; pub const _POSIX2_BC_BASE_MAX : u32 = 99 ; pub const _POSIX2_BC_DIM_MAX : u32 = 2048 ; pub const _POSIX2_BC_SCALE_MAX : u32 = 99 ; pub const _POSIX2_BC_STRING_MAX : u32 = 1000 ; pub const _POSIX2_COLL_WEIGHTS_MAX : u32 = 2 ; pub const _POSIX2_EXPR_NEST_MAX : u32 = 32 ; pub const _POSIX2_LINE_MAX : u32 = 2048 ; pub const _POSIX2_RE_DUP_MAX : u32 = 255 ; pub const _POSIX2_CHARCLASS_NAME_MAX : u32 = 14 ; pub const BC_BASE_MAX : u32 = 99 ; pub const BC_DIM_MAX : u32 = 2048 ; pub const BC_SCALE_MAX : u32 = 99 ; pub const BC_STRING_MAX : u32 = 1000 ; pub const COLL_WEIGHTS_MAX : u32 = 255 ; pub const EXPR_NEST_MAX : u32 = 32 ; pub const LINE_MAX : u32 = 2048 ; pub const CHARCLASS_NAME_MAX : u32 = 2048 ; pub const RE_DUP_MAX : u32 = 32767 ; pub const kOfxActionLoad : & 'static [ u8 ; 14usize ] = b"OfxActionLoad\0" ; pub const kOfxActionDescribe : & 'static [ u8 ; 18usize ] = b"OfxActionDescribe\0" ; pub const kOfxActionUnload : & 'static [ u8 ; 16usize ] = b"OfxActionUnload\0" ; pub const kOfxActionPurgeCaches : & 'static [ u8 ; 21usize ] = b"OfxActionPurgeCaches\0" ; pub const kOfxActionSyncPrivateData : & 'static [ u8 ; 25usize ] = b"OfxActionSyncPrivateData\0" ; pub const kOfxActionCreateInstance : & 'static [ u8 ; 24usize ] = b"OfxActionCreateInstance\0" ; pub const kOfxActionDestroyInstance : & 'static [ u8 ; 25usize ] = b"OfxActionDestroyInstance\0" ; pub const kOfxActionInstanceChanged : & 'static [ u8 ; 25usize ] = b"OfxActionInstanceChanged\0" ; pub const kOfxActionBeginInstanceChanged : & 'static [ u8 ; 30usize ] = b"OfxActionBeginInstanceChanged\0" ; pub const kOfxActionEndInstanceChanged : & 'static [ u8 ; 28usize ] = b"OfxActionEndInstanceChanged\0" ; pub const kOfxActionBeginInstanceEdit : & 'static [ u8 ; 27usize ] = b"OfxActionBeginInstanceEdit\0" ; pub const kOfxActionEndInstanceEdit : & 'static [ u8 ; 25usize ] = b"OfxActionEndInstanceEdit\0" ; pub const kOfxPropAPIVersion : & 'static [ u8 ; 18usize ] = b"OfxPropAPIVersion\0" ; pub const kOfxPropTime : & 'static [ u8 ; 12usize ] = b"OfxPropTime\0" ; pub const kOfxPropIsInteractive : & 'static [ u8 ; 21usize ] = b"OfxPropIsInteractive\0" ; pub const kOfxPluginPropFilePath : & 'static [ u8 ; 22usize ] = b"OfxPluginPropFilePath\0" ; pub const kOfxPropInstanceData : & 'static [ u8 ; 20usize ] = b"OfxPropInstanceData\0" ; pub const kOfxPropType : & 'static [ u8 ; 12usize ] = b"OfxPropType\0" ; pub const kOfxPropName : & 'static [ u8 ; 12usize ] = b"OfxPropName\0" ; pub const kOfxPropVersion : & 'static [ u8 ; 15usize ] = b"OfxPropVersion\0" ; pub const kOfxPropVersionLabel : & 'static [ u8 ; 20usize ] = b"OfxPropVersionLabel\0" ; pub const kOfxPropPluginDescription : & 'static [ u8 ; 25usize ] = b"OfxPropPluginDescription\0" ; pub const kOfxPropLabel : & 'static [ u8 ; 13usize ] = b"OfxPropLabel\0" ; pub const kOfxPropIcon : & 'static [ u8 ; 12usize ] = b"OfxPropIcon\0" ; pub const kOfxPropShortLabel : & 'static [ u8 ; 18usize ] = b"OfxPropShortLabel\0" ; pub const kOfxPropLongLabel : & 'static [ u8 ; 17usize ] = b"OfxPropLongLabel\0" ; pub const kOfxPropChangeReason : & 'static [ u8 ; 20usize ] = b"OfxPropChangeReason\0" ; pub const kOfxPropEffectInstance : & 'static [ u8 ; 22usize ] = b"OfxPropEffectInstance\0" ; pub const kOfxPropHostOSHandle : & 'static [ u8 ; 20usize ] = b"OfxPropHostOSHandle\0" ; pub const kOfxChangeUserEdited : & 'static [ u8 ; 20usize ] = b"OfxChangeUserEdited\0" ; pub const kOfxChangePluginEdited : & 'static [ u8 ; 22usize ] = b"OfxChangePluginEdited\0" ; pub const kOfxChangeTime : & 'static [ u8 ; 14usize ] = b"OfxChangeTime\0" ; pub const kOfxBitDepthNone : & 'static [ u8 ; 16usize ] = b"OfxBitDepthNone\0" ; pub const kOfxBitDepthByte : & 'static [ u8 ; 16usize ] = b"OfxBitDepthByte\0" ; pub const kOfxBitDepthShort : & 'static [ u8 ; 17usize ] = b"OfxBitDepthShort\0" ; pub const kOfxBitDepthHalf : & 'static [ u8 ; 16usize ] = b"OfxBitDepthHalf\0" ; pub const kOfxBitDepthFloat : & 'static [ u8 ; 17usize ] = b"OfxBitDepthFloat\0" ; pub const kOfxStatOK : u32 = 0 ; pub const kOfxPropertySuite : & 'static [ u8 ; 17usize ] = b"OfxPropertySuite\0" ; pub const kOfxParameterSuite : & 'static [ u8 ; 18usize ] = b"OfxParameterSuite\0" ; pub const kOfxTypeParameter : & 'static [ u8 ; 17usize ] = b"OfxTypeParameter\0" ; pub const kOfxTypeParameterInstance : & 'static [ u8 ; 25usize ] = b"OfxTypeParameterInstance\0" ; pub const kOfxParamTypeInteger : & 'static [ u8 ; 20usize ] = b"OfxParamTypeInteger\0" ; pub const kOfxParamTypeDouble : & 'static [ u8 ; 19usize ] = b"OfxParamTypeDouble\0" ; pub const kOfxParamTypeBoolean : & 'static [ u8 ; 20usize ] = b"OfxParamTypeBoolean\0" ; pub const kOfxParamTypeChoice : & 'static [ u8 ; 19usize ] = b"OfxParamTypeChoice\0" ; pub const kOfxParamTypeRGBA : & 'static [ u8 ; 17usize ] = b"OfxParamTypeRGBA\0" ; pub const kOfxParamTypeRGB : & 'static [ u8 ; 16usize ] = b"OfxParamTypeRGB\0" ; pub const kOfxParamTypeDouble2D : & 'static [ u8 ; 21usize ] = b"OfxParamTypeDouble2D\0" ; pub const kOfxParamTypeInteger2D : & 'static [ u8 ; 22usize ] = b"OfxParamTypeInteger2D\0" ; pub const kOfxParamTypeDouble3D : & 'static [ u8 ; 21usize ] = b"OfxParamTypeDouble3D\0" ; pub const kOfxParamTypeInteger3D : & 'static [ u8 ; 22usize ] = b"OfxParamTypeInteger3D\0" ; pub const kOfxParamTypeString : & 'static [ u8 ; 19usize ] = b"OfxParamTypeString\0" ; pub const kOfxParamTypeCustom : & 'static [ u8 ; 19usize ] = b"OfxParamTypeCustom\0" ; pub const kOfxParamTypeGroup : & 'static [ u8 ; 18usize ] = b"OfxParamTypeGroup\0" ; pub const kOfxParamTypePage : & 'static [ u8 ; 17usize ] = b"OfxParamTypePage\0" ; pub const kOfxParamTypePushButton : & 'static [ u8 ; 23usize ] = b"OfxParamTypePushButton\0" ; pub const kOfxParamHostPropSupportsCustomAnimation : & 'static [ u8 ; 40usize ] = b"OfxParamHostPropSupportsCustomAnimation\0" ; pub const kOfxParamHostPropSupportsStringAnimation : & 'static [ u8 ; 40usize ] = b"OfxParamHostPropSupportsStringAnimation\0" ; pub const kOfxParamHostPropSupportsBooleanAnimation : & 'static [ u8 ; 41usize ] = b"OfxParamHostPropSupportsBooleanAnimation\0" ; pub const kOfxParamHostPropSupportsChoiceAnimation : & 'static [ u8 ; 40usize ] = b"OfxParamHostPropSupportsChoiceAnimation\0" ; pub const kOfxParamHostPropSupportsCustomInteract : & 'static [ u8 ; 39usize ] = b"OfxParamHostPropSupportsCustomInteract\0" ; pub const kOfxParamHostPropMaxParameters : & 'static [ u8 ; 30usize ] = b"OfxParamHostPropMaxParameters\0" ; pub const kOfxParamHostPropMaxPages : & 'static [ u8 ; 25usize ] = b"OfxParamHostPropMaxPages\0" ; pub const kOfxParamHostPropPageRowColumnCount : & 'static [ u8 ; 35usize ] = b"OfxParamHostPropPageRowColumnCount\0" ; pub const kOfxParamPageSkipRow : & 'static [ u8 ; 20usize ] = b"OfxParamPageSkipRow\0" ; pub const kOfxParamPageSkipColumn : & 'static [ u8 ; 23usize ] = b"OfxParamPageSkipColumn\0" ; pub const kOfxParamPropInteractV1 : & 'static [ u8 ; 23usize ] = b"OfxParamPropInteractV1\0" ; pub const kOfxParamPropInteractSize : & 'static [ u8 ; 25usize ] = b"OfxParamPropInteractSize\0" ; pub const kOfxParamPropInteractSizeAspect : & 'static [ u8 ; 31usize ] = b"OfxParamPropInteractSizeAspect\0" ; pub const kOfxParamPropInteractMinimumSize : & 'static [ u8 ; 32usize ] = b"OfxParamPropInteractMinimumSize\0" ; pub const kOfxParamPropInteractPreferedSize : & 'static [ u8 ; 33usize ] = b"OfxParamPropInteractPreferedSize\0" ; pub const kOfxParamPropType : & 'static [ u8 ; 17usize ] = b"OfxParamPropType\0" ; pub const kOfxParamPropAnimates : & 'static [ u8 ; 21usize ] = b"OfxParamPropAnimates\0" ; pub const kOfxParamPropCanUndo : & 'static [ u8 ; 20usize ] = b"OfxParamPropCanUndo\0" ; pub const kOfxPropParamSetNeedsSyncing : & 'static [ u8 ; 28usize ] = b"OfxPropParamSetNeedsSyncing\0" ; pub const kOfxParamPropIsAnimating : & 'static [ u8 ; 24usize ] = b"OfxParamPropIsAnimating\0" ; pub const kOfxParamPropPluginMayWrite : & 'static [ u8 ; 27usize ] = b"OfxParamPropPluginMayWrite\0" ; pub const kOfxParamPropPersistent : & 'static [ u8 ; 23usize ] = b"OfxParamPropPersistant\0" ; pub const kOfxParamPropEvaluateOnChange : & 'static [ u8 ; 29usize ] = b"OfxParamPropEvaluateOnChange\0" ; pub const kOfxParamPropSecret : & 'static [ u8 ; 19usize ] = b"OfxParamPropSecret\0" ; pub const kOfxParamPropScriptName : & 'static [ u8 ; 23usize ] = b"OfxParamPropScriptName\0" ; pub const kOfxParamPropCacheInvalidation : & 'static [ u8 ; 30usize ] = b"OfxParamPropCacheInvalidation\0" ; pub const kOfxParamInvalidateValueChange : & 'static [ u8 ; 30usize ] = b"OfxParamInvalidateValueChange\0" ; pub const kOfxParamInvalidateValueChangeToEnd : & 'static [ u8 ; 35usize ] = b"OfxParamInvalidateValueChangeToEnd\0" ; pub const kOfxParamInvalidateAll : & 'static [ u8 ; 22usize ] = b"OfxParamInvalidateAll\0" ; pub const kOfxParamPropHint : & 'static [ u8 ; 17usize ] = b"OfxParamPropHint\0" ; pub const kOfxParamPropDefault : & 'static [ u8 ; 20usize ] = b"OfxParamPropDefault\0" ; pub const kOfxParamPropDoubleType : & 'static [ u8 ; 23usize ] = b"OfxParamPropDoubleType\0" ; pub const kOfxParamDoubleTypePlain : & 'static [ u8 ; 24usize ] = b"OfxParamDoubleTypePlain\0" ; pub const kOfxParamDoubleTypeScale : & 'static [ u8 ; 24usize ] = b"OfxParamDoubleTypeScale\0" ; pub const kOfxParamDoubleTypeAngle : & 'static [ u8 ; 24usize ] = b"OfxParamDoubleTypeAngle\0" ; pub const kOfxParamDoubleTypeTime : & 'static [ u8 ; 23usize ] = b"OfxParamDoubleTypeTime\0" ; pub const kOfxParamDoubleTypeAbsoluteTime : & 'static [ u8 ; 31usize ] = b"OfxParamDoubleTypeAbsoluteTime\0" ; pub const kOfxParamDoubleTypeX : & 'static [ u8 ; 20usize ] = b"OfxParamDoubleTypeX\0" ; pub const kOfxParamDoubleTypeY : & 'static [ u8 ; 20usize ] = b"OfxParamDoubleTypeY\0" ; pub const kOfxParamDoubleTypeXAbsolute : & 'static [ u8 ; 28usize ] = b"OfxParamDoubleTypeXAbsolute\0" ; pub const kOfxParamDoubleTypeYAbsolute : & 'static [ u8 ; 28usize ] = b"OfxParamDoubleTypeYAbsolute\0" ; pub const kOfxParamDoubleTypeXY : & 'static [ u8 ; 21usize ] = b"OfxParamDoubleTypeXY\0" ; pub const kOfxParamDoubleTypeXYAbsolute : & 'static [ u8 ; 29usize ] = b"OfxParamDoubleTypeXYAbsolute\0" ; pub const kOfxParamPropDefaultCoordinateSystem : & 'static [ u8 ; 36usize ] = b"OfxParamPropDefaultCoordinateSystem\0" ; pub const kOfxParamCoordinatesCanonical : & 'static [ u8 ; 29usize ] = b"OfxParamCoordinatesCanonical\0" ; pub const kOfxParamCoordinatesNormalised : & 'static [ u8 ; 30usize ] = b"OfxParamCoordinatesNormalised\0" ; pub const kOfxParamPropHasHostOverlayHandle : & 'static [ u8 ; 33usize ] = b"OfxParamPropHasHostOverlayHandle\0" ; pub const kOfxParamPropUseHostOverlayHandle : & 'static [ u8 ; 34usize ] = b"kOfxParamPropUseHostOverlayHandle\0" ; pub const kOfxParamPropShowTimeMarker : & 'static [ u8 ; 27usize ] = b"OfxParamPropShowTimeMarker\0" ; pub const kOfxPluginPropParamPageOrder : & 'static [ u8 ; 28usize ] = b"OfxPluginPropParamPageOrder\0" ; pub const kOfxParamPropPageChild : & 'static [ u8 ; 22usize ] = b"OfxParamPropPageChild\0" ; pub const kOfxParamPropParent : & 'static [ u8 ; 19usize ] = b"OfxParamPropParent\0" ; pub const kOfxParamPropGroupOpen : & 'static [ u8 ; 22usize ] = b"OfxParamPropGroupOpen\0" ; pub const kOfxParamPropEnabled : & 'static [ u8 ; 20usize ] = b"OfxParamPropEnabled\0" ; pub const kOfxParamPropDataPtr : & 'static [ u8 ; 20usize ] = b"OfxParamPropDataPtr\0" ; pub const kOfxParamPropChoiceOption : & 'static [ u8 ; 25usize ] = b"OfxParamPropChoiceOption\0" ; pub const kOfxParamPropMin : & 'static [ u8 ; 16usize ] = b"OfxParamPropMin\0" ; pub const kOfxParamPropMax : & 'static [ u8 ; 16usize ] = b"OfxParamPropMax\0" ; pub const kOfxParamPropDisplayMin : & 'static [ u8 ; 23usize ] = b"OfxParamPropDisplayMin\0" ; pub const kOfxParamPropDisplayMax : & 'static [ u8 ; 23usize ] = b"OfxParamPropDisplayMax\0" ; pub const kOfxParamPropIncrement : & 'static [ u8 ; 22usize ] = b"OfxParamPropIncrement\0" ; pub const kOfxParamPropDigits : & 'static [ u8 ; 19usize ] = b"OfxParamPropDigits\0" ; pub const kOfxParamPropDimensionLabel : & 'static [ u8 ; 27usize ] = b"OfxParamPropDimensionLabel\0" ; pub const kOfxParamPropIsAutoKeying : & 'static [ u8 ; 25usize ] = b"OfxParamPropIsAutoKeying\0" ; pub const kOfxParamPropCustomInterpCallbackV1 : & 'static [ u8 ; 29usize ] = b"OfxParamPropCustomCallbackV1\0" ; pub const kOfxParamPropStringMode : & 'static [ u8 ; 23usize ] = b"OfxParamPropStringMode\0" ; pub const kOfxParamPropStringFilePathExists : & 'static [ u8 ; 33usize ] = b"OfxParamPropStringFilePathExists\0" ; pub const kOfxParamStringIsSingleLine : & 'static [ u8 ; 27usize ] = b"OfxParamStringIsSingleLine\0" ; pub const kOfxParamStringIsMultiLine : & 'static [ u8 ; 26usize ] = b"OfxParamStringIsMultiLine\0" ; pub const kOfxParamStringIsFilePath : & 'static [ u8 ; 25usize ] = b"OfxParamStringIsFilePath\0" ; pub const kOfxParamStringIsDirectoryPath : & 'static [ u8 ; 30usize ] = b"OfxParamStringIsDirectoryPath\0" ; pub const kOfxParamStringIsLabel : & 'static [ u8 ; 22usize ] = b"OfxParamStringIsLabel\0" ; pub const kOfxParamStringIsRichTextFormat : & 'static [ u8 ; 31usize ] = b"OfxParamStringIsRichTextFormat\0" ; pub const kOfxParamPropCustomValue : & 'static [ u8 ; 24usize ] = b"OfxParamPropCustomValue\0" ; pub const kOfxParamPropInterpolationTime : & 'static [ u8 ; 30usize ] = b"OfxParamPropInterpolationTime\0" ; pub const kOfxParamPropInterpolationAmount : & 'static [ u8 ; 32usize ] = b"OfxParamPropInterpolationAmount\0" ; pub const kOfxInteractSuite : & 'static [ u8 ; 17usize ] = b"OfxInteractSuite\0" ; pub const kOfxInteractPropSlaveToParam : & 'static [ u8 ; 28usize ] = b"OfxInteractPropSlaveToParam\0" ; pub const kOfxInteractPropPixelScale : & 'static [ u8 ; 26usize ] = b"OfxInteractPropPixelScale\0" ; pub const kOfxInteractPropBackgroundColour : & 'static [ u8 ; 32usize ] = b"OfxInteractPropBackgroundColour\0" ; pub const kOfxInteractPropSuggestedColour : & 'static [ u8 ; 31usize ] = b"OfxInteractPropSuggestedColour\0" ; pub const kOfxInteractPropPenPosition : & 'static [ u8 ; 27usize ] = b"OfxInteractPropPenPosition\0" ; pub const kOfxInteractPropPenViewportPosition : & 'static [ u8 ; 35usize ] = b"OfxInteractPropPenViewportPosition\0" ; pub const kOfxInteractPropPenPressure : & 'static [ u8 ; 27usize ] = b"OfxInteractPropPenPressure\0" ; pub const kOfxInteractPropBitDepth : & 'static [ u8 ; 24usize ] = b"OfxInteractPropBitDepth\0" ; pub const kOfxInteractPropHasAlpha : & 'static [ u8 ; 24usize ] = b"OfxInteractPropHasAlpha\0" ; pub const kOfxActionDescribeInteract : & 'static [ u8 ; 18usize ] = b"OfxActionDescribe\0" ; pub const kOfxActionCreateInstanceInteract : & 'static [ u8 ; 24usize ] = b"OfxActionCreateInstance\0" ; pub const kOfxActionDestroyInstanceInteract : & 'static [ u8 ; 25usize ] = b"OfxActionDestroyInstance\0" ; pub const kOfxInteractActionDraw : & 'static [ u8 ; 22usize ] = b"OfxInteractActionDraw\0" ; pub const kOfxInteractActionPenMotion : & 'static [ u8 ; 27usize ] = b"OfxInteractActionPenMotion\0" ; pub const kOfxInteractActionPenDown : & 'static [ u8 ; 25usize ] = b"OfxInteractActionPenDown\0" ; pub const kOfxInteractActionPenUp : & 'static [ u8 ; 23usize ] = b"OfxInteractActionPenUp\0" ; pub const kOfxInteractActionKeyDown : & 'static [ u8 ; 25usize ] = b"OfxInteractActionKeyDown\0" ; pub const kOfxInteractActionKeyUp : & 'static [ u8 ; 23usize ] = b"OfxInteractActionKeyUp\0" ; pub const kOfxInteractActionKeyRepeat : & 'static [ u8 ; 27usize ] = b"OfxInteractActionKeyRepeat\0" ; pub const kOfxInteractActionGainFocus : & 'static [ u8 ; 27usize ] = b"OfxInteractActionGainFocus\0" ; pub const kOfxInteractActionLoseFocus : & 'static [ u8 ; 27usize ] = b"OfxInteractActionLoseFocus\0" ; pub const kOfxMessageSuite : & 'static [ u8 ; 16usize ] = b"OfxMessageSuite\0" ; pub const kOfxMessageFatal : & 'static [ u8 ; 16usize ] = b"OfxMessageFatal\0" ; pub const kOfxMessageError : & 'static [ u8 ; 16usize ] = b"OfxMessageError\0" ; pub const kOfxMessageWarning : & 'static [ u8 ; 18usize ] = b"OfxMessageWarning\0" ; pub const kOfxMessageMessage : & 'static [ u8 ; 18usize ] = b"OfxMessageMessage\0" ; pub const kOfxMessageLog : & 'static [ u8 ; 14usize ] = b"OfxMessageLog\0" ; pub const kOfxMessageQuestion : & 'static [ u8 ; 19usize ] = b"OfxMessageQuestion\0" ; pub const kOfxMemorySuite : & 'static [ u8 ; 15usize ] = b"OfxMemorySuite\0" ; pub const kOfxMultiThreadSuite : & 'static [ u8 ; 20usize ] = b"OfxMultiThreadSuite\0" ; pub const kOfxImageEffectPluginApi : & 'static [ u8 ; 24usize ] = b"OfxImageEffectPluginAPI\0" ; pub const kOfxImageEffectPluginApiVersion : u32 = 1 ; pub const kOfxImageComponentNone : & 'static [ u8 ; 22usize ] = b"OfxImageComponentNone\0" ; pub const kOfxImageComponentRGBA : & 'static [ u8 ; 22usize ] = b"OfxImageComponentRGBA\0" ; pub const kOfxImageComponentRGB : & 'static [ u8 ; 21usize ] = b"OfxImageComponentRGB\0" ; pub const kOfxImageComponentAlpha : & 'static [ u8 ; 23usize ] = b"OfxImageComponentAlpha\0" ; pub const kOfxImageEffectContextGenerator : & 'static [ u8 ; 31usize ] = b"OfxImageEffectContextGenerator\0" ; pub const kOfxImageEffectContextFilter : & 'static [ u8 ; 28usize ] = b"OfxImageEffectContextFilter\0" ; pub const kOfxImageEffectContextTransition : & 'static [ u8 ; 32usize ] = b"OfxImageEffectContextTransition\0" ; pub const kOfxImageEffectContextPaint : & 'static [ u8 ; 27usize ] = b"OfxImageEffectContextPaint\0" ; pub const kOfxImageEffectContextGeneral : & 'static [ u8 ; 29usize ] = b"OfxImageEffectContextGeneral\0" ; pub const kOfxImageEffectContextRetimer : & 'static [ u8 ; 29usize ] = b"OfxImageEffectContextRetimer\0" ; pub const kOfxTypeImageEffectHost : & 'static [ u8 ; 23usize ] = b"OfxTypeImageEffectHost\0" ; pub const kOfxTypeImageEffect : & 'static [ u8 ; 19usize ] = b"OfxTypeImageEffect\0" ; pub const kOfxTypeImageEffectInstance : & 'static [ u8 ; 27usize ] = b"OfxTypeImageEffectInstance\0" ; pub const kOfxTypeClip : & 'static [ u8 ; 12usize ] = b"OfxTypeClip\0" ; pub const kOfxTypeImage : & 'static [ u8 ; 13usize ] = b"OfxTypeImage\0" ; pub const kOfxImageEffectActionGetRegionOfDefinition : & 'static [ u8 ; 42usize ] = b"OfxImageEffectActionGetRegionOfDefinition\0" ; pub const kOfxImageEffectActionGetRegionsOfInterest : & 'static [ u8 ; 41usize ] = b"OfxImageEffectActionGetRegionsOfInterest\0" ; pub const kOfxImageEffectActionGetTimeDomain : & 'static [ u8 ; 34usize ] = b"OfxImageEffectActionGetTimeDomain\0" ; pub const kOfxImageEffectActionGetFramesNeeded : & 'static [ u8 ; 36usize ] = b"OfxImageEffectActionGetFramesNeeded\0" ; pub const kOfxImageEffectActionGetClipPreferences : & 'static [ u8 ; 39usize ] = b"OfxImageEffectActionGetClipPreferences\0" ; pub const kOfxImageEffectActionIsIdentity : & 'static [ u8 ; 31usize ] = b"OfxImageEffectActionIsIdentity\0" ; pub const kOfxImageEffectActionRender : & 'static [ u8 ; 27usize ] = b"OfxImageEffectActionRender\0" ; pub const kOfxImageEffectActionBeginSequenceRender : & 'static [ u8 ; 40usize ] = b"OfxImageEffectActionBeginSequenceRender\0" ; pub const kOfxImageEffectActionEndSequenceRender : & 'static [ u8 ; 38usize ] = b"OfxImageEffectActionEndSequenceRender\0" ; pub const kOfxImageEffectActionDescribeInContext : & 'static [ u8 ; 38usize ] = b"OfxImageEffectActionDescribeInContext\0" ; pub const kOfxImageEffectPropSupportedContexts : & 'static [ u8 ; 36usize ] = b"OfxImageEffectPropSupportedContexts\0" ; pub const kOfxImageEffectPropPluginHandle : & 'static [ u8 ; 31usize ] = b"OfxImageEffectPropPluginHandle\0" ; pub const kOfxImageEffectHostPropIsBackground : & 'static [ u8 ; 35usize ] = b"OfxImageEffectHostPropIsBackground\0" ; pub const kOfxImageEffectPluginPropSingleInstance : & 'static [ u8 ; 39usize ] = b"OfxImageEffectPluginPropSingleInstance\0" ; pub const kOfxImageEffectPluginRenderThreadSafety : & 'static [ u8 ; 39usize ] = b"OfxImageEffectPluginRenderThreadSafety\0" ; pub const kOfxImageEffectRenderUnsafe : & 'static [ u8 ; 27usize ] = b"OfxImageEffectRenderUnsafe\0" ; pub const kOfxImageEffectRenderInstanceSafe : & 'static [ u8 ; 33usize ] = b"OfxImageEffectRenderInstanceSafe\0" ; pub const kOfxImageEffectRenderFullySafe : & 'static [ u8 ; 30usize ] = b"OfxImageEffectRenderFullySafe\0" ; pub const kOfxImageEffectPluginPropHostFrameThreading : & 'static [ u8 ; 43usize ] = b"OfxImageEffectPluginPropHostFrameThreading\0" ; pub const kOfxImageEffectPropSupportsMultipleClipDepths : & 'static [ u8 ; 37usize ] = b"OfxImageEffectPropMultipleClipDepths\0" ; pub const kOfxImageEffectPropSupportsMultipleClipPARs : & 'static [ u8 ; 43usize ] = b"OfxImageEffectPropSupportsMultipleClipPARs\0" ; pub const kOfxImageEffectPropClipPreferencesSlaveParam : & 'static [ u8 ; 44usize ] = b"OfxImageEffectPropClipPreferencesSlaveParam\0" ; pub const kOfxImageEffectPropSetableFrameRate : & 'static [ u8 ; 35usize ] = b"OfxImageEffectPropSetableFrameRate\0" ; pub const kOfxImageEffectPropSetableFielding : & 'static [ u8 ; 34usize ] = b"OfxImageEffectPropSetableFielding\0" ; pub const kOfxImageEffectInstancePropSequentialRender : & 'static [ u8 ; 43usize ] = b"OfxImageEffectInstancePropSequentialRender\0" ; pub const kOfxImageEffectPropSequentialRenderStatus : & 'static [ u8 ; 41usize ] = b"OfxImageEffectPropSequentialRenderStatus\0" ; pub const kOfxHostNativeOriginBottomLeft : & 'static [ u8 ; 46usize ] = b"kOfxImageEffectHostPropNativeOriginBottomLeft\0" ; pub const kOfxHostNativeOriginTopLeft : & 'static [ u8 ; 43usize ] = b"kOfxImageEffectHostPropNativeOriginTopLeft\0" ; pub const kOfxHostNativeOriginCenter : & 'static [ u8 ; 42usize ] = b"kOfxImageEffectHostPropNativeOriginCenter\0" ; pub const kOfxImageEffectHostPropNativeOrigin : & 'static [ u8 ; 35usize ] = b"OfxImageEffectHostPropNativeOrigin\0" ; pub const kOfxImageEffectPropInteractiveRenderStatus : & 'static [ u8 ; 42usize ] = b"OfxImageEffectPropInteractiveRenderStatus\0" ; pub const kOfxImageEffectPluginPropGrouping : & 'static [ u8 ; 33usize ] = b"OfxImageEffectPluginPropGrouping\0" ; pub const kOfxImageEffectPropSupportsOverlays : & 'static [ u8 ; 35usize ] = b"OfxImageEffectPropSupportsOverlays\0" ; pub const kOfxImageEffectPluginPropOverlayInteractV1 : & 'static [ u8 ; 42usize ] = b"OfxImageEffectPluginPropOverlayInteractV1\0" ; pub const kOfxImageEffectPropSupportsMultiResolution : & 'static [ u8 ; 42usize ] = b"OfxImageEffectPropSupportsMultiResolution\0" ; pub const kOfxImageEffectPropSupportsTiles : & 'static [ u8 ; 32usize ] = b"OfxImageEffectPropSupportsTiles\0" ; pub const kOfxImageEffectPropTemporalClipAccess : & 'static [ u8 ; 37usize ] = b"OfxImageEffectPropTemporalClipAccess\0" ; pub const kOfxImageEffectPropContext : & 'static [ u8 ; 26usize ] = b"OfxImageEffectPropContext\0" ; pub const kOfxImageEffectPropPixelDepth : & 'static [ u8 ; 29usize ] = b"OfxImageEffectPropPixelDepth\0" ; pub const kOfxImageEffectPropComponents : & 'static [ u8 ; 29usize ] = b"OfxImageEffectPropComponents\0" ; pub const kOfxImagePropUniqueIdentifier : & 'static [ u8 ; 29usize ] = b"OfxImagePropUniqueIdentifier\0" ; pub const kOfxImageClipPropContinuousSamples : & 'static [ u8 ; 34usize ] = b"OfxImageClipPropContinuousSamples\0" ; pub const kOfxImageClipPropUnmappedPixelDepth : & 'static [ u8 ; 35usize ] = b"OfxImageClipPropUnmappedPixelDepth\0" ; pub const kOfxImageClipPropUnmappedComponents : & 'static [ u8 ; 35usize ] = b"OfxImageClipPropUnmappedComponents\0" ; pub const kOfxImageEffectPropPreMultiplication : & 'static [ u8 ; 36usize ] = b"OfxImageEffectPropPreMultiplication\0" ; pub const kOfxImageOpaque : & 'static [ u8 ; 15usize ] = b"OfxImageOpaque\0" ; pub const kOfxImagePreMultiplied : & 'static [ u8 ; 27usize ] = b"OfxImageAlphaPremultiplied\0" ; pub const kOfxImageUnPreMultiplied : & 'static [ u8 ; 29usize ] = b"OfxImageAlphaUnPremultiplied\0" ; pub const kOfxImageEffectPropSupportedPixelDepths : & 'static [ u8 ; 39usize ] = b"OfxImageEffectPropSupportedPixelDepths\0" ; pub const kOfxImageEffectPropSupportedComponents : & 'static [ u8 ; 38usize ] = b"OfxImageEffectPropSupportedComponents\0" ; pub const kOfxImageClipPropOptional : & 'static [ u8 ; 25usize ] = b"OfxImageClipPropOptional\0" ; pub const kOfxImageClipPropIsMask : & 'static [ u8 ; 23usize ] = b"OfxImageClipPropIsMask\0" ; pub const kOfxImagePropPixelAspectRatio : & 'static [ u8 ; 29usize ] = b"OfxImagePropPixelAspectRatio\0" ; pub const kOfxImageEffectPropFrameRate : & 'static [ u8 ; 28usize ] = b"OfxImageEffectPropFrameRate\0" ; pub const kOfxImageEffectPropUnmappedFrameRate : & 'static [ u8 ; 36usize ] = b"OfxImageEffectPropUnmappedFrameRate\0" ; pub const kOfxImageEffectPropFrameStep : & 'static [ u8 ; 28usize ] = b"OfxImageEffectPropFrameStep\0" ; pub const kOfxImageEffectPropFrameRange : & 'static [ u8 ; 29usize ] = b"OfxImageEffectPropFrameRange\0" ; pub const kOfxImageEffectPropUnmappedFrameRange : & 'static [ u8 ; 37usize ] = b"OfxImageEffectPropUnmappedFrameRange\0" ; pub const kOfxImageClipPropConnected : & 'static [ u8 ; 26usize ] = b"OfxImageClipPropConnected\0" ; pub const kOfxImageEffectFrameVarying : & 'static [ u8 ; 27usize ] = b"OfxImageEffectFrameVarying\0" ; pub const kOfxImageEffectPropRenderScale : & 'static [ u8 ; 30usize ] = b"OfxImageEffectPropRenderScale\0" ; pub const kOfxImageEffectPropRenderQualityDraft : & 'static [ u8 ; 37usize ] = b"OfxImageEffectPropRenderQualityDraft\0" ; pub const kOfxImageEffectPropProjectExtent : & 'static [ u8 ; 32usize ] = b"OfxImageEffectPropProjectExtent\0" ; pub const kOfxImageEffectPropProjectSize : & 'static [ u8 ; 30usize ] = b"OfxImageEffectPropProjectSize\0" ; pub const kOfxImageEffectPropProjectOffset : & 'static [ u8 ; 32usize ] = b"OfxImageEffectPropProjectOffset\0" ; pub const kOfxImageEffectPropProjectPixelAspectRatio : & 'static [ u8 ; 35usize ] = b"OfxImageEffectPropPixelAspectRatio\0" ; pub const kOfxImageEffectInstancePropEffectDuration : & 'static [ u8 ; 41usize ] = b"OfxImageEffectInstancePropEffectDuration\0" ; pub const kOfxImageClipPropFieldOrder : & 'static [ u8 ; 27usize ] = b"OfxImageClipPropFieldOrder\0" ; pub const kOfxImagePropData : & 'static [ u8 ; 17usize ] = b"OfxImagePropData\0" ; pub const kOfxImagePropBounds : & 'static [ u8 ; 19usize ] = b"OfxImagePropBounds\0" ; pub const kOfxImagePropRegionOfDefinition : & 'static [ u8 ; 31usize ] = b"OfxImagePropRegionOfDefinition\0" ; pub const kOfxImagePropRowBytes : & 'static [ u8 ; 21usize ] = b"OfxImagePropRowBytes\0" ; pub const kOfxImagePropField : & 'static [ u8 ; 18usize ] = b"OfxImagePropField\0" ; pub const kOfxImageEffectPluginPropFieldRenderTwiceAlways : & 'static [ u8 ; 47usize ] = b"OfxImageEffectPluginPropFieldRenderTwiceAlways\0" ; pub const kOfxImageClipPropFieldExtraction : & 'static [ u8 ; 32usize ] = b"OfxImageClipPropFieldExtraction\0" ; pub const kOfxImageEffectPropFieldToRender : & 'static [ u8 ; 32usize ] = b"OfxImageEffectPropFieldToRender\0" ; pub const kOfxImageEffectPropRegionOfDefinition : & 'static [ u8 ; 37usize ] = b"OfxImageEffectPropRegionOfDefinition\0" ; pub const kOfxImageEffectPropRegionOfInterest : & 'static [ u8 ; 35usize ] = b"OfxImageEffectPropRegionOfInterest\0" ; pub const kOfxImageEffectPropRenderWindow : & 'static [ u8 ; 31usize ] = b"OfxImageEffectPropRenderWindow\0" ; pub const kOfxImageFieldNone : & 'static [ u8 ; 13usize ] = b"OfxFieldNone\0" ; pub const kOfxImageFieldLower : & 'static [ u8 ; 14usize ] = b"OfxFieldLower\0" ; pub const kOfxImageFieldUpper : & 'static [ u8 ; 14usize ] = b"OfxFieldUpper\0" ; pub const kOfxImageFieldBoth : & 'static [ u8 ; 13usize ] = b"OfxFieldBoth\0" ; pub const kOfxImageFieldSingle : & 'static [ u8 ; 15usize ] = b"OfxFieldSingle\0" ; pub const kOfxImageFieldDoubled : & 'static [ u8 ; 16usize ] = b"OfxFieldDoubled\0" ; pub const kOfxImageEffectOutputClipName : & 'static [ u8 ; 7usize ] = b"Output\0" ; pub const kOfxImageEffectSimpleSourceClipName : & 'static [ u8 ; 7usize ] = b"Source\0" ; pub const kOfxImageEffectTransitionSourceFromClipName : & 'static [ u8 ; 11usize ] = b"SourceFrom\0" ; pub const kOfxImageEffectTransitionSourceToClipName : & 'static [ u8 ; 9usize ] = b"SourceTo\0" ; pub const kOfxImageEffectTransitionParamName : & 'static [ u8 ; 11usize ] = b"Transition\0" ; pub const kOfxImageEffectRetimerParamName : & 'static [ u8 ; 11usize ] = b"SourceTime\0" ; pub const kOfxImageEffectSuite : & 'static [ u8 ; 20usize ] = b"OfxImageEffectSuite\0" ; pub const kOfxImageComponentYUVA : & 'static [ u8 ; 22usize ] = b"OfxImageComponentYUVA\0" ; pub const kOfxImageEffectPropInAnalysis : & 'static [ u8 ; 29usize ] = b"OfxImageEffectPropInAnalysis\0" ; pub const kOfxInteractPropViewportSize : & 'static [ u8 ; 24usize ] = b"OfxInteractPropViewport\0" ; pub const kOfxParamDoubleTypeNormalisedX : & 'static [ u8 ; 30usize ] = b"OfxParamDoubleTypeNormalisedX\0" ; pub const kOfxParamDoubleTypeNormalisedY : & 'static [ u8 ; 30usize ] = b"OfxParamDoubleTypeNormalisedY\0" ; pub const kOfxParamDoubleTypeNormalisedXAbsolute : & 'static [ u8 ; 38usize ] = b"OfxParamDoubleTypeNormalisedXAbsolute\0" ; pub const kOfxParamDoubleTypeNormalisedYAbsolute : & 'static [ u8 ; 38usize ] = b"OfxParamDoubleTypeNormalisedYAbsolute\0" ; pub const kOfxParamDoubleTypeNormalisedXY : & 'static [ u8 ; 31usize ] = b"OfxParamDoubleTypeNormalisedXY\0" ; pub const kOfxParamDoubleTypeNormalisedXYAbsolute : & 'static [ u8 ; 39usize ] = b"OfxParamDoubleTypeNormalisedXYAbsolute\0" ; pub const kOfxDialogSuite : & 'static [ u8 ; 15usize ] = b"OfxDialogSuite\0" ; pub const kOfxActionDialog : & 'static [ u8 ; 16usize ] = b"OfxActionDialog\0" ; pub const kOfxProgressSuite : & 'static [ u8 ; 17usize ] = b"OfxProgressSuite\0" ; pub const kOfxPropKeySym : & 'static [ u8 ; 15usize ] = b"kOfxPropKeySym\0" ; pub const kOfxPropKeyString : & 'static [ u8 ; 18usize ] = b"kOfxPropKeyString\0" ; pub const kOfxKey_Unknown : u32 = 0 ; pub const kOfxKey_BackSpace : u32 = 65288 ; pub const kOfxKey_Tab : u32 = 65289 ; pub const kOfxKey_Linefeed : u32 = 65290 ; pub const kOfxKey_Clear : u32 = 65291 ; pub const kOfxKey_Return : u32 = 65293 ; pub const kOfxKey_Pause : u32 = 65299 ; pub const kOfxKey_Scroll_Lock : u32 = 65300 ; pub const kOfxKey_Sys_Req : u32 = 65301 ; pub const kOfxKey_Escape : u32 = 65307 ; pub const kOfxKey_Delete : u32 = 65535 ; pub const kOfxKey_Multi_key : u32 = 65312 ; pub const kOfxKey_SingleCandidate : u32 = 65340 ; pub const kOfxKey_MultipleCandidate : u32 = 65341 ; pub const kOfxKey_PreviousCandidate : u32 = 65342 ; pub const kOfxKey_Kanji : u32 = 65313 ; pub const kOfxKey_Muhenkan : u32 = 65314 ; pub const kOfxKey_Henkan_Mode : u32 = 65315 ; pub const kOfxKey_Henkan : u32 = 65315 ; pub const kOfxKey_Romaji : u32 = 65316 ; pub const kOfxKey_Hiragana : u32 = 65317 ; pub const kOfxKey_Katakana : u32 = 65318 ; pub const kOfxKey_Hiragana_Katakana : u32 = 65319 ; pub const kOfxKey_Zenkaku : u32 = 65320 ; pub const kOfxKey_Hankaku : u32 = 65321 ; pub const kOfxKey_Zenkaku_Hankaku : u32 = 65322 ; pub const kOfxKey_Touroku : u32 = 65323 ; pub const kOfxKey_Massyo : u32 = 65324 ; pub const kOfxKey_Kana_Lock : u32 = 65325 ; pub const kOfxKey_Kana_Shift : u32 = 65326 ; pub const kOfxKey_Eisu_Shift : u32 = 65327 ; pub const kOfxKey_Eisu_toggle : u32 = 65328 ; pub const kOfxKey_Zen_Koho : u32 = 65341 ; pub const kOfxKey_Mae_Koho : u32 = 65342 ; pub const kOfxKey_Home : u32 = 65360 ; pub const kOfxKey_Left : u32 = 65361 ; pub const kOfxKey_Up : u32 = 65362 ; pub const kOfxKey_Right : u32 = 65363 ; pub const kOfxKey_Down : u32 = 65364 ; pub const kOfxKey_Prior : u32 = 65365 ; pub const kOfxKey_Page_Up : u32 = 65365 ; pub const kOfxKey_Next : u32 = 65366 ; pub const kOfxKey_Page_Down : u32 = 65366 ; pub const kOfxKey_End : u32 = 65367 ; pub const kOfxKey_Begin : u32 = 65368 ; pub const kOfxKey_Select : u32 = 65376 ; pub const kOfxKey_Print : u32 = 65377 ; pub const kOfxKey_Execute : u32 = 65378 ; pub const kOfxKey_Insert : u32 = 65379 ; pub const kOfxKey_Undo : u32 = 65381 ; pub const kOfxKey_Redo : u32 = 65382 ; pub const kOfxKey_Menu : u32 = 65383 ; pub const kOfxKey_Find : u32 = 65384 ; pub const kOfxKey_Cancel : u32 = 65385 ; pub const kOfxKey_Help : u32 = 65386 ; pub const kOfxKey_Break : u32 = 65387 ; pub const kOfxKey_Mode_switch : u32 = 65406 ; pub const kOfxKey_script_switch : u32 = 65406 ; pub const kOfxKey_Num_Lock : u32 = 65407 ; pub const kOfxKey_KP_Space : u32 = 65408 ; pub const kOfxKey_KP_Tab : u32 = 65417 ; pub const kOfxKey_KP_Enter : u32 = 65421 ; pub const kOfxKey_KP_F1 : u32 = 65425 ; pub const kOfxKey_KP_F2 : u32 = 65426 ; pub const kOfxKey_KP_F3 : u32 = 65427 ; pub const kOfxKey_KP_F4 : u32 = 65428 ; pub const kOfxKey_KP_Home : u32 = 65429 ; pub const kOfxKey_KP_Left : u32 = 65430 ; pub const kOfxKey_KP_Up : u32 = 65431 ; pub const kOfxKey_KP_Right : u32 = 65432 ; pub const kOfxKey_KP_Down : u32 = 65433 ; pub const kOfxKey_KP_Prior : u32 = 65434 ; pub const kOfxKey_KP_Page_Up : u32 = 65434 ; pub const kOfxKey_KP_Next : u32 = 65435 ; pub const kOfxKey_KP_Page_Down : u32 = 65435 ; pub const kOfxKey_KP_End : u32 = 65436 ; pub const kOfxKey_KP_Begin : u32 = 65437 ; pub const kOfxKey_KP_Insert : u32 = 65438 ; pub const kOfxKey_KP_Delete : u32 = 65439 ; pub const kOfxKey_KP_Equal : u32 = 65469 ; pub const kOfxKey_KP_Multiply : u32 = 65450 ; pub const kOfxKey_KP_Add : u32 = 65451 ; pub const kOfxKey_KP_Separator : u32 = 65452 ; pub const kOfxKey_KP_Subtract : u32 = 65453 ; pub const kOfxKey_KP_Decimal : u32 = 65454 ; pub const kOfxKey_KP_Divide : u32 = 65455 ; pub const kOfxKey_KP_0 : u32 = 65456 ; pub const kOfxKey_KP_1 : u32 = 65457 ; pub const kOfxKey_KP_2 : u32 = 65458 ; pub const kOfxKey_KP_3 : u32 = 65459 ; pub const kOfxKey_KP_4 : u32 = 65460 ; pub const kOfxKey_KP_5 : u32 = 65461 ; pub const kOfxKey_KP_6 : u32 = 65462 ; pub const kOfxKey_KP_7 : u32 = 65463 ; pub const kOfxKey_KP_8 : u32 = 65464 ; pub const kOfxKey_KP_9 : u32 = 65465 ; pub const kOfxKey_F1 : u32 = 65470 ; pub const kOfxKey_F2 : u32 = 65471 ; pub const kOfxKey_F3 : u32 = 65472 ; pub const kOfxKey_F4 : u32 = 65473 ; pub const kOfxKey_F5 : u32 = 65474 ; pub const kOfxKey_F6 : u32 = 65475 ; pub const kOfxKey_F7 : u32 = 65476 ; pub const kOfxKey_F8 : u32 = 65477 ; pub const kOfxKey_F9 : u32 = 65478 ; pub const kOfxKey_F10 : u32 = 65479 ; pub const kOfxKey_F11 : u32 = 65480 ; pub const kOfxKey_L1 : u32 = 65480 ; pub const kOfxKey_F12 : u32 = 65481 ; pub const kOfxKey_L2 : u32 = 65481 ; pub const kOfxKey_F13 : u32 = 65482 ; pub const kOfxKey_L3 : u32 = 65482 ; pub const kOfxKey_F14 : u32 = 65483 ; pub const kOfxKey_L4 : u32 = 65483 ; pub const kOfxKey_F15 : u32 = 65484 ; pub const kOfxKey_L5 : u32 = 65484 ; pub const kOfxKey_F16 : u32 = 65485 ; pub const kOfxKey_L6 : u32 = 65485 ; pub const kOfxKey_F17 : u32 = 65486 ; pub const kOfxKey_L7 : u32 = 65486 ; pub const kOfxKey_F18 : u32 = 65487 ; pub const kOfxKey_L8 : u32 = 65487 ; pub const kOfxKey_F19 : u32 = 65488 ; pub const kOfxKey_L9 : u32 = 65488 ; pub const kOfxKey_F20 : u32 = 65489 ; pub const kOfxKey_L10 : u32 = 65489 ; pub const kOfxKey_F21 : u32 = 65490 ; pub const kOfxKey_R1 : u32 = 65490 ; pub const kOfxKey_F22 : u32 = 65491 ; pub const kOfxKey_R2 : u32 = 65491 ; pub const kOfxKey_F23 : u32 = 65492 ; pub const kOfxKey_R3 : u32 = 65492 ; pub const kOfxKey_F24 : u32 = 65493 ; pub const kOfxKey_R4 : u32 = 65493 ; pub const kOfxKey_F25 : u32 = 65494 ; pub const kOfxKey_R5 : u32 = 65494 ; pub const kOfxKey_F26 : u32 = 65495 ; pub const kOfxKey_R6 : u32 = 65495 ; pub const kOfxKey_F27 : u32 = 65496 ; pub const kOfxKey_R7 : u32 = 65496 ; pub const kOfxKey_F28 : u32 = 65497 ; pub const kOfxKey_R8 : u32 = 65497 ; pub const kOfxKey_F29 : u32 = 65498 ; pub const kOfxKey_R9 : u32 = 65498 ; pub const kOfxKey_F30 : u32 = 65499 ; pub const kOfxKey_R10 : u32 = 65499 ; pub const kOfxKey_F31 : u32 = 65500 ; pub const kOfxKey_R11 : u32 = 65500 ; pub const kOfxKey_F32 : u32 = 65501 ; pub const kOfxKey_R12 : u32 = 65501 ; pub const kOfxKey_F33 : u32 = 65502 ; pub const kOfxKey_R13 : u32 = 65502 ; pub const kOfxKey_F34 : u32 = 65503 ; pub const kOfxKey_R14 : u32 = 65503 ; pub const kOfxKey_F35 : u32 = 65504 ; pub const kOfxKey_R15 : u32 = 65504 ; pub const kOfxKey_Shift_L : u32 = 65505 ; pub const kOfxKey_Shift_R : u32 = 65506 ; pub const kOfxKey_Control_L : u32 = 65507 ; pub const kOfxKey_Control_R : u32 = 65508 ; pub const kOfxKey_Caps_Lock : u32 = 65509 ; pub const kOfxKey_Shift_Lock : u32 = 65510 ; pub const kOfxKey_Meta_L : u32 = 65511 ; pub const kOfxKey_Meta_R : u32 = 65512 ; pub const kOfxKey_Alt_L : u32 = 65513 ; pub const kOfxKey_Alt_R : u32 = 65514 ; pub const kOfxKey_Super_L : u32 = 65515 ; pub const kOfxKey_Super_R : u32 = 65516 ; pub const kOfxKey_Hyper_L : u32 = 65517 ; pub const kOfxKey_Hyper_R : u32 = 65518 ; pub const kOfxKey_space : u32 = 32 ; pub const kOfxKey_exclam : u32 = 33 ; pub const kOfxKey_quotedbl : u32 = 34 ; pub const kOfxKey_numbersign : u32 = 35 ; pub const kOfxKey_dollar : u32 = 36 ; pub const kOfxKey_percent : u32 = 37 ; pub const kOfxKey_ampersand : u32 = 38 ; pub const kOfxKey_apostrophe : u32 = 39 ; pub const kOfxKey_quoteright : u32 = 39 ; pub const kOfxKey_parenleft : u32 = 40 ; pub const kOfxKey_parenright : u32 = 41 ; pub const kOfxKey_asterisk : u32 = 42 ; pub const kOfxKey_plus : u32 = 43 ; pub const kOfxKey_comma : u32 = 44 ; pub const kOfxKey_minus : u32 = 45 ; pub const kOfxKey_period : u32 = 46 ; pub const kOfxKey_slash : u32 = 47 ; pub const kOfxKey_0 : u32 = 48 ; pub const kOfxKey_1 : u32 = 49 ; pub const kOfxKey_2 : u32 = 50 ; pub const kOfxKey_3 : u32 = 51 ; pub const kOfxKey_4 : u32 = 52 ; pub const kOfxKey_5 : u32 = 53 ; pub const kOfxKey_6 : u32 = 54 ; pub const kOfxKey_7 : u32 = 55 ; pub const kOfxKey_8 : u32 = 56 ; pub const kOfxKey_9 : u32 = 57 ; pub const kOfxKey_colon : u32 = 58 ; pub const kOfxKey_semicolon : u32 = 59 ; pub const kOfxKey_less : u32 = 60 ; pub const kOfxKey_equal : u32 = 61 ; pub const kOfxKey_greater : u32 = 62 ; pub const kOfxKey_question : u32 = 63 ; pub const kOfxKey_at : u32 = 64 ; pub const kOfxKey_A : u32 = 65 ; pub const kOfxKey_B : u32 = 66 ; pub const kOfxKey_C : u32 = 67 ; pub const kOfxKey_D : u32 = 68 ; pub const kOfxKey_E : u32 = 69 ; pub const kOfxKey_F : u32 = 70 ; pub const kOfxKey_G : u32 = 71 ; pub const kOfxKey_H : u32 = 72 ; pub const kOfxKey_I : u32 = 73 ; pub const kOfxKey_J : u32 = 74 ; pub const kOfxKey_K : u32 = 75 ; pub const kOfxKey_L : u32 = 76 ; pub const kOfxKey_M : u32 = 77 ; pub const kOfxKey_N : u32 = 78 ; pub const kOfxKey_O : u32 = 79 ; pub const kOfxKey_P : u32 = 80 ; pub const kOfxKey_Q : u32 = 81 ; pub const kOfxKey_R : u32 = 82 ; pub const kOfxKey_S : u32 = 83 ; pub const kOfxKey_T : u32 = 84 ; pub const kOfxKey_U : u32 = 85 ; pub const kOfxKey_V : u32 = 86 ; pub const kOfxKey_W : u32 = 87 ; pub const kOfxKey_X : u32 = 88 ; pub const kOfxKey_Y : u32 = 89 ; pub const kOfxKey_Z : u32 = 90 ; pub const kOfxKey_bracketleft : u32 = 91 ; pub const kOfxKey_backslash : u32 = 92 ; pub const kOfxKey_bracketright : u32 = 93 ; pub const kOfxKey_asciicircum : u32 = 94 ; pub const kOfxKey_underscore : u32 = 95 ; pub const kOfxKey_grave : u32 = 96 ; pub const kOfxKey_quoteleft : u32 = 96 ; pub const kOfxKey_a : u32 = 97 ; pub const kOfxKey_b : u32 = 98 ; pub const kOfxKey_c : u32 = 99 ; pub const kOfxKey_d : u32 = 100 ; pub const kOfxKey_e : u32 = 101 ; pub const kOfxKey_f : u32 = 102 ; pub const kOfxKey_g : u32 = 103 ; pub const kOfxKey_h : u32 = 104 ; pub const kOfxKey_i : u32 = 105 ; pub const kOfxKey_j : u32 = 106 ; pub const kOfxKey_k : u32 = 107 ; pub const kOfxKey_l : u32 = 108 ; pub const kOfxKey_m : u32 = 109 ; pub const kOfxKey_n : u32 = 110 ; pub const kOfxKey_o : u32 = 111 ; pub const kOfxKey_p : u32 = 112 ; pub const kOfxKey_q : u32 = 113 ; pub const kOfxKey_r : u32 = 114 ; pub const kOfxKey_s : u32 = 115 ; pub const kOfxKey_t : u32 = 116 ; pub const kOfxKey_u : u32 = 117 ; pub const kOfxKey_v : u32 = 118 ; pub const kOfxKey_w : u32 = 119 ; pub const kOfxKey_x : u32 = 120 ; pub const kOfxKey_y : u32 = 121 ; pub const kOfxKey_z : u32 = 122 ; pub const kOfxKey_braceleft : u32 = 123 ; pub const kOfxKey_bar : u32 = 124 ; pub const kOfxKey_braceright : u32 = 125 ; pub const kOfxKey_asciitilde : u32 = 126 ; pub const kOfxKey_nobreakspace : u32 = 160 ; pub const kOfxKey_exclamdown : u32 = 161 ; pub const kOfxKey_cent : u32 = 162 ; pub const kOfxKey_sterling : u32 = 163 ; pub const kOfxKey_currency : u32 = 164 ; pub const kOfxKey_yen : u32 = 165 ; pub const kOfxKey_brokenbar : u32 = 166 ; pub const kOfxKey_section : u32 = 167 ; pub const kOfxKey_diaeresis : u32 = 168 ; pub const kOfxKey_copyright : u32 = 169 ; pub const kOfxKey_ordfeminine : u32 = 170 ; pub const kOfxKey_guillemotleft : u32 = 171 ; pub const kOfxKey_notsign : u32 = 172 ; pub const kOfxKey_hyphen : u32 = 173 ; pub const kOfxKey_registered : u32 = 174 ; pub const kOfxKey_macron : u32 = 175 ; pub const kOfxKey_degree : u32 = 176 ; pub const kOfxKey_plusminus : u32 = 177 ; pub const kOfxKey_twosuperior : u32 = 178 ; pub const kOfxKey_threesuperior : u32 = 179 ; pub const kOfxKey_acute : u32 = 180 ; pub const kOfxKey_mu : u32 = 181 ; pub const kOfxKey_paragraph : u32 = 182 ; pub const kOfxKey_periodcentered : u32 = 183 ; pub const kOfxKey_cedilla : u32 = 184 ; pub const kOfxKey_onesuperior : u32 = 185 ; pub const kOfxKey_masculine : u32 = 186 ; pub const kOfxKey_guillemotright : u32 = 187 ; pub const kOfxKey_onequarter : u32 = 188 ; pub const kOfxKey_onehalf : u32 = 189 ; pub const kOfxKey_threequarters : u32 = 190 ; pub const kOfxKey_questiondown : u32 = 191 ; pub const kOfxKey_Agrave : u32 = 192 ; pub const kOfxKey_Aacute : u32 = 193 ; pub const kOfxKey_Acircumflex : u32 = 194 ; pub const kOfxKey_Atilde : u32 = 195 ; pub const kOfxKey_Adiaeresis : u32 = 196 ; pub const kOfxKey_Aring : u32 = 197 ; pub const kOfxKey_AE : u32 = 198 ; pub const kOfxKey_Ccedilla : u32 = 199 ; pub const kOfxKey_Egrave : u32 = 200 ; pub const kOfxKey_Eacute : u32 = 201 ; pub const kOfxKey_Ecircumflex : u32 = 202 ; pub const kOfxKey_Ediaeresis : u32 = 203 ; pub const kOfxKey_Igrave : u32 = 204 ; pub const kOfxKey_Iacute : u32 = 205 ; pub const kOfxKey_Icircumflex : u32 = 206 ; pub const kOfxKey_Idiaeresis : u32 = 207 ; pub const kOfxKey_ETH : u32 = 208 ; pub const kOfxKey_Eth : u32 = 208 ; pub const kOfxKey_Ntilde : u32 = 209 ; pub const kOfxKey_Ograve : u32 = 210 ; pub const kOfxKey_Oacute : u32 = 211 ; pub const kOfxKey_Ocircumflex : u32 = 212 ; pub const kOfxKey_Otilde : u32 = 213 ; pub const kOfxKey_Odiaeresis : u32 = 214 ; pub const kOfxKey_multiply : u32 = 215 ; pub const kOfxKey_Ooblique : u32 = 216 ; pub const kOfxKey_Ugrave : u32 = 217 ; pub const kOfxKey_Uacute : u32 = 218 ; pub const kOfxKey_Ucircumflex : u32 = 219 ; pub const kOfxKey_Udiaeresis : u32 = 220 ; pub const kOfxKey_Yacute : u32 = 221 ; pub const kOfxKey_THORN : u32 = 222 ; pub const kOfxKey_ssharp : u32 = 223 ; pub const kOfxKey_agrave : u32 = 224 ; pub const kOfxKey_aacute : u32 = 225 ; pub const kOfxKey_acircumflex : u32 = 226 ; pub const kOfxKey_atilde : u32 = 227 ; pub const kOfxKey_adiaeresis : u32 = 228 ; pub const kOfxKey_aring : u32 = 229 ; pub const kOfxKey_ae : u32 = 230 ; pub const kOfxKey_ccedilla : u32 = 231 ; pub const kOfxKey_egrave : u32 = 232 ; pub const kOfxKey_eacute : u32 = 233 ; pub const kOfxKey_ecircumflex : u32 = 234 ; pub const kOfxKey_ediaeresis : u32 = 235 ; pub const kOfxKey_igrave : u32 = 236 ; pub const kOfxKey_iacute : u32 = 237 ; pub const kOfxKey_icircumflex : u32 = 238 ; pub const kOfxKey_idiaeresis : u32 = 239 ; pub const kOfxKey_eth : u32 = 240 ; pub const kOfxKey_ntilde : u32 = 241 ; pub const kOfxKey_ograve : u32 = 242 ; pub const kOfxKey_oacute : u32 = 243 ; pub const kOfxKey_ocircumflex : u32 = 244 ; pub const kOfxKey_otilde : u32 = 245 ; pub const kOfxKey_odiaeresis : u32 = 246 ; pub const kOfxKey_division : u32 = 247 ; pub const kOfxKey_oslash : u32 = 248 ; pub const kOfxKey_ugrave : u32 = 249 ; pub const kOfxKey_uacute : u32 = 250 ; pub const kOfxKey_ucircumflex : u32 = 251 ; pub const kOfxKey_udiaeresis : u32 = 252 ; pub const kOfxKey_yacute : u32 = 253 ; pub const kOfxKey_thorn : u32 = 254 ; pub const kOfxKey_ydiaeresis : u32 = 255 ; pub const kNatronOfxHostName : & 'static [ u8 ; 16usize ] = b"fr.inria.Natron\0" ; pub const kNatronOfxHostIsNatron : & 'static [ u8 ; 22usize ] = b"NatronOfxHostIsNatron\0" ; pub const kNatronOfxParamHostPropSupportsDynamicChoices : & 'static [ u8 ; 45usize ] = b"NatronOfxParamHostPropSupportsDynamicChoices\0" ; pub const kNatronOfxParamStringSublabelName : & 'static [ u8 ; 33usize ] = b"NatronOfxParamStringSublabelName\0" ; pub const kNatronOfxImageComponentsPlaneName : & 'static [ u8 ; 35usize ] = b"NatronOfxImageComponentsPlaneName_\0" ; pub const kNatronOfxImageComponentsPlaneLabel : & 'static [ u8 ; 13usize ] = b"_PlaneLabel_\0" ; pub const kNatronOfxImageComponentsPlaneChannelsLabel : & 'static [ u8 ; 16usize ] = b"_ChannelsLabel_\0" ; pub const kNatronOfxImageComponentsPlaneChannel : & 'static [ u8 ; 10usize ] = b"_Channel_\0" ; pub const kNatronOfxImageComponentXY : & 'static [ u8 ; 26usize ] = b"NatronOfxImageComponentXY\0" ; pub const kNatronOfxParamPropChoiceCascading : & 'static [ u8 ; 34usize ] = b"NatronOfxParamPropChoiceCascading\0" ; pub const kNatronOfxParamPropChoiceHostCanAddOptions : & 'static [ u8 ; 42usize ] = b"NatronOfxParamPropChoiceHostCanAddOptions\0" ; pub const kNatronOfxParamOutputChannels : & 'static [ u8 ; 15usize ] = b"outputChannels\0" ; pub const kNatronOfxExtraCreatedPlanes : & 'static [ u8 ; 28usize ] = b"NatronOfxExtraCreatedPlanes\0" ; pub const kNatronOfxImageEffectPropChannelSelector : & 'static [ u8 ; 40usize ] = b"NatronOfxImageEffectPropChannelSelector\0" ; pub const kNatronOfxImageEffectPropHostMasking : & 'static [ u8 ; 37usize ] = b"kNatronOfxImageEffectPropHostMasking\0" ; pub const kNatronOfxImageEffectPropHostMixing : & 'static [ u8 ; 36usize ] = b"kNatronOfxImageEffectPropHostMixing\0" ; pub const kNatronOfxParamProcessR : & 'static [ u8 ; 23usize ] = b"NatronOfxParamProcessR\0" ; pub const kNatronOfxParamProcessRLabel : & 'static [ u8 ; 2usize ] = b"R\0" ; pub const kNatronOfxParamProcessRHint : & 'static [ u8 ; 23usize ] = b"Process red component.\0" ; pub const kNatronOfxParamProcessG : & 'static [ u8 ; 23usize ] = b"NatronOfxParamProcessG\0" ; pub const kNatronOfxParamProcessGLabel : & 'static [ u8 ; 2usize ] = b"G\0" ; pub const kNatronOfxParamProcessGHint : & 'static [ u8 ; 25usize ] = b"Process green component.\0" ; pub const kNatronOfxParamProcessB : & 'static [ u8 ; 23usize ] = b"NatronOfxParamProcessB\0" ; pub const kNatronOfxParamProcessBLabel : & 'static [ u8 ; 2usize ] = b"B\0" ; pub const kNatronOfxParamProcessBHint : & 'static [ u8 ; 24usize ] = b"Process blue component.\0" ; pub const kNatronOfxParamProcessA : & 'static [ u8 ; 23usize ] = b"NatronOfxParamProcessA\0" ; pub const kNatronOfxParamProcessALabel : & 'static [ u8 ; 2usize ] = b"A\0" ; pub const kNatronOfxParamProcessAHint : & 'static [ u8 ; 25usize ] = b"Process alpha component.\0" ; pub const kNatronOfxImageEffectContextTracker : & 'static [ u8 ; 35usize ] = b"NatronOfxImageEffectContextTracker\0" ; pub const kNatronParamTrackingPrevious : & 'static [ u8 ; 14usize ] = b"trackPrevious\0" ; pub const kNatronParamTrackingNext : & 'static [ u8 ; 10usize ] = b"trackNext\0" ; pub const kNatronParamTrackingBackward : & 'static [ u8 ; 14usize ] = b"trackBackward\0" ; pub const kNatronParamTrackingForward : & 'static [ u8 ; 13usize ] = b"trackForward\0" ; pub const kNatronOfxParamPropDoubleTypeMatrix3x3 : & 'static [ u8 ; 28usize ] = b"NatronOfxParamTypeMatrix3x3\0" ; pub const kNatronOfxParamPropTypeRectangle : & 'static [ u8 ; 32usize ] = b"NatronOfxParamPropTypeRectangle\0" ; pub const kNatronOfxParamPropIsInstanceSpecific : & 'static [ u8 ; 37usize ] = b"NatronOfxParamPropIsInstanceSpecific\0" ; pub const kNatronOfxImageEffectPropDeprecated : & 'static [ u8 ; 35usize ] = b"NatronOfxImageEffectPropDeprecated\0" ; pub const kNatronParamFormatChoice : & 'static [ u8 ; 24usize ] = b"NatronParamFormatChoice\0" ; pub const kNatronParamFormatSize : & 'static [ u8 ; 22usize ] = b"NatronParamFormatSize\0" ; pub const kNatronParamFormatPar : & 'static [ u8 ; 21usize ] = b"NatronParamFormatPar\0" ; pub const kNatronOfxImageEffectPropProjectId : & 'static [ u8 ; 34usize ] = b"NatronOfxImageEffectPropProjectId\0" ; pub const kNatronOfxImageEffectPropGroupId : & 'static [ u8 ; 32usize ] = b"NatronOfxImageEffectPropGroupId\0" ; pub const kNatronOfxImageEffectPropInstanceId : & 'static [ u8 ; 35usize ] = b"NatronOfxImageEffectPropInstanceId\0" ; pub const kNatronOfxImageEffectPluginUsesMultipleThread : & 'static [ u8 ; 45usize ] = b"NatronOfxImageEffectPluginUsesMultipleThread\0" ; pub const kNatronOfxPropNativeOverlays : & 'static [ u8 ; 28usize ] = b"NatronOfxPropNativeOverlays\0" ; pub const kNatronNativeOverlayType : & 'static [ u8 ; 24usize ] = b"NatronNativeOverlayType\0" ; pub const kNatronNativeOverlayParameterHint : & 'static [ u8 ; 33usize ] = b"NatronNativeOverlayParameterHint\0" ; pub const kNatronNativeOverlayParameterType : & 'static [ u8 ; 33usize ] = b"NatronNativeOverlayParameterType\0" ; pub const kNatronNativeOverlayParameterName : & 'static [ u8 ; 33usize ] = b"NatronNativeOverlayParameterName\0" ; pub const kNatronOfxPropDescriptionIsMarkdown : & 'static [ u8 ; 35usize ] = b"NatronOfxPropDescriptionIsMarkdown\0" ; pub const kNatronOfxGroupParamPropIsDialog : & 'static [ u8 ; 32usize ] = b"NatronOfxGroupParamPropIsDialog\0" ; pub const kNatronOfxParamUndoRedoText : & 'static [ u8 ; 27usize ] = b"NatronOfxParamUndoRedoText\0" ; pub const kNatronOfxParamUndoRedoState : & 'static [ u8 ; 28usize ] = b"NatronOfxParamUndoRedoState\0" ; pub const kNatronOfxParamRightClickMenu : & 'static [ u8 ; 29usize ] = b"NatronOfxParamRightClickMenu\0" ; pub const kNatronOfxParamSelectionRectangleState : & 'static [ u8 ; 38usize ] = b"NatronOfxParamSelectionRectangleState\0" ; pub const kNatronOfxParamCursorName : & 'static [ u8 ; 25usize ] = b"NatronOfxParamCursorName\0" ; pub const kNatronOfxImageEffectSelectionRectangle : & 'static [ u8 ; 39usize ] = b"NatronOfxImageEffectSelectionRectangle\0" ; pub const kNatronOfxImageEffectPropDefaultCursors : & 'static [ u8 ; 39usize ] = b"NatronOfxImageEffectPropDefaultCursors\0" ; pub const kNatronOfxDefaultCursor : & 'static [ u8 ; 23usize ] = b"NatronOfxDefaultCursor\0" ; pub const kNatronOfxBlankCursor : & 'static [ u8 ; 22usize ] = b"kNatronOfxBlankCursor\0" ; pub const kNatronOfxArrowCursor : & 'static [ u8 ; 21usize ] = b"NatronOfxArrowCursor\0" ; pub const kNatronOfxUpArrowCursor : & 'static [ u8 ; 23usize ] = b"NatronOfxUpArrowCursor\0" ; pub const kNatronOfxCrossCursor : & 'static [ u8 ; 21usize ] = b"NatronOfxCrossCursor\0" ; pub const kNatronOfxIBeamCursor : & 'static [ u8 ; 21usize ] = b"NatronOfxIBeamCursor\0" ; pub const kNatronOfxWaitCursor : & 'static [ u8 ; 20usize ] = b"NatronOfxWaitCursor\0" ; pub const kNatronOfxBusyCursor : & 'static [ u8 ; 20usize ] = b"NatronOfxBusyCursor\0" ; pub const kNatronOfxForbiddenCursor : & 'static [ u8 ; 25usize ] = b"NatronOfxForbiddenCursor\0" ; pub const kNatronOfxPointingHandCursor : & 'static [ u8 ; 28usize ] = b"NatronOfxPointingHandCursor\0" ; pub const kNatronOfxWhatsThisCursor : & 'static [ u8 ; 25usize ] = b"NatronOfxWhatsThisCursor\0" ; pub const kNatronOfxSizeVerCursor : & 'static [ u8 ; 23usize ] = b"NatronOfxSizeVerCursor\0" ; pub const kNatronOfxSizeHorCursor : & 'static [ u8 ; 23usize ] = b"NatronOfxSizeHorCursor\0" ; pub const kNatronOfxSizeBDiagCursor : & 'static [ u8 ; 25usize ] = b"NatronOfxSizeBDiagCursor\0" ; pub const kNatronOfxSizeFDiagCursor : & 'static [ u8 ; 25usize ] = b"NatronOfxSizeFDiagCursor\0" ; pub const kNatronOfxSizeAllCursor : & 'static [ u8 ; 23usize ] = b"NatronOfxSizeAllCursor\0" ; pub const kNatronOfxSplitVCursor : & 'static [ u8 ; 22usize ] = b"NatronOfxSplitVCursor\0" ; pub const kNatronOfxSplitHCursor : & 'static [ u8 ; 22usize ] = b"NatronOfxSplitHCursor\0" ; pub const kNatronOfxOpenHandCursor : & 'static [ u8 ; 24usize ] = b"NatronOfxOpenHandCursor\0" ; pub const kNatronOfxClosedHandCursor : & 'static [ u8 ; 26usize ] = b"NatronOfxClosedHandCursor\0" ; pub const kNatronOfxImageEffectPropInViewerContextParamsOrder : & 'static [ u8 ; 45usize ] = b"NatronOfxParamPropInViewerContextParamsOrder\0" ; pub const kNatronOfxParamPropInViewerContextLayoutHint : & 'static [ u8 ; 44usize ] = b"NatronOfxParamPropInViewerContextLayoutHint\0" ; pub const kNatronOfxParamPropInViewerContextLayoutHintNormal : u32 = 0 ; pub const kNatronOfxParamPropInViewerContextLayoutHintNormalDivider : u32 = 1 ; pub const kNatronOfxParamPropInViewerContextLayoutHintAddNewLine : u32 = 2 ; pub const kNatronOfxParamPropInViewerContextLayoutPadWidth : & 'static [ u8 ; 48usize ] = b"NatronOfxParamPropInViewerContextLayoutPadWidth\0" ; pub const kNatronOfxParamPropInViewerContextLabel : & 'static [ u8 ; 39usize ] = b"NatronOfxParamPropInViewerContextLabel\0" ; pub const kNatronOfxParamPropInViewerContextSecret : & 'static [ u8 ; 40usize ] = b"NatronOfxParamPropInViewerContextSecret\0" ; pub const kNatronOfxBooleanParamPropIsToggableButton : & 'static [ u8 ; 42usize ] = b"NatronOfxBooleanParamPropIsToggableButton\0" ; pub const kNatronOfxParamPropInViewerContextIsInToolbar : & 'static [ u8 ; 47usize ] = b"NatronOfxPageParamPropInViewerContextIsToolbar\0" ; pub const kNatronOfxParamPropInViewerContextCanHaveShortcut : & 'static [ u8 ; 49usize ] = b"NatronOfxParamPropInViewerContextCanHaveShortcut\0" ; pub const kNatronOfxImageEffectPropInViewerContextDefaultShortcuts : & 'static [ u8 ; 56usize ] = b"NatronOfxImageEffectPropInViewerContextDefaultShortcuts\0" ; pub const kNatronOfxImageEffectPropInViewerContextShortcutSymbol : & 'static [ u8 ; 54usize ] = b"NatronOfxImageEffectPropInViewerContextShortcutSymbol\0" ; pub const kNatronOfxImageEffectPropInViewerContextShortcutHasControlModifier : & 'static [ u8 ; 66usize ] = b"NatronOfxImageEffectPropInViewerContextShortcutHasControlModifier\0" ; pub const kNatronOfxImageEffectPropInViewerContextShortcutHasShiftModifier : & 'static [ u8 ; 64usize ] = b"NatronOfxImageEffectPropInViewerContextShortcutHasShiftModifier\0" ; pub const kNatronOfxImageEffectPropInViewerContextShortcutHasAltModifier : & 'static [ u8 ; 62usize ] = b"NatronOfxImageEffectPropInViewerContextShortcutHasAltModifier\0" ; pub const kNatronOfxImageEffectPropInViewerContextShortcutHasMetaModifier : & 'static [ u8 ; 63usize ] = b"NatronOfxImageEffectPropInViewerContextShortcutHasMetaModifier\0" ; pub const kNatronOfxImageEffectPropInViewerContextShortcutHasKeypadModifier : & 'static [ u8 ; 65usize ] = b"NatronOfxImageEffectPropInViewerContextShortcutHasKeypadModifier\0" ; pub const kNatronOfxImageEffectPropOpenGLContextData : & 'static [ u8 ; 42usize ] = b"NatronOfxImageEffectPropOpenGLContextData\0" ; pub const kNatronOfxInteractColourPicking : & 'static [ u8 ; 31usize ] = b"NatronOfxInteractColourPicking\0" ; pub const kNatronOfxPropPickerColour : & 'static [ u8 ; 26usize ] = b"NatronOfxPropPickerColour\0" ; pub const kNatronOfxParamPropParametricIsPeriodic : & 'static [ u8 ; 33usize ] = b"OfxParamPropParametricIsPeriodic\0" ; pub const kOfxImageClipPropFormat : & 'static [ u8 ; 23usize ] = b"OfxImageClipPropFormat\0" ; pub const kOfxImageEffectPropCanDistort : & 'static [ u8 ; 29usize ] = b"OfxImageEffectPropCanDistort\0" ; pub const kOfxImageEffectActionGetInverseDistortion : & 'static [ u8 ; 41usize ] = b"OfxImageEffectActionGetInverseDistortion\0" ; pub const kOfxPropInverseDistortionFunction : & 'static [ u8 ; 33usize ] = b"OfxPropInverseDistortionFunction\0" ; pub const kOfxPropInverseDistortionFunctionData : & 'static [ u8 ; 37usize ] = b"OfxPropInverseDistortionFunctionData\0" ; pub const kOfxPropInverseDistortionFunctionDataSize : & 'static [ u8 ; 41usize ] = b"OfxPropInverseDistortionFunctionDataSize\0" ; pub const kOfxPropInverseDistortionDataFreeFunction : & 'static [ u8 ; 41usize ] = b"OfxPropInverseDistortionDataFreeFunction\0" ; pub const kOfxPropMatrix3x3 : & 'static [ u8 ; 17usize ] = b"OfxPropMatrix3x3\0" ; pub const kOfxInteractPropScreenPixelRatio : & 'static [ u8 ; 32usize ] = b"OfxInteractPropScreenPixelRatio\0" ; pub const kOfxOpenGLRenderSuite : & 'static [ u8 ; 32usize ] = b"OfxImageEffectOpenGLRenderSuite\0" ; pub const kOfxImageEffectPropOpenGLRenderSupported : & 'static [ u8 ; 40usize ] = b"OfxImageEffectPropOpenGLRenderSupported\0" ; pub const kOfxOpenGLPropPixelDepth : & 'static [ u8 ; 24usize ] = b"OfxOpenGLPropPixelDepth\0" ; pub const kOfxImageEffectPropOpenGLEnabled : & 'static [ u8 ; 32usize ] = b"OfxImageEffectPropOpenGLEnabled\0" ; pub const kOfxImageEffectPropOpenGLTextureIndex : & 'static [ u8 ; 37usize ] = b"OfxImageEffectPropOpenGLTextureIndex\0" ; pub const kOfxImageEffectPropOpenGLTextureTarget : & 'static [ u8 ; 38usize ] = b"OfxImageEffectPropOpenGLTextureTarget\0" ; pub const kOfxActionOpenGLContextAttached : & 'static [ u8 ; 31usize ] = b"OfxActionOpenGLContextAttached\0" ; pub const kOfxActionOpenGLContextDetached : & 'static [ u8 ; 32usize ] = b"kOfxActionOpenGLContextDetached\0" ; pub const kOfxParametricParameterSuite : & 'static [ u8 ; 28usize ] = b"OfxParametricParameterSuite\0" ; pub const kOfxParamTypeParametric : & 'static [ u8 ; 23usize ] = b"OfxParamTypeParametric\0" ; pub const kOfxParamPropParametricDimension : & 'static [ u8 ; 32usize ] = b"OfxParamPropParametricDimension\0" ; pub const kOfxParamPropParametricUIColour : & 'static [ u8 ; 31usize ] = b"OfxParamPropParametricUIColour\0" ; pub const kOfxParamPropParametricInteractBackground : & 'static [ u8 ; 41usize ] = b"OfxParamPropParametricInteractBackground\0" ; pub const kOfxParamHostPropSupportsParametricAnimation : & 'static [ u8 ; 44usize ] = b"OfxParamHostPropSupportsParametricAnimation\0" ; pub const kOfxParamPropParametricRange : & 'static [ u8 ; 28usize ] = b"OfxParamPropParametricRange\0" ; pub const kOfxSonyVegasHostName : & 'static [ u8 ; 31usize ] = b"com.sonycreativesoftware.vegas\0" ; pub const kOfxSonyVegasMovieStudioHostName : & 'static [ u8 ; 46usize ] = b"com.sonycreativesoftware.vegas.moviestudio.hd\0" ; pub const kOfxSonyVegasMovieStudioPlatinumHostName : & 'static [ u8 ; 46usize ] = b"com.sonycreativesoftware.vegas.moviestudio.pe\0" ; pub const kOfxPropVegasHostAppDataDirectory : & 'static [ u8 ; 33usize ] = b"OfxPropVegasHostAppDataDirectory\0" ; pub const kOfxParamDoubleTypePolar : & 'static [ u8 ; 24usize ] = b"OfxParamDoubleTypePolar\0" ; pub const kOfxParamDoubleTypeChrominance : & 'static [ u8 ; 30usize ] = b"OfxParamDoubleTypeChrominance\0" ; pub const kOfxParamPropColorWheelLevel : & 'static [ u8 ; 28usize ] = b"OfxParamPropColorWheelLevel\0" ; pub const kOfxParamColorDefaultColorspace : & 'static [ u8 ; 31usize ] = b"OfxParamColorDefaultColorspace\0" ; pub const kOfxParamColorColorspaceRGB : & 'static [ u8 ; 27usize ] = b"OfxParamColorColorspaceRGB\0" ; pub const kOfxParamColorColorspaceHSL : & 'static [ u8 ; 27usize ] = b"OfxParamColorColorspaceHSL\0" ; pub const kOfxParamColorColorspaceHSV : & 'static [ u8 ; 27usize ] = b"OfxParamColorColorspaceHSV\0" ; pub const kOfxParamColorColorspaceLab : & 'static [ u8 ; 27usize ] = b"OfxParamColorColorspaceLab\0" ; pub const kOfxParamPropParameterExpanded : & 'static [ u8 ; 30usize ] = b"OfxParamPropParameterExpanded\0" ; pub const kOfxProbPluginVegasPresetThumbnail : & 'static [ u8 ; 34usize ] = b"OfxProbPluginVegasPresetThumbnail\0" ; pub const kOfxProbPluginVegasPresetThumbnailDefault : & 'static [ u8 ; 41usize ] = b"OfxProbPluginVegasPresetThumbnailDefault\0" ; pub const kOfxProbPluginVegasPresetThumbnailSolidImage : & 'static [ u8 ; 44usize ] = b"OfxProbPluginVegasPresetThumbnailSolidImage\0" ; pub const kOfxProbPluginVegasPresetThumbnailImageWithAlpha : & 'static [ u8 ; 48usize ] = b"OfxProbPluginVegasPresetThumbnailImageWithAlpha\0" ; pub const kOfxVegasProgressSuite : & 'static [ u8 ; 22usize ] = b"OfxVegasProgressSuite\0" ; pub const kOfxVegasStereoscopicImageEffectSuite : & 'static [ u8 ; 37usize ] = b"OfxVegasStereoscopicImageEffectSuite\0" ; pub const kOfxImageEffectPropHelpFile : & 'static [ u8 ; 27usize ] = b"OfxImageEffectPropHelpFile\0" ; pub const kOfxImageEffectPropHelpContextID : & 'static [ u8 ; 32usize ] = b"OfxImageEffectPropHelpContextID\0" ; pub const kOfxImageEffectActionInvokeHelp : & 'static [ u8 ; 31usize ] = b"OfxImageEffectActionInvokeHelp\0" ; pub const kOfxImageEffectActionInvokeAbout : & 'static [ u8 ; 32usize ] = b"OfxImageEffectActionInvokeAbout\0" ; pub const kOfxImageEffectPropVegasUpliftGUID : & 'static [ u8 ; 34usize ] = b"OfxImageEffectPropVegasUpliftGUID\0" ; pub const kOfxImageEffectActionVegasKeyframeUplift : & 'static [ u8 ; 40usize ] = b"OfxImageEffectActionVegasKeyframeUplift\0" ; pub const kOfxPropVegasUpliftKeyframeData : & 'static [ u8 ; 31usize ] = b"OfxPropVegasUpliftKeyframeData\0" ; pub const kOfxPropVegasUpliftKeyframeDataLength : & 'static [ u8 ; 37usize ] = b"OfxPropVegasUpliftKeyframeDataLength\0" ; pub const kOfxPropVegasUpliftKeyframeTime : & 'static [ u8 ; 31usize ] = b"OfxPropVegasUpliftKeyframeTime\0" ; pub const kOfxPropVegasUpliftKeyframeInterpolation : & 'static [ u8 ; 40usize ] = b"OfxPropVegasUpliftKeyframeInterpolation\0" ; pub const kOfxPropVegasUpliftData : & 'static [ u8 ; 23usize ] = b"OfxPropVegasUpliftData\0" ; pub const kOfxPropVegasUpliftDataLength : & 'static [ u8 ; 29usize ] = b"OfxPropVegasUpliftDataLength\0" ; pub const kOfxBitDepthByteBGR : & 'static [ u8 ; 19usize ] = b"OfxBitDepthByteBGR\0" ; pub const kOfxBitDepthShortBGR : & 'static [ u8 ; 20usize ] = b"OfxBitDepthShortBGR\0" ; pub const kOfxBitDepthFloatBGR : & 'static [ u8 ; 20usize ] = b"OfxBitDepthFloatBGR\0" ; pub const kOfxImagePixelOrderRGBA : & 'static [ u8 ; 23usize ] = b"OfxImagePixelOrderRGBA\0" ; pub const kOfxImagePixelOrderBGRA : & 'static [ u8 ; 23usize ] = b"OfxImagePixelOrderBGRA\0" ; pub const kOfxImagePropPixelOrder : & 'static [ u8 ; 29usize ] = b"OfxImageEffectPropPixelOrder\0" ; pub const kOfxImageEffectPropViewsToRender : & 'static [ u8 ; 32usize ] = b"OfxImageEffectPropViewsToRender\0" ; pub const kOfxImageEffectPropRenderView : & 'static [ u8 ; 29usize ] = b"OfxImageEffectPropRenderView\0" ; pub const kOfxImageEffectPropRenderQuality : & 'static [ u8 ; 32usize ] = b"OfxImageEffectPropRenderQuality\0" ; pub const kOfxImageEffectPropRenderQualityPreview : & 'static [ u8 ; 39usize ] = b"OfxImageEffectPropRenderQualityPreview\0" ; pub const kOfxImageEffectPropRenderQualityGood : & 'static [ u8 ; 36usize ] = b"OfxImageEffectPropRenderQualityGood\0" ; pub const kOfxImageEffectPropRenderQualityBest : & 'static [ u8 ; 36usize ] = b"OfxImageEffectPropRenderQualityBest\0" ; pub const kOfxImageEffectPropVegasContext : & 'static [ u8 ; 31usize ] = b"OfxImageEffectPropVegasContext\0" ; pub const kOfxImageEffectPropVegasContextUnknown : & 'static [ u8 ; 38usize ] = b"OfxImageEffectPropVegasContextUnknown\0" ; pub const kOfxImageEffectPropVegasContextMedia : & 'static [ u8 ; 36usize ] = b"OfxImageEffectPropVegasContextMedia\0" ; pub const kOfxImageEffectPropVegasContextTrack : & 'static [ u8 ; 36usize ] = b"OfxImageEffectPropVegasContextTrack\0" ; pub const kOfxImageEffectPropVegasContextEvent : & 'static [ u8 ; 36usize ] = b"OfxImageEffectPropVegasContextEvent\0" ; pub const kOfxImageEffectPropVegasContextEventFadeIn : & 'static [ u8 ; 42usize ] = b"OfxImageEffectPropVegasContextEventFadeIn\0" ; pub const kOfxImageEffectPropVegasContextEventFadeOut : & 'static [ u8 ; 43usize ] = b"OfxImageEffectPropVegasContextEventFadeOut\0" ; pub const kOfxImageEffectPropVegasContextProject : & 'static [ u8 ; 38usize ] = b"OfxImageEffectPropVegasContextProject\0" ; pub const kOfxImageEffectPropVegasContextGenerator : & 'static [ u8 ; 40usize ] = b"OfxImageEffectPropVegasContextGenerator\0" ; pub const kOfxVegasKeyframeSuite : & 'static [ u8 ; 22usize ] = b"OfxVegasKeyframeSuite\0" ; pub const kOfxVegasKeyframeInterpolationUnknown : & 'static [ u8 ; 37usize ] = b"OfxVegasKeyframeInterpolationUnknown\0" ; pub const kOfxVegasKeyframeInterpolationLinear : & 'static [ u8 ; 36usize ] = b"OfxVegasKeyframeInterpolationLinear\0" ; pub const kOfxVegasKeyframeInterpolationFast : & 'static [ u8 ; 34usize ] = b"OfxVegasKeyframeInterpolationFast\0" ; pub const kOfxVegasKeyframeInterpolationSlow : & 'static [ u8 ; 34usize ] = b"OfxVegasKeyframeInterpolationSlow\0" ; pub const kOfxVegasKeyframeInterpolationSmooth : & 'static [ u8 ; 36usize ] = b"OfxVegasKeyframeInterpolationSmooth\0" ; pub const kOfxVegasKeyframeInterpolationSharp : & 'static [ u8 ; 35usize ] = b"OfxVegasKeyframeInterpolationSharp\0" ; pub const kOfxVegasKeyframeInterpolationHold : & 'static [ u8 ; 34usize ] = b"OfxVegasKeyframeInterpolationHold\0" ; pub const kOfxVegasKeyframeInterpolationManual : & 'static [ u8 ; 36usize ] = b"OfxVegasKeyframeInterpolationManual\0" ; pub const kOfxVegasKeyframeInterpolationSplit : & 'static [ u8 ; 35usize ] = b"OfxVegasKeyframeInterpolationSplit\0" ; pub const kOfxHWndInteractSuite : & 'static [ u8 ; 21usize ] = b"OfxHWndInteractSuite\0" ; pub const kOfxImageEffectPluginPropHWndInteractV1 : & 'static [ u8 ; 39usize ] = b"OfxImageEffectPluginPropHWndInteractV1\0" ; pub const kOfxHWndInteractPropParent : & 'static [ u8 ; 26usize ] = b"OfxHWndInteractPropParent\0" ; pub const kOfxHWndInteractPropMinSize : & 'static [ u8 ; 27usize ] = b"OfxHWndInteractPropMinSize\0" ; pub const kOfxHWndInteractPropPreferredSize : & 'static [ u8 ; 33usize ] = b"OfxHWndInteractPropPrefferedSize\0" ; pub const kOfxHWndInteractActionCreateWindow : & 'static [ u8 ; 34usize ] = b"OfxHWndInteractActionCreateWindow\0" ; pub const kOfxHWndInteractPropLocation : & 'static [ u8 ; 28usize ] = b"OfxHWndInteractPropLocation\0" ; pub const kOfxHWndInteractActionMoveWindow : & 'static [ u8 ; 32usize ] = b"OfxHWndInteractActionMoveWindow\0" ; pub const kOfxHWndInteractActionDisposeWindow : & 'static [ u8 ; 35usize ] = b"OfxHWndInteractActionDisposeWindow\0" ; pub const kOfxHWndInteractActionShowWindow : & 'static [ u8 ; 32usize ] = b"OfxHWndInteractActionShowWindow\0" ; pub const kOfxTimeLineSuite : & 'static [ u8 ; 17usize ] = b"OfxTimeLineSuite\0" ; pub const kOfxImageEffectOpenGLRenderSuite : & 'static [ u8 ; 32usize ] = b"OfxImageEffectOpenGLRenderSuite\0" ; pub type wchar_t = :: std :: os :: raw :: c_int ; # [ repr ( C ) ] # [ repr ( align ( 16 ) ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct max_align_t { pub __clang_max_align_nonce1 : :: std :: os :: raw :: c_longlong , pub __bindgen_padding_0 : u64 , pub __clang_max_align_nonce2 : u128 , } # [ test ] fn bindgen_test_layout_max_align_t ( ) { assert_eq ! ( :: std :: mem :: size_of :: < max_align_t > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( max_align_t ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < max_align_t > ( ) , 16usize , concat ! ( "Alignment of " , stringify ! ( max_align_t ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < max_align_t > ( ) ) ) . __clang_max_align_nonce1 as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( max_align_t ) , "::" , stringify ! ( __clang_max_align_nonce1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < max_align_t > ( ) ) ) . __clang_max_align_nonce2 as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( max_align_t ) , "::" , stringify ! ( __clang_max_align_nonce2 ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxPropertySetStruct { _unused : [ u8 ; 0 ] , } 
 /// @brief Blind data structure to manipulate sets of properties through 
 pub type OfxPropertySetHandle = * mut OfxPropertySetStruct ; 
 /// @brief OFX status return type 
 pub type OfxStatus = :: std :: os :: raw :: c_int ; 
 /// @brief Generic host structure passed to OfxPlugin::setHost function
///
///This structure contains what is needed by a plug-in to bootstrap its connection
///to the host. 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxHost { 
 /// @brief Global handle to the host. Extract relevant host properties from this.
    ///This pointer will be valid while the binary containing the plug-in is loaded. 
 pub host : OfxPropertySetHandle , 
 /// @brief The function which the plug-in uses to fetch suites from the host.
    ///
    ///\arg \e host          - the host the suite is being fetched from this \em must be the \e host member of the OfxHost struct containing fetchSuite.
    ///\arg \e suiteName     - ASCII string labelling the host supplied API
    ///\arg \e suiteVersion  - version of that suite to fetch
    ///
    ///Any API fetched will be valid while the binary containing the plug-in is loaded.
    ///
    ///Repeated calls to fetchSuite with the same parameters will return the same pointer.
    ///
    ///returns
    ///- NULL if the API is unknown (either the api or the version requested),
    ///- pointer to the relevant API if it was found 
 pub fetchSuite : :: std :: option :: Option < unsafe extern "C" fn ( host : OfxPropertySetHandle , suiteName : * const :: std :: os :: raw :: c_char , suiteVersion : :: std :: os :: raw :: c_int ) -> * const :: std :: os :: raw :: c_void > , } # [ test ] fn bindgen_test_layout_OfxHost ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxHost > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( OfxHost ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxHost > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxHost ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxHost > ( ) ) ) . host as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxHost ) , "::" , stringify ! ( host ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxHost > ( ) ) ) . fetchSuite as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxHost ) , "::" , stringify ! ( fetchSuite ) ) ) ; } 
 /// @brief Entry point for plug-ins
///
///\arg \e action   - ASCII c string indicating which action to take
///\arg \e instance - object to which action should be applied, this will need to be cast to the appropriate blind data type depending on the \e action
///\arg \e inData   - handle that contains action specific properties
///\arg \e outData  - handle where the plug-in should set various action specific properties
///
///This is how the host generally communicates with a plug-in. Entry points are used to pass messages
///to various objects used within OFX. The main use is within the OfxPlugin struct.
///
///The exact set of actions is determined by the plug-in API that is being implemented, however all plug-ins
///can perform several actions. For the list of actions consult \ref ActionsAll. 
 pub type OfxPluginEntryPoint = :: std :: option :: Option < unsafe extern "C" fn ( action : * const :: std :: os :: raw :: c_char , handle : * const :: std :: os :: raw :: c_void , inArgs : OfxPropertySetHandle , outArgs : OfxPropertySetHandle ) -> OfxStatus > ; 
 /// @brief The structure that defines a plug-in to a host.
///
/// This structure is the first element in any plug-in structure
/// using the OFX plug-in architecture. By examining its members
/// a host can determine the API that the plug-in implements,
/// the version of that API, its name and version.
///
/// For details see \ref Architecture.
/// 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxPlugin { 
 /// Defines the type of the plug-in, this will tell the host what the plug-in does. e.g.: an image
    ///effects plug-in would be a "OfxImageEffectPlugin" 
 pub pluginApi : * const :: std :: os :: raw :: c_char , 
 /// Defines the version of the pluginApi that this plug-in implements 
 pub apiVersion : :: std :: os :: raw :: c_int , 
 /// String that uniquely labels the plug-in among all plug-ins that implement an API.
    ///It need not necessarily be human sensible, however the preference is to use reverse
    ///internet domain name of the developer, followed by a '.' then by a name that represents
    ///the plug-in.. It must be a legal ASCII string and have no whitespace in the
    ///name and no non printing chars.
    ///For example "uk.co.somesoftwarehouse.myPlugin" 
 pub pluginIdentifier : * const :: std :: os :: raw :: c_char , 
 /// Major version of this plug-in, this gets incremented when backwards compatibility is broken. 
 pub pluginVersionMajor : :: std :: os :: raw :: c_uint , 
 ///  Major version of this plug-in, this gets incremented when software is changed,
    ///but does not break backwards compatibility. 
 pub pluginVersionMinor : :: std :: os :: raw :: c_uint , 
 /// @brief Function the host uses to connect the plug-in to the host's api fetcher
    ///
    ///\arg \e fetchApi - pointer to host's API fetcher
    ///
    ///Mandatory function.
    ///
    ///The very first function called in a plug-in. The plug-in \em must \em not call any OFX functions within this, it must only set its local copy of the host pointer.
    ///
    ///\pre
    ///- nothing else has been called
    ///
    ///\post
    ///- the pointer suite is valid until the plug-in is unloaded 
 pub setHost : :: std :: option :: Option < unsafe extern "C" fn ( host : * mut OfxHost ) > , 
 /// @brief Main entry point for plug-ins
    ///
    ///Mandatory function.
    ///
    ///The exact set of actions is determined by the plug-in API that is being implemented, however all plug-ins
    ///can perform several actions. For the list of actions consult \ref ActionsAll.
    ///
    ///Preconditions
    ///- setHost has been called 
 pub mainEntry : OfxPluginEntryPoint , } # [ test ] fn bindgen_test_layout_OfxPlugin ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxPlugin > ( ) , 48usize , concat ! ( "Size of: " , stringify ! ( OfxPlugin ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxPlugin > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxPlugin ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPlugin > ( ) ) ) . pluginApi as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxPlugin ) , "::" , stringify ! ( pluginApi ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPlugin > ( ) ) ) . apiVersion as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxPlugin ) , "::" , stringify ! ( apiVersion ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPlugin > ( ) ) ) . pluginIdentifier as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxPlugin ) , "::" , stringify ! ( pluginIdentifier ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPlugin > ( ) ) ) . pluginVersionMajor as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( OfxPlugin ) , "::" , stringify ! ( pluginVersionMajor ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPlugin > ( ) ) ) . pluginVersionMinor as * const _ as usize } , 28usize , concat ! ( "Offset of field: " , stringify ! ( OfxPlugin ) , "::" , stringify ! ( pluginVersionMinor ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPlugin > ( ) ) ) . setHost as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( OfxPlugin ) , "::" , stringify ! ( setHost ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPlugin > ( ) ) ) . mainEntry as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( OfxPlugin ) , "::" , stringify ! ( mainEntry ) ) ) ; } extern "C" { 
 /// @brief Returns the 'nth' plug-in implemented inside a binary
///
/// Returns a pointer to the 'nth' plug-in implemented in the binary. A function of this type
/// must be implemented in and exported from each plug-in binary. 
 pub fn OfxGetPlugin ( nth : :: std :: os :: raw :: c_int ) -> * mut OfxPlugin ; } extern "C" { 
 /// @brief Defines the number of plug-ins implemented inside a binary
///
/// A host calls this to determine how many plug-ins there are inside
/// a binary it has loaded. A function of this type
/// must be implemented in and exported from each plug-in binary. 
 pub fn OfxGetNumberOfPlugins ( ) -> :: std :: os :: raw :: c_int ; } 
 /// @brief How time is specified within the OFX API 
 pub type OfxTime = f64 ; 
 /// @brief Defines one dimensional integer bounds 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxRangeI { pub min : :: std :: os :: raw :: c_int , pub max : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_OfxRangeI ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxRangeI > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( OfxRangeI ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxRangeI > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( OfxRangeI ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRangeI > ( ) ) ) . min as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxRangeI ) , "::" , stringify ! ( min ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRangeI > ( ) ) ) . max as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( OfxRangeI ) , "::" , stringify ! ( max ) ) ) ; } 
 /// @brief Defines one dimensional double bounds 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxRangeD { pub min : f64 , pub max : f64 , } # [ test ] fn bindgen_test_layout_OfxRangeD ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxRangeD > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( OfxRangeD ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxRangeD > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxRangeD ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRangeD > ( ) ) ) . min as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxRangeD ) , "::" , stringify ! ( min ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRangeD > ( ) ) ) . max as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxRangeD ) , "::" , stringify ! ( max ) ) ) ; } 
 /// @brief Defines two dimensional integer point 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxPointI { pub x : :: std :: os :: raw :: c_int , pub y : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_OfxPointI ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxPointI > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( OfxPointI ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxPointI > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( OfxPointI ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPointI > ( ) ) ) . x as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxPointI ) , "::" , stringify ! ( x ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPointI > ( ) ) ) . y as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( OfxPointI ) , "::" , stringify ! ( y ) ) ) ; } 
 /// @brief Defines two dimensional double point 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxPointD { pub x : f64 , pub y : f64 , } # [ test ] fn bindgen_test_layout_OfxPointD ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxPointD > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( OfxPointD ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxPointD > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxPointD ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPointD > ( ) ) ) . x as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxPointD ) , "::" , stringify ! ( x ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPointD > ( ) ) ) . y as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxPointD ) , "::" , stringify ! ( y ) ) ) ; } 
 /// @brief Defines two dimensional integer region
///
///Regions are x1 <= x < x2
///
///Infinite regions are flagged by setting
///- x1 = \ref kOfxFlagInfiniteMin
///- y1 = \ref kOfxFlagInfiniteMin
///- x2 = \ref kOfxFlagInfiniteMax
///- y2 = \ref kOfxFlagInfiniteMax
/// 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxRectI { pub x1 : :: std :: os :: raw :: c_int , pub y1 : :: std :: os :: raw :: c_int , pub x2 : :: std :: os :: raw :: c_int , pub y2 : :: std :: os :: raw :: c_int , } # [ test ] fn bindgen_test_layout_OfxRectI ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxRectI > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( OfxRectI ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxRectI > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( OfxRectI ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRectI > ( ) ) ) . x1 as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxRectI ) , "::" , stringify ! ( x1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRectI > ( ) ) ) . y1 as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( OfxRectI ) , "::" , stringify ! ( y1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRectI > ( ) ) ) . x2 as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxRectI ) , "::" , stringify ! ( x2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRectI > ( ) ) ) . y2 as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( OfxRectI ) , "::" , stringify ! ( y2 ) ) ) ; } 
 /// @brief Defines two dimensional double region
///
///Regions are x1 <= x < x2
///
///Infinite regions are flagged by setting
///- x1 = \ref kOfxFlagInfiniteMin
///- y1 = \ref kOfxFlagInfiniteMin
///- x2 = \ref kOfxFlagInfiniteMax
///- y2 = \ref kOfxFlagInfiniteMax
/// 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxRectD { pub x1 : f64 , pub y1 : f64 , pub x2 : f64 , pub y2 : f64 , } # [ test ] fn bindgen_test_layout_OfxRectD ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxRectD > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( OfxRectD ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxRectD > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxRectD ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRectD > ( ) ) ) . x1 as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxRectD ) , "::" , stringify ! ( x1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRectD > ( ) ) ) . y1 as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxRectD ) , "::" , stringify ! ( y1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRectD > ( ) ) ) . x2 as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxRectD ) , "::" , stringify ! ( x2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRectD > ( ) ) ) . y2 as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( OfxRectD ) , "::" , stringify ! ( y2 ) ) ) ; } 
 /// @brief The OFX suite used to access properties on OFX objects. 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxPropertySuiteV1 { 
 /// @brief Set a single value in a pointer property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg index is for multidimenstional properties and is dimension of the one we are setting
    ///\arg value is the value of the property we are setting
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex
    ///- ::kOfxStatErrValue 
 pub propSetPointer : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int , value : * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , 
 /// @brief Set a single value in a string property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg index is for multidimenstional properties and is dimension of the one we are setting
    ///\arg value is the value of the property we are setting
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex
    ///- ::kOfxStatErrValue 
 pub propSetString : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int , value : * const :: std :: os :: raw :: c_char ) -> OfxStatus > , 
 /// @brief Set a single value in a double property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg index is for multidimenstional properties and is dimension of the one we are setting
    ///\arg value is the value of the property we are setting
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex
    ///- ::kOfxStatErrValue 
 pub propSetDouble : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int , value : f64 ) -> OfxStatus > , 
 /// @brief Set a single value in  an int property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg index is for multidimenstional properties and is dimension of the one we are setting
    ///\arg value is the value of the property we are setting
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex
    ///- ::kOfxStatErrValue 
 pub propSetInt : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int , value : :: std :: os :: raw :: c_int ) -> OfxStatus > , 
 /// @brief Set multiple values of the pointer property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg count is the number of values we are setting in that property (ie: indicies 0..count-1)
    ///\arg value is a pointer to an array of property values
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex
    ///- ::kOfxStatErrValue 
 pub propSetPointerN : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , count : :: std :: os :: raw :: c_int , value : * const * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , 
 /// @brief Set multiple values of a string property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg count is the number of values we are setting in that property (ie: indicies 0..count-1)
    ///\arg value is a pointer to an array of property values
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex
    ///- ::kOfxStatErrValue 
 pub propSetStringN : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , count : :: std :: os :: raw :: c_int , value : * const * const :: std :: os :: raw :: c_char ) -> OfxStatus > , 
 /// @brief Set multiple values of  a double property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg count is the number of values we are setting in that property (ie: indicies 0..count-1)
    ///\arg value is a pointer to an array of property values
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex
    ///- ::kOfxStatErrValue
    /// 
 pub propSetDoubleN : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , count : :: std :: os :: raw :: c_int , value : * const f64 ) -> OfxStatus > , 
 /// @brief Set multiple values of an int property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg count is the number of values we are setting in that property (ie: indicies 0..count-1)
    ///\arg value is a pointer to an array of property values
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex
    ///- ::kOfxStatErrValue
    /// 
 pub propSetIntN : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , count : :: std :: os :: raw :: c_int , value : * const :: std :: os :: raw :: c_int ) -> OfxStatus > , 
 /// @brief Get a single value from a pointer property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg index refers to the index of a multi-dimensional property
    ///\arg value is a pointer the return location
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex 
 pub propGetPointer : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int , value : * mut * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , 
 /// @brief Get a single value of a string property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg index refers to the index of a multi-dimensional property
    ///\arg value is a pointer the return location
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex 
 pub propGetString : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int , value : * mut * const :: std :: os :: raw :: c_char ) -> OfxStatus > , 
 /// @brief Get a single value of a double property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg index refers to the index of a multi-dimensional property
    ///\arg value is a pointer the return location
    ///
    ///See the note \ref ArchitectureStrings for how to deal with strings.
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex 
 pub propGetDouble : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int , value : * mut f64 ) -> OfxStatus > , 
 /// @brief Get a single value of an int property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg index refers to the index of a multi-dimensional property
    ///\arg value is a pointer the return location
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex 
 pub propGetInt : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , index : :: std :: os :: raw :: c_int , value : * mut :: std :: os :: raw :: c_int ) -> OfxStatus > , 
 /// @brief Get multiple values of a pointer property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg count is the number of values we are getting of that property (ie: indicies 0..count-1)
    ///\arg value is a pointer to an array of where we will return the property values
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex 
 pub propGetPointerN : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , count : :: std :: os :: raw :: c_int , value : * mut * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , 
 /// @brief Get multiple values of a string property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg count is the number of values we are getting of that property (ie: indicies 0..count-1)
    ///\arg value is a pointer to an array of where we will return the property values
    ///
    ///See the note \ref ArchitectureStrings for how to deal with strings.
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex 
 pub propGetStringN : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , count : :: std :: os :: raw :: c_int , value : * mut * const :: std :: os :: raw :: c_char ) -> OfxStatus > , 
 /// @brief Get multiple values of a double property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg count is the number of values we are getting of that property (ie: indicies 0..count-1)
    ///\arg value is a pointer to an array of where we will return the property values
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex 
 pub propGetDoubleN : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , count : :: std :: os :: raw :: c_int , value : * mut f64 ) -> OfxStatus > , 
 /// @brief Get multiple values of an int property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property
    ///\arg count is the number of values we are getting of that property (ie: indicies 0..count-1)
    ///\arg value is a pointer to an array of where we will return the property values
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown
    ///- ::kOfxStatErrBadIndex 
 pub propGetIntN : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , count : :: std :: os :: raw :: c_int , value : * mut :: std :: os :: raw :: c_int ) -> OfxStatus > , 
 /// @brief Resets all dimensions of a property to its default value
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property we are resetting
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown 
 pub propReset : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char ) -> OfxStatus > , 
 /// @brief Gets the dimension of the property
    ///
    ///\arg properties is the handle of the thing holding the property
    ///\arg property is the string labelling the property we are resetting
    ///\arg count is a pointer to an integer where the value is returned
    ///
    ///@returns
    ///- ::kOfxStatOK
    ///- ::kOfxStatErrBadHandle
    ///- ::kOfxStatErrUnknown 
 pub propGetDimension : :: std :: option :: Option < unsafe extern "C" fn ( properties : OfxPropertySetHandle , property : * const :: std :: os :: raw :: c_char , count : * mut :: std :: os :: raw :: c_int ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxPropertySuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxPropertySuiteV1 > ( ) , 144usize , concat ! ( "Size of: " , stringify ! ( OfxPropertySuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxPropertySuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxPropertySuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propSetPointer as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propSetPointer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propSetString as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propSetString ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propSetDouble as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propSetDouble ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propSetInt as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propSetInt ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propSetPointerN as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propSetPointerN ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propSetStringN as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propSetStringN ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propSetDoubleN as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propSetDoubleN ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propSetIntN as * const _ as usize } , 56usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propSetIntN ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propGetPointer as * const _ as usize } , 64usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propGetPointer ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propGetString as * const _ as usize } , 72usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propGetString ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propGetDouble as * const _ as usize } , 80usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propGetDouble ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propGetInt as * const _ as usize } , 88usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propGetInt ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propGetPointerN as * const _ as usize } , 96usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propGetPointerN ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propGetStringN as * const _ as usize } , 104usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propGetStringN ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propGetDoubleN as * const _ as usize } , 112usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propGetDoubleN ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propGetIntN as * const _ as usize } , 120usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propGetIntN ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propReset as * const _ as usize } , 128usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propReset ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxPropertySuiteV1 > ( ) ) ) . propGetDimension as * const _ as usize } , 136usize , concat ! ( "Offset of field: " , stringify ! ( OfxPropertySuiteV1 ) , "::" , stringify ! ( propGetDimension ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxParamStruct { _unused : [ u8 ; 0 ] , } 
 /// @brief Blind declaration of an OFX param 
 pub type OfxParamHandle = * mut OfxParamStruct ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxParamSetStruct { _unused : [ u8 ; 0 ] , } 
 /// @brief Blind declaration of an OFX parameter set
/// 
 pub type OfxParamSetHandle = * mut OfxParamSetStruct ; 
 /// @brief Function prototype for custom parameter interpolation callback functions
///
///\arg instance   the plugin instance that this parameter occurs in
///\arg inArgs     handle holding the following properties...
///- kOfxPropName - the name of the custom parameter to interpolate
///- kOfxPropTime - absolute time the interpolation is ocurring at
///- kOfxParamPropCustomValue - string property that gives the value of the two keyframes to interpolate, in this case 2D
///- kOfxParamPropInterpolationTime - 2D double property that gives the time of the two keyframes we are interpolating
///- kOfxParamPropInterpolationAmount - 1D double property indicating how much to interpolate between the two keyframes
///
///\arg outArgs handle holding the following properties to be set
///- kOfxParamPropCustomValue - the value of the interpolated custom parameter, in this case 1D
///
///This function allows custom parameters to animate by performing interpolation between keys.
///
///The plugin needs to parse the two strings encoding keyframes on either side of the time
///we need a value for. It should then interpolate a new value for it, encode it into a string and set
///the ::kOfxParamPropCustomValue property with this on the outArgs handle.
///
///The interp value is a linear interpolation amount, however his may be derived from a cubic (or other) curve. 
 pub type OfxCustomParamInterpFuncV1 = :: std :: option :: Option < unsafe extern "C" fn ( instance : OfxParamSetHandle , inArgs : OfxPropertySetHandle , outArgs : OfxPropertySetHandle ) -> OfxStatus > ; 
 /// @brief The OFX suite used to define and manipulate user visible parameters 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxParameterSuiteV1 { 
 /// @brief Defines a new parameter of the given type in a describe action
    ///
    ///\arg paramSet   handle to the parameter set descriptor that will hold this parameter
    ///\arg paramType   type of the parameter to create, one of the kOfxParamType* #defines
    ///\arg name        unique name of the parameter
    ///\arg propertySet  if not null, a pointer to the parameter descriptor's property set will be placed here.
    ///
    ///This function defines a parameter in a parameter set and returns a property set which is used to describe that parameter.
    ///
    ///This function does not actually create a parameter, it only says that one should exist in any subsequent instances. To fetch an
    ///parameter instance paramGetHandle must be called on an instance.
    ///
    ///This function can always be called in one of a plug-in's "describe" functions which defines the parameter sets common to all instances of a plugin.
    ///
    ///@returns
    ///- ::kOfxStatOK             - the parameter was created correctly
    ///- ::kOfxStatErrBadHandle   - if the plugin handle was invalid
    ///- ::kOfxStatErrExists      - if a parameter of that name exists already in this plugin
    ///- ::kOfxStatErrUnknown     - if the type is unknown
    ///- ::kOfxStatErrUnsupported - if the type is known but unsupported 
 pub paramDefine : :: std :: option :: Option < unsafe extern "C" fn ( paramSet : OfxParamSetHandle , paramType : * const :: std :: os :: raw :: c_char , name : * const :: std :: os :: raw :: c_char , propertySet : * mut OfxPropertySetHandle ) -> OfxStatus > , 
 /// @brief Retrieves the handle for a parameter in a given parameter set
    ///
    ///\arg paramSet    instance of the plug-in to fetch the property handle from
    ///\arg name        parameter to ask about
    ///\arg param       pointer to a param handle, the value is returned here
    ///\arg propertySet  if not null, a pointer to the parameter's property set will be placed here.
    ///
    ///Parameter handles retrieved from an instance are always distinct in each instance. The paramter handle is valid for the life-time of the instance. Parameter handles in instances are distinct from paramter handles in plugins. You cannot call this in a plugin's describe function, as it needs an instance to work on.
    ///
    ///@returns
    ///- ::kOfxStatOK       - the parameter was found and returned
    ///- ::kOfxStatErrBadHandle  - if the plugin handle was invalid
    ///- ::kOfxStatErrUnknown    - if the type is unknown 
 pub paramGetHandle : :: std :: option :: Option < unsafe extern "C" fn ( paramSet : OfxParamSetHandle , name : * const :: std :: os :: raw :: c_char , param : * mut OfxParamHandle , propertySet : * mut OfxPropertySetHandle ) -> OfxStatus > , 
 /// @brief Retrieves the property set handle for the given parameter set
    ///
    ///\arg paramSet      parameter set to get the property set for
    ///\arg propHandle    pointer to a the property set handle, value is returedn her
    ///
    ///\note The property handle belonging to a parameter set is the same as the property handle belonging to the plugin instance.
    ///
    ///@returns
    ///- ::kOfxStatOK       - the property set was found and returned
    ///- ::kOfxStatErrBadHandle  - if the paramter handle was invalid
    ///- ::kOfxStatErrUnknown    - if the type is unknown 
 pub paramSetGetPropertySet : :: std :: option :: Option < unsafe extern "C" fn ( paramSet : OfxParamSetHandle , propHandle : * mut OfxPropertySetHandle ) -> OfxStatus > , 
 /// @brief Retrieves the property set handle for the given parameter
    ///
    ///\arg param         parameter to get the property set for
    ///\arg propHandle    pointer to a the property set handle, value is returedn her
    ///
    ///The property handle is valid for the lifetime of the parameter, which is the lifetime of the instance that owns the parameter
    ///
    ///@returns
    ///- ::kOfxStatOK       - the property set was found and returned
    ///- ::kOfxStatErrBadHandle  - if the paramter handle was invalid
    ///- ::kOfxStatErrUnknown    - if the type is unknown 
 pub paramGetPropertySet : :: std :: option :: Option < unsafe extern "C" fn ( param : OfxParamHandle , propHandle : * mut OfxPropertySetHandle ) -> OfxStatus > , 
 /// @brief Gets the current value of a parameter,
    ///
    ///\arg paramHandle parameter handle to fetch value from
    ///\arg ...         one or more pointers to variables of the relevant type to hold the parameter's value
    ///
    ///This gets the current value of a parameter. The varargs ... argument needs to be pointer to C variables
    ///of the relevant type for this parameter. Note that params with multiple values (eg Colour) take
    ///multiple args here. For example...
    ///
    ///@verbatim
    ///OfxParamHandle myDoubleParam, *myColourParam;
    ///ofxHost->paramGetHandle(instance, "myDoubleParam", &myDoubleParam);
    ///double myDoubleValue;
    ///ofxHost->paramGetValue(myDoubleParam, &myDoubleValue);
    ///ofxHost->paramGetHandle(instance, "myColourParam", &myColourParam);
    ///double myR, myG, myB;
    ///ofxHost->paramGetValue(myColourParam, &myR, &myG, &myB);
    ///@endverbatim
    ///
    ///\note paramGetValue should only be called from within a ::kOfxActionInstanceChanged or interact action and never from the render actions (which should always use paramGetValueAtTime).
    ///
    ///@returns
    ///- ::kOfxStatOK       - all was OK
    ///- ::kOfxStatErrBadHandle  - if the parameter handle was invalid 
 pub paramGetValue : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle , ... ) -> OfxStatus > , 
 /// @brief Gets the value of a parameter at a specific time.
    ///
    ///\arg paramHandle parameter handle to fetch value from
    ///\arg time       at what point in time to look up the parameter
    ///\arg ...        one or more pointers to variables of the relevant type to hold the parameter's value
    ///
    ///This gets the current value of a parameter. The varargs needs to be pointer to C variables
    ///of the relevant type for this parameter. See OfxParameterSuiteV1::paramGetValue for notes on
    ///the varags list
    ///
    ///@returns
    ///- ::kOfxStatOK       - all was OK
    ///- ::kOfxStatErrBadHandle  - if the parameter handle was invalid 
 pub paramGetValueAtTime : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle , time : OfxTime , ... ) -> OfxStatus > , 
 /// @brief Gets the derivative of a parameter at a specific time.
    ///
    ///\arg paramHandle parameter handle to fetch value from
    ///\arg time       at what point in time to look up the parameter
    ///\arg ...        one or more pointers to variables of the relevant type to hold the parameter's derivative
    ///
    ///This gets the derivative of the parameter at the indicated time.
    ///
    ///The varargs needs to be pointer to C variables
    ///of the relevant type for this parameter. See OfxParameterSuiteV1::paramGetValue for notes on
    ///the varags list.
    ///
    ///Only double and colour params can have their derivatives found.
    ///
    ///@returns
    ///- ::kOfxStatOK       - all was OK
    ///- ::kOfxStatErrBadHandle  - if the parameter handle was invalid 
 pub paramGetDerivative : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle , time : OfxTime , ... ) -> OfxStatus > , 
 /// @brief Gets the integral of a parameter over a specific time range,
    ///
    ///\arg paramHandle parameter handle to fetch integral from
    ///\arg time1      where to start evaluating the integral
    ///\arg time2      where to stop evaluating the integral
    ///\arg ...        one or more pointers to variables of the relevant type to hold the parameter's integral
    ///
    ///This gets the integral of the parameter over the specified time range.
    ///
    ///The varargs needs to be pointer to C variables
    ///of the relevant type for this parameter. See OfxParameterSuiteV1::paramGetValue for notes on
    ///the varags list.
    ///
    ///Only double and colour params can be integrated.
    ///
    ///@returns
    ///- ::kOfxStatOK       - all was OK
    ///- ::kOfxStatErrBadHandle  - if the parameter handle was invalid 
 pub paramGetIntegral : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle , time1 : OfxTime , time2 : OfxTime , ... ) -> OfxStatus > , 
 /// @brief Sets the current value of a parameter
    ///
    ///\arg paramHandle parameter handle to set value in
    ///\arg ...        one or more variables of the relevant type to hold the parameter's value
    ///
    ///This sets the current value of a parameter. The varargs ... argument needs to be values
    ///of the relevant type for this parameter. Note that params with multiple values (eg Colour) take
    ///multiple args here. For example...
    ///@verbatim
    ///ofxHost->paramSetValue(instance, "myDoubleParam", double(10));
    ///ofxHost->paramSetValue(instance, "myColourParam", double(pix.r), double(pix.g), double(pix.b));
    ///@endverbatim
    ///
    ///\note paramSetValue should only be called from within a ::kOfxActionInstanceChanged or interact action.
    ///
    ///@returns
    ///- ::kOfxStatOK       - all was OK
    ///- ::kOfxStatErrBadHandle  - if the parameter handle was invalid 
 pub paramSetValue : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle , ... ) -> OfxStatus > , 
 /// @brief Keyframes the value of a parameter at a specific time.
    ///
    ///\arg paramHandle parameter handle to set value in
    ///\arg time       at what point in time to set the keyframe
    ///\arg ...        one or more variables of the relevant type to hold the parameter's value
    ///
    ///This sets a keyframe in the parameter at the indicated time to have the indicated value.
    ///The varargs ... argument needs to be values of the relevant type for this parameter. See the note on
    ///OfxParameterSuiteV1::paramSetValue for more detail
    ///
    ///\note paramSetValueAtTime should only be called from within a ::kOfxActionInstanceChanged or interact action.
    ///
    ///V1.3: This function can be called the ::kOfxActionInstanceChanged action and during image effect analysis render passes.
    ///V1.4: This function can be called the ::kOfxActionInstanceChanged action
    ///@returns
    ///- ::kOfxStatOK       - all was OK
    ///- ::kOfxStatErrBadHandle  - if the parameter handle was invalid 
 pub paramSetValueAtTime : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle , time : OfxTime , ... ) -> OfxStatus > , 
 /// @brief Returns the number of keyframes in the parameter
    ///
    ///\arg paramHandle parameter handle to interogate
    ///\arg numberOfKeys  pointer to integer where the return value is placed
    ///
    ///V1.3: This function can be called the ::kOfxActionInstanceChanged action and during image effect analysis render passes.
    ///V1.4: This function can be called the ::kOfxActionInstanceChanged action
    ///
    ///Returns the number of keyframes in the parameter.
    ///
    ///@returns
    ///- ::kOfxStatOK       - all was OK
    ///- ::kOfxStatErrBadHandle  - if the parameter handle was invalid 
 pub paramGetNumKeys : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle , numberOfKeys : * mut :: std :: os :: raw :: c_uint ) -> OfxStatus > , 
 /// @brief Returns the time of the nth key
    ///
    ///\arg paramHandle parameter handle to interogate
    ///\arg nthKey      which key to ask about (0 to paramGetNumKeys -1), ordered by time
    ///\arg time	  pointer to OfxTime where the return value is placed
    ///
    ///@returns
    ///- ::kOfxStatOK       - all was OK
    ///- ::kOfxStatErrBadHandle  - if the parameter handle was invalid
    ///- ::kOfxStatErrBadIndex   - the nthKey does not exist 
 pub paramGetKeyTime : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle , nthKey : :: std :: os :: raw :: c_uint , time : * mut OfxTime ) -> OfxStatus > , 
 /// @brief Finds the index of a keyframe at/before/after a specified time.
    ///
    ///\arg paramHandle parameter handle to search
    ///\arg time          what time to search from
    ///\arg direction
    ///- == 0 indicates search for a key at the indicated time (some small delta)
    ///- > 0 indicates search for the next key after the indicated time
    ///- < 0 indicates search for the previous key before the indicated time
    ///\arg index	   pointer to an integer which in which the index is returned set to -1 if no key was found
    ///
    ///@returns
    ///- ::kOfxStatOK            - all was OK
    ///- ::kOfxStatFailed        - if the search failed to find a key
    ///- ::kOfxStatErrBadHandle  - if the parameter handle was invalid 
 pub paramGetKeyIndex : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle , time : OfxTime , direction : :: std :: os :: raw :: c_int , index : * mut :: std :: os :: raw :: c_int ) -> OfxStatus > , 
 /// @brief Deletes a keyframe if one exists at the given time.
    ///
    ///\arg paramHandle parameter handle to delete the key from
    ///\arg time      time at which a keyframe is
    ///
    ///@returns
    ///- ::kOfxStatOK       - all was OK
    ///- ::kOfxStatErrBadHandle  - if the parameter handle was invalid
    ///- ::kOfxStatErrBadIndex   - no key at the given time 
 pub paramDeleteKey : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle , time : OfxTime ) -> OfxStatus > , 
 /// @brief Deletes all keyframes from a parameter.
    ///
    ///\arg paramHandle parameter handle to delete the keys from
    ///\arg name      parameter to delete the keyframes frome is
    ///
    ///V1.3: This function can be called the ::kOfxActionInstanceChanged action and during image effect analysis render passes.
    ///V1.4: This function can be called the ::kOfxActionInstanceChanged action
    ///
    ///@returns
    ///- ::kOfxStatOK       - all was OK
    ///- ::kOfxStatErrBadHandle  - if the parameter handle was invalid 
 pub paramDeleteAllKeys : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle ) -> OfxStatus > , 
 /// @brief Copies one parameter to another, including any animation etc...
    ///
    ///\arg paramTo  parameter to set
    ///\arg paramFrom parameter to copy from
    ///\arg dstOffset temporal offset to apply to keys when writing to the paramTo
    ///\arg frameRange if paramFrom has animation, and frameRange is not null, only this range of keys will be copied
    ///
    ///This copies the value of \e paramFrom to \e paramTo, including any animation it may have. All the previous values in \e paramTo will be lost.
    ///
    ///To choose all animation in \e paramFrom set \e frameRange to [0, 0]
    ///
    ///V1.3: This function can be called the ::kOfxActionInstanceChanged action and during image effect analysis render passes.
    ///V1.4: This function can be called the ::kOfxActionInstanceChanged action
    ///
    ///\pre
    ///- Both parameters must be of the same type.
    ///
    ///\return
    ///- ::kOfxStatOK       - all was OK
    ///- ::kOfxStatErrBadHandle  - if the parameter handle was invalid 
 pub paramCopy : :: std :: option :: Option < unsafe extern "C" fn ( paramTo : OfxParamHandle , paramFrom : OfxParamHandle , dstOffset : OfxTime , frameRange : * const OfxRangeD ) -> OfxStatus > , 
 /// @brief Used to group any parameter changes for undo/redo purposes
    ///
    ///\arg paramSet   the parameter set in which this is happening
    ///\arg name       label to attach to any undo/redo string UTF8
    ///
    ///If a plugin calls paramSetValue/paramSetValueAtTime on one or more parameters, either from custom GUI interaction
    ///or some analysis of imagery etc.. this is used to indicate the start of a set of a parameter
    ///changes that should be considered part of a single undo/redo block.
    ///
    ///\note paramEditBegin should only be called from within a ::kOfxActionInstanceChanged or interact action.
    ///
    ///See also OfxParameterSuiteV1::paramEditEnd
    ///
    ///\return
    ///- ::kOfxStatOK       - all was OK
    ///- ::kOfxStatErrBadHandle  - if the instance handle was invalid
    /// 
 pub paramEditBegin : :: std :: option :: Option < unsafe extern "C" fn ( paramSet : OfxParamSetHandle , name : * const :: std :: os :: raw :: c_char ) -> OfxStatus > , 
 /// @brief Used to group any parameter changes for undo/redo purposes
    ///
    ///\arg paramSet   the parameter set in which this is happening
    ///
    ///If a plugin calls paramSetValue/paramSetValueAtTime on one or more parameters, either from custom GUI interaction
    ///or some analysis of imagery etc.. this is used to indicate the end of a set of parameter
    ///changes that should be considerred part of a single undo/redo block
    ///
    ///\note paramEditEnd should only be called from within a ::kOfxActionInstanceChanged or interact action.
    ///
    ///See also OfxParameterSuiteV1::paramEditBegin
    ///
    ///@returns
    ///- ::kOfxStatOK       - all was OK
    ///- ::kOfxStatErrBadHandle  - if the instance handle was invalid
    /// 
 pub paramEditEnd : :: std :: option :: Option < unsafe extern "C" fn ( paramSet : OfxParamSetHandle ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxParameterSuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxParameterSuiteV1 > ( ) , 144usize , concat ! ( "Size of: " , stringify ! ( OfxParameterSuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxParameterSuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxParameterSuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramDefine as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramDefine ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramGetHandle as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramGetHandle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramSetGetPropertySet as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramSetGetPropertySet ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramGetPropertySet as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramGetPropertySet ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramGetValue as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramGetValue ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramGetValueAtTime as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramGetValueAtTime ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramGetDerivative as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramGetDerivative ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramGetIntegral as * const _ as usize } , 56usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramGetIntegral ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramSetValue as * const _ as usize } , 64usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramSetValue ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramSetValueAtTime as * const _ as usize } , 72usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramSetValueAtTime ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramGetNumKeys as * const _ as usize } , 80usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramGetNumKeys ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramGetKeyTime as * const _ as usize } , 88usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramGetKeyTime ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramGetKeyIndex as * const _ as usize } , 96usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramGetKeyIndex ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramDeleteKey as * const _ as usize } , 104usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramDeleteKey ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramDeleteAllKeys as * const _ as usize } , 112usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramDeleteAllKeys ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramCopy as * const _ as usize } , 120usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramCopy ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramEditBegin as * const _ as usize } , 128usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramEditBegin ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParameterSuiteV1 > ( ) ) ) . paramEditEnd as * const _ as usize } , 136usize , concat ! ( "Offset of field: " , stringify ! ( OfxParameterSuiteV1 ) , "::" , stringify ! ( paramEditEnd ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxInteract { _unused : [ u8 ; 0 ] , } 
 /// @brief Blind declaration of an OFX interactive gui 
 pub type OfxInteractHandle = * mut OfxInteract ; 
 /// @brief OFX suite that allows an effect to interact with an openGL window so as to provide custom interfaces. 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxInteractSuiteV1 { 
 /// @brief Requests an openGL buffer swap on the interact instance 
 pub interactSwapBuffers : :: std :: option :: Option < unsafe extern "C" fn ( interactInstance : OfxInteractHandle ) -> OfxStatus > , 
 /// @brief Requests a redraw of the interact instance 
 pub interactRedraw : :: std :: option :: Option < unsafe extern "C" fn ( interactInstance : OfxInteractHandle ) -> OfxStatus > , 
 /// @brief Gets the property set handle for this interact handle 
 pub interactGetPropertySet : :: std :: option :: Option < unsafe extern "C" fn ( interactInstance : OfxInteractHandle , property : * mut OfxPropertySetHandle ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxInteractSuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxInteractSuiteV1 > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( OfxInteractSuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxInteractSuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxInteractSuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxInteractSuiteV1 > ( ) ) ) . interactSwapBuffers as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxInteractSuiteV1 ) , "::" , stringify ! ( interactSwapBuffers ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxInteractSuiteV1 > ( ) ) ) . interactRedraw as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxInteractSuiteV1 ) , "::" , stringify ! ( interactRedraw ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxInteractSuiteV1 > ( ) ) ) . interactGetPropertySet as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxInteractSuiteV1 ) , "::" , stringify ! ( interactGetPropertySet ) ) ) ; } 
 /// @brief The OFX suite that allows a plug-in to pass messages back to a user. The V2 suite extends on this
///in a backwards compatible manner. 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxMessageSuiteV1 { 
 /// @brief Post a message on the host, using printf style varargs
    ///
    ///\arg handle     - effect handle (descriptor or instance) the message should be associated with, may be null
    ///\arg messageType - string describing the kind of message to post, one of the kOfxMessageType* constants
    ///\arg messageId - plugin specified id to associate with this message. If overriding the message in XML resource, the message is identified with this, this may be NULL, or "", in which case no override will occur,
    ///\arg format    - printf style format string
    ///\arg ...       - printf style varargs list to print
    ///
    ///\returns
    ///- ::kOfxStatOK - if the message was sucessfully posted
    ///- ::kOfxStatReplyYes - if the message was of type  kOfxMessageQuestion and the user reply yes
    ///- ::kOfxStatReplyNo - if the message was of type kOfxMessageQuestion and the user reply no
    ///- ::kOfxStatFailed - if the message could not be posted for some reason
    /// 
 pub message : :: std :: option :: Option < unsafe extern "C" fn ( handle : * mut :: std :: os :: raw :: c_void , messageType : * const :: std :: os :: raw :: c_char , messageId : * const :: std :: os :: raw :: c_char , format : * const :: std :: os :: raw :: c_char , ... ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxMessageSuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxMessageSuiteV1 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( OfxMessageSuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxMessageSuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxMessageSuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMessageSuiteV1 > ( ) ) ) . message as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxMessageSuiteV1 ) , "::" , stringify ! ( message ) ) ) ; } 
 /// @brief The OFX suite that allows a plug-in to pass messages back to a user.
///
///This extends OfxMessageSuiteV1, and should be considered a replacement to version 1.
///
///Note that this suite has been extended in backwards compatible manner, so that a host can return this struct
///for both V1 and V2. 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxMessageSuiteV2 { 
 /// @brief Post a transient message on the host, using printf style varargs. Same as the V1 message suite call.
    ///
    ///\arg handle     - effect handle (descriptor or instance) the message should be associated with, may be null
    ///\arg messageType - string describing the kind of message to post, one of the kOfxMessageType* constants
    ///\arg messageId - plugin specified id to associate with this message. If overriding the message in XML resource, the message is identified with this, this may be NULL, or "", in which case no override will occur,
    ///\arg format    - printf style format string
    ///\arg ...       - printf style varargs list to print
    ///
    ///\returns
    ///- ::kOfxStatOK - if the message was sucessfully posted
    ///- ::kOfxStatReplyYes - if the message was of type  kOfxMessageQuestion and the user reply yes
    ///- ::kOfxStatReplyNo - if the message was of type kOfxMessageQuestion and the user reply no
    ///- ::kOfxStatFailed - if the message could not be posted for some reason 
 pub message : :: std :: option :: Option < unsafe extern "C" fn ( handle : * mut :: std :: os :: raw :: c_void , messageType : * const :: std :: os :: raw :: c_char , messageId : * const :: std :: os :: raw :: c_char , format : * const :: std :: os :: raw :: c_char , ... ) -> OfxStatus > , 
 /// @brief Post a persistent message on an effect, using printf style varargs, and set error states. New for V2 message suite.
    ///
    ///\arg handle     - effect instance handle the message should be associated with, may NOT be null,
    ///\arg messageType - string describing the kind of message to post, should be one of...
    ///- kOfxMessageError
    ///- kOfxMessageWarning
    ///- kOfxMessageMessage
    ///\arg messageId - plugin specified id to associate with this message. If overriding the message in XML resource, the message is identified with this, this may be NULL, or "", in which case no override will occur,
    ///\arg format    - printf style format string
    ///\arg ...       - printf style varargs list to print
    ///
    ///\returns
    ///- ::kOfxStatOK - if the message was sucessfully posted
    ///- ::kOfxStatErrBadHandle - the handle was rubbish
    ///- ::kOfxStatFailed - if the message could not be posted for some reason
    ///
    ///Persistent messages are associated with an effect handle until explicitly cleared by an effect. So if an error message is posted the error state, and associated message will persist and be displayed on the effect appropriately. (eg: draw a node in red on a node based compostor and display the message when clicked on).
    ///
    ///If \e messageType is error or warning, associated error states should be flagged on host applications. Posting an error message implies that the host cannot proceeed, a warning allows the host to proceed, whilst a simple message should have no stop anything. 
 pub setPersistentMessage : :: std :: option :: Option < unsafe extern "C" fn ( handle : * mut :: std :: os :: raw :: c_void , messageType : * const :: std :: os :: raw :: c_char , messageId : * const :: std :: os :: raw :: c_char , format : * const :: std :: os :: raw :: c_char , ... ) -> OfxStatus > , 
 /// @brief Clears any persistent message on an effect handle that was set by OfxMessageSuiteV2::setPersistentMessage. New for V2 message suite.
    ///
    ///\arg handle     - effect instance handle messages should be cleared from.
    ///\arg handle     - effect handle (descriptor or instance)
    ///
    ///\returns
    ///- ::kOfxStatOK - if the message was sucessfully cleared
    ///- ::kOfxStatErrBadHandle - the handle was rubbish
    ///- ::kOfxStatFailed - if the message could not be cleared for some reason
    ///
    ///Clearing a message will clear any associated error state. 
 pub clearPersistentMessage : :: std :: option :: Option < unsafe extern "C" fn ( handle : * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxMessageSuiteV2 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxMessageSuiteV2 > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( OfxMessageSuiteV2 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxMessageSuiteV2 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxMessageSuiteV2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMessageSuiteV2 > ( ) ) ) . message as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxMessageSuiteV2 ) , "::" , stringify ! ( message ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMessageSuiteV2 > ( ) ) ) . setPersistentMessage as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxMessageSuiteV2 ) , "::" , stringify ! ( setPersistentMessage ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMessageSuiteV2 > ( ) ) ) . clearPersistentMessage as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxMessageSuiteV2 ) , "::" , stringify ! ( clearPersistentMessage ) ) ) ; } 
 /// @brief The OFX suite that implements general purpose memory management.
///
///Use this suite for ordinary memory management functions, where you would normally use malloc/free or new/delete on ordinary objects.
///
///For images, you should use the memory allocation functions in the image effect suite, as many hosts have specific image memory pools.
///
///\note C++ plugin developers will need to redefine new and delete as skins ontop of this suite. 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxMemorySuiteV1 { 
 /// @brief Allocate memory.
    ///
    ///\arg handle	- effect instance to assosciate with this memory allocation, or NULL.
    ///\arg nBytes        - the number of bytes to allocate
    ///\arg allocatedData - a pointer to the return value. Allocated memory will be alligned for any use.
    ///
    ///This function has the host allocate memory using its own memory resources
    ///and returns that to the plugin.
    ///
    ///@returns
    ///- ::kOfxStatOK the memory was sucessfully allocated
    ///- ::kOfxStatErrMemory the request could not be met and no memory was allocated
    /// 
 pub memoryAlloc : :: std :: option :: Option < unsafe extern "C" fn ( handle : * mut :: std :: os :: raw :: c_void , nBytes : usize , allocatedData : * mut * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , 
 /// @brief Frees memory.
    ///
    ///\arg allocatedData - pointer to memory previously returned by OfxMemorySuiteV1::memoryAlloc
    ///
    ///This function frees any memory that was previously allocated via OfxMemorySuiteV1::memoryAlloc.
    ///
    ///@returns
    ///- ::kOfxStatOK the memory was sucessfully freed
    ///- ::kOfxStatErrBadHandle \e allocatedData was not a valid pointer returned by OfxMemorySuiteV1::memoryAlloc
    /// 
 pub memoryFree : :: std :: option :: Option < unsafe extern "C" fn ( allocatedData : * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxMemorySuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxMemorySuiteV1 > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( OfxMemorySuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxMemorySuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxMemorySuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMemorySuiteV1 > ( ) ) ) . memoryAlloc as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxMemorySuiteV1 ) , "::" , stringify ! ( memoryAlloc ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMemorySuiteV1 > ( ) ) ) . memoryFree as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxMemorySuiteV1 ) , "::" , stringify ! ( memoryFree ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxMutex { _unused : [ u8 ; 0 ] , } 
 /// @brief Mutex blind data handle 
 pub type OfxMutexHandle = * mut OfxMutex ; 
 /// @brief The function type to passed to the multi threading routines
///
///\arg \e threadIndex unique index of this thread, will be between 0 and threadMax
///\arg \e threadMax to total number of threads executing this function
///\arg \e customArg the argument passed into multiThread
///
///A function of this type is passed to OfxMultiThreadSuiteV1::multiThread to be launched in multiple threads. 
 pub type OfxThreadFunctionV1 = :: std :: option :: Option < unsafe extern "C" fn ( threadIndex : :: std :: os :: raw :: c_uint , threadMax : :: std :: os :: raw :: c_uint , customArg : * mut :: std :: os :: raw :: c_void ) > ; 
 /// @brief OFX suite that provides simple SMP style multi-processing 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxMultiThreadSuiteV1 { 
 ///@brief Function to spawn SMP threads
    ///
    ///\arg func The function to call in each thread.
    ///\arg nThreads The number of threads to launch
    ///\arg customArg The paramter to pass to customArg of func in each thread.
    ///
    ///This function will spawn nThreads separate threads of computation (typically one per CPU)
    ///to allow something to perform symmetric multi processing. Each thread will call 'func' passing
    ///in the index of the thread and the number of threads actually launched.
    ///
    ///multiThread will not return until all the spawned threads have returned. It is up to the host
    ///how it waits for all the threads to return (busy wait, blocking, whatever).
    ///
    ///\e nThreads can be more than the value returned by multiThreadNumCPUs, however the threads will
    ///be limitted to the number of CPUs returned by multiThreadNumCPUs.
    ///
    ///This function cannot be called recursively.
    ///
    ///@returns
    ///- ::kOfxStatOK, the function func has executed and returned sucessfully
    ///- ::kOfxStatFailed, the threading function failed to launch
    ///- ::kOfxStatErrExists, failed in an attempt to call multiThread recursively,
    /// 
 pub multiThread : :: std :: option :: Option < unsafe extern "C" fn ( func : OfxThreadFunctionV1 , nThreads : :: std :: os :: raw :: c_uint , customArg : * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , 
 ///@brief Function which indicates the number of CPUs available for SMP processing
    ///
    ///\arg nCPUs pointer to an integer where the result is returned
    ///
    ///This value may be less than the actual number of CPUs on a machine, as the host may reserve other CPUs for itself.
    ///
    ///@returns
    ///- ::kOfxStatOK, all was OK and the maximum number of threads is in nThreads.
    ///- ::kOfxStatFailed, the function failed to get the number of CPUs 
 pub multiThreadNumCPUs : :: std :: option :: Option < unsafe extern "C" fn ( nCPUs : * mut :: std :: os :: raw :: c_uint ) -> OfxStatus > , 
 ///@brief Function which indicates the index of the current thread
    ///
    ///\arg threadIndex  pointer to an integer where the result is returned
    ///
    ///This function returns the thread index, which is the same as the \e threadIndex argument passed to the ::OfxThreadFunctionV1.
    ///
    ///If there are no threads currently spawned, then this function will set threadIndex to 0
    ///
    ///@returns
    ///- ::kOfxStatOK, all was OK and the maximum number of threads is in nThreads.
    ///- ::kOfxStatFailed, the function failed to return an index 
 pub multiThreadIndex : :: std :: option :: Option < unsafe extern "C" fn ( threadIndex : * mut :: std :: os :: raw :: c_uint ) -> OfxStatus > , 
 ///@brief Function to enquire if the calling thread was spawned by multiThread
    ///
    ///@returns
    ///- 0 if the thread is not one spawned by multiThread
    ///- 1 if the thread was spawned by multiThread 
 pub multiThreadIsSpawnedThread : :: std :: option :: Option < unsafe extern "C" fn ( ) -> :: std :: os :: raw :: c_int > , 
 /// @brief Create a mutex
    ///
    ///\arg mutex - where the new handle is returned
    ///\arg count - initial lock count on the mutex. This can be negative.
    ///
    ///Creates a new mutex with lockCount locks on the mutex intially set.
    ///
    ///@returns
    ///- kOfxStatOK - mutex is now valid and ready to go 
 pub mutexCreate : :: std :: option :: Option < unsafe extern "C" fn ( mutex : * mut OfxMutexHandle , lockCount : :: std :: os :: raw :: c_int ) -> OfxStatus > , 
 /// @brief Destroy a mutex
    ///
    ///Destroys a mutex intially created by mutexCreate.
    ///
    ///@returns
    ///- kOfxStatOK - if it destroyed the mutex
    ///- kOfxStatErrBadHandle - if the handle was bad 
 pub mutexDestroy : :: std :: option :: Option < unsafe extern "C" fn ( mutex : OfxMutexHandle ) -> OfxStatus > , 
 /// @brief Blocking lock on the mutex
    ///
    ///This trys to lock a mutex and blocks the thread it is in until the lock suceeds.
    ///
    ///A sucessful lock causes the mutex's lock count to be increased by one and to block any other calls to lock the mutex until it is unlocked.
    ///
    ///@returns
    ///- kOfxStatOK - if it got the lock
    ///- kOfxStatErrBadHandle - if the handle was bad 
 pub mutexLock : :: std :: option :: Option < unsafe extern "C" fn ( mutex : OfxMutexHandle ) -> OfxStatus > , 
 /// @brief Unlock the mutex
    ///
    ///This  unlocks a mutex. Unlocking a mutex decreases its lock count by one.
    ///
    ///@returns
    ///- kOfxStatOK if it released the lock
    ///- kOfxStatErrBadHandle if the handle was bad 
 pub mutexUnLock : :: std :: option :: Option < unsafe extern "C" fn ( mutex : OfxMutexHandle ) -> OfxStatus > , 
 /// @brief Non blocking attempt to lock the mutex
    ///
    ///This attempts to lock a mutex, if it cannot, it returns and says so, rather than blocking.
    ///
    ///A sucessful lock causes the mutex's lock count to be increased by one, if the lock did not suceed, the call returns immediately and the lock count remains unchanged.
    ///
    ///@returns
    ///- kOfxStatOK - if it got the lock
    ///- kOfxStatFailed - if it did not get the lock
    ///- kOfxStatErrBadHandle - if the handle was bad 
 pub mutexTryLock : :: std :: option :: Option < unsafe extern "C" fn ( mutex : OfxMutexHandle ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxMultiThreadSuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxMultiThreadSuiteV1 > ( ) , 72usize , concat ! ( "Size of: " , stringify ! ( OfxMultiThreadSuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxMultiThreadSuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxMultiThreadSuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMultiThreadSuiteV1 > ( ) ) ) . multiThread as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxMultiThreadSuiteV1 ) , "::" , stringify ! ( multiThread ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMultiThreadSuiteV1 > ( ) ) ) . multiThreadNumCPUs as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxMultiThreadSuiteV1 ) , "::" , stringify ! ( multiThreadNumCPUs ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMultiThreadSuiteV1 > ( ) ) ) . multiThreadIndex as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxMultiThreadSuiteV1 ) , "::" , stringify ! ( multiThreadIndex ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMultiThreadSuiteV1 > ( ) ) ) . multiThreadIsSpawnedThread as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( OfxMultiThreadSuiteV1 ) , "::" , stringify ! ( multiThreadIsSpawnedThread ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMultiThreadSuiteV1 > ( ) ) ) . mutexCreate as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( OfxMultiThreadSuiteV1 ) , "::" , stringify ! ( mutexCreate ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMultiThreadSuiteV1 > ( ) ) ) . mutexDestroy as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( OfxMultiThreadSuiteV1 ) , "::" , stringify ! ( mutexDestroy ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMultiThreadSuiteV1 > ( ) ) ) . mutexLock as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( OfxMultiThreadSuiteV1 ) , "::" , stringify ! ( mutexLock ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMultiThreadSuiteV1 > ( ) ) ) . mutexUnLock as * const _ as usize } , 56usize , concat ! ( "Offset of field: " , stringify ! ( OfxMultiThreadSuiteV1 ) , "::" , stringify ! ( mutexUnLock ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxMultiThreadSuiteV1 > ( ) ) ) . mutexTryLock as * const _ as usize } , 64usize , concat ! ( "Offset of field: " , stringify ! ( OfxMultiThreadSuiteV1 ) , "::" , stringify ! ( mutexTryLock ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxImageEffectStruct { _unused : [ u8 ; 0 ] , } 
 /// @brief Blind declaration of an OFX image effect 
 pub type OfxImageEffectHandle = * mut OfxImageEffectStruct ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxImageClipStruct { _unused : [ u8 ; 0 ] , } 
 /// @brief Blind declaration of an OFX image effect 
 pub type OfxImageClipHandle = * mut OfxImageClipStruct ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxImageMemoryStruct { _unused : [ u8 ; 0 ] , } 
 /// @brief Blind declaration for an handle to image memory returned by the image memory management routines 
 pub type OfxImageMemoryHandle = * mut OfxImageMemoryStruct ; 
 /// @brief The OFX suite for image effects
///
///This suite provides the functions needed by a plugin to defined and use an image effect plugin. 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxImageEffectSuiteV1 { 
 /// @brief Retrieves the property set for the given image effect
    ///
    ///\arg imageEffect   image effect to get the property set for
    ///\arg propHandle    pointer to a the property set pointer, value is returned here
    ///
    ///The property handle is for the duration of the image effect handle.
    ///
    ///@returns
    ///- ::kOfxStatOK       - the property set was found and returned
    ///- ::kOfxStatErrBadHandle  - if the paramter handle was invalid
    ///- ::kOfxStatErrUnknown    - if the type is unknown 
 pub getPropertySet : :: std :: option :: Option < unsafe extern "C" fn ( imageEffect : OfxImageEffectHandle , propHandle : * mut OfxPropertySetHandle ) -> OfxStatus > , 
 /// @brief Retrieves the parameter set for the given image effect
    ///
    ///\arg imageEffect   image effect to get the property set for
    ///\arg paramSet     pointer to a the parameter set, value is returned here
    ///
    ///The param set handle is valid for the lifetime of the image effect handle.
    ///
    ///@returns
    ///- ::kOfxStatOK       - the property set was found and returned
    ///- ::kOfxStatErrBadHandle  - if the paramter handle was invalid
    ///- ::kOfxStatErrUnknown    - if the type is unknown 
 pub getParamSet : :: std :: option :: Option < unsafe extern "C" fn ( imageEffect : OfxImageEffectHandle , paramSet : * mut OfxParamSetHandle ) -> OfxStatus > , 
 /// @brief Define a clip to the effect.
    ///
    ///\arg pluginHandle - the handle passed into 'describeInContext' action
    ///\arg name - unique name of the clip to define
    ///\arg propertySet - a property handle for the clip descriptor will be returned here
    ///
    ///This function defines a clip to a host, the returned property set is used to describe
    ///various aspects of the clip to the host. Note that this does not create a clip instance.
    ///
    ///\pre
    ///- we are inside the describe in context action.
    ///
    ///@returns 
 pub clipDefine : :: std :: option :: Option < unsafe extern "C" fn ( imageEffect : OfxImageEffectHandle , name : * const :: std :: os :: raw :: c_char , propertySet : * mut OfxPropertySetHandle ) -> OfxStatus > , 
 /// @brief Get the propery handle of the named input clip in the given instance
    ///
    ///\arg imageEffect - an instance handle to the plugin
    ///\arg name        - name of the clip, previously used in a clip define call
    ///\arg clip        - where to return the clip
    ///\arg propertySet  if not null, the descriptor handle for a parameter's property set will be placed here.
    ///
    ///The propertySet will have the same value as would be returned by OfxImageEffectSuiteV1::clipGetPropertySet
    ///
    ///This return a clip handle for the given instance, note that this will \em not be the same as the
    ///clip handle returned by clipDefine and will be distanct to clip handles in any other instance
    ///of the plugin.
    ///
    ///Not a valid call in any of the describe actions.
    ///
    ///\pre
    ///- create instance action called,
    ///- \e name passed to clipDefine for this context,
    ///- not inside describe or describe in context actions.
    ///
    ///\post
    ///- handle will be valid for the life time of the instance.
    /// 
 pub clipGetHandle : :: std :: option :: Option < unsafe extern "C" fn ( imageEffect : OfxImageEffectHandle , name : * const :: std :: os :: raw :: c_char , clip : * mut OfxImageClipHandle , propertySet : * mut OfxPropertySetHandle ) -> OfxStatus > , 
 /// @brief Retrieves the property set for a given clip
    ///
    ///\arg clip          clip effect to get the property set for
    ///\arg propHandle    pointer to a the property set handle, value is returedn her
    ///
    ///The property handle is valid for the lifetime of the clip, which is generally the lifetime of the instance.
    ///
    ///@returns
    ///- ::kOfxStatOK       - the property set was found and returned
    ///- ::kOfxStatErrBadHandle  - if the paramter handle was invalid
    ///- ::kOfxStatErrUnknown    - if the type is unknown 
 pub clipGetPropertySet : :: std :: option :: Option < unsafe extern "C" fn ( clip : OfxImageClipHandle , propHandle : * mut OfxPropertySetHandle ) -> OfxStatus > , 
 /// @brief Get a handle for an image in a clip at the indicated time and indicated region
    ///
    ///\arg clip  - the clip to extract the image from
    ///\arg time        - time to fetch the image at
    ///\arg region      - region to fetch the image from (optional, set to NULL to get a 'default' region)
    ///this is in the \ref CanonicalCoordinates.
    ///\arg imageHandle - property set containing the image's data
    ///
    ///An image is fetched from a clip at the indicated time for the given region and returned in the imageHandle.
    ///
    ///If the \e region parameter is not set to NULL, then it will be clipped to the clip's Region of Definition for the given time. The returned image will be \em at \em least as big as this region. If the region parameter is not set, then the region fetched will be at least the Region of Interest the effect has previously specified, clipped the clip's Region of Definition.
    ///
    ///If clipGetImage is called twice with the same parameters, then two separate image handles will be returned, each of which must be release. The underlying implementation could share image data pointers and use reference counting to maintain them.
    ///
    ///\pre
    ///- clip was returned by clipGetHandle
    ///
    ///\post
    ///- image handle is only valid for the duration of the action clipGetImage is called in
    ///- image handle to be disposed of by clipReleaseImage before the action returns
    ///
    ///@returns
    ///- ::kOfxStatOK - the image was successfully fetched and returned in the handle,
    ///- ::kOfxStatFailed - the image could not be fetched because it does not exist in the clip at the indicated time and/or region, the plugin
    ///should continue operation, but assume the image was black and transparent.
    ///- ::kOfxStatErrBadHandle - the clip handle was invalid,
    ///- ::kOfxStatErrMemory - the host had not enough memory to complete the operation, plugin should abort whatever it was doing.
    /// 
 pub clipGetImage : :: std :: option :: Option < unsafe extern "C" fn ( clip : OfxImageClipHandle , time : OfxTime , region : * const OfxRectD , imageHandle : * mut OfxPropertySetHandle ) -> OfxStatus > , 
 /// @brief Releases the image handle previously returned by clipGetImage
    ///
    ///
    ///\pre
    ///- imageHandle was returned by clipGetImage
    ///
    ///\post
    ///- all operations on imageHandle will be invalid
    ///
    ///@returns
    ///- ::kOfxStatOK - the image was successfully fetched and returned in the handle,
    ///- ::kOfxStatErrBadHandle - the image handle was invalid, 
 pub clipReleaseImage : :: std :: option :: Option < unsafe extern "C" fn ( imageHandle : OfxPropertySetHandle ) -> OfxStatus > , 
 /// @brief Returns the spatial region of definition of the clip at the given time
    ///
    ///\arg clipHandle  - the clip to extract the image from
    ///\arg time        - time to fetch the image at
    ///\arg region      - region to fetch the image from (optional, set to NULL to get a 'default' region)
    ///this is in the \ref CanonicalCoordinates.
    ///\arg imageHandle - handle where the image is returned
    ///
    ///An image is fetched from a clip at the indicated time for the given region and returned in the imageHandle.
    ///
    ///If the \e region parameter is not set to NULL, then it will be clipped to the clip's Region of Definition for the given time. The returned image will be \em at \em least as big as this region. If the region parameter is not set, then the region fetched will be at least the Region of Interest the effect has previously specified, clipped the clip's Region of Definition.
    ///
    ///\pre
    ///- clipHandle was returned by clipGetHandle
    ///
    ///\post
    ///- bounds will be filled the RoD of the clip at the indicated time
    ///
    ///@returns
    ///- ::kOfxStatOK - the image was successfully fetched and returned in the handle,
    ///- ::kOfxStatFailed - the image could not be fetched because it does not exist in the clip at the indicated time, the plugin
    ///should continue operation, but assume the image was black and transparent.
    ///- ::kOfxStatErrBadHandle - the clip handle was invalid,
    ///- ::kOfxStatErrMemory - the host had not enough memory to complete the operation, plugin should abort whatever it was doing.
    ///
    /// 
 pub clipGetRegionOfDefinition : :: std :: option :: Option < unsafe extern "C" fn ( clip : OfxImageClipHandle , time : OfxTime , bounds : * mut OfxRectD ) -> OfxStatus > , 
 /// @brief Returns whether to abort processing or not.
    ///
    ///\arg imageEffect  - instance of the image effect
    ///
    ///A host may want to signal to a plugin that it should stop whatever rendering it is doing and start again.
    ///Generally this is done in interactive threads in response to users tweaking some parameter.
    ///
    ///This function indicates whether a plugin should stop whatever processing it is doing.
    ///
    ///@returns
    ///- 0 if the effect should continue whatever processing it is doing
    ///- 1 if the effect should abort whatever processing it is doing 
 pub abort : :: std :: option :: Option < unsafe extern "C" fn ( imageEffect : OfxImageEffectHandle ) -> :: std :: os :: raw :: c_int > , 
 /// @brief Allocate memory from the host's image memory pool
    ///
    ///\arg instanceHandle  - effect instance to associate with this memory allocation, may be NULL.
    ///\arg nBytes          - the number of bytes to allocate
    ///\arg memoryHandle    - pointer to the memory handle where a return value is placed
    ///
    ///Memory handles allocated by this should be freed by OfxImageEffectSuiteV1::imageMemoryFree.
    ///To access the memory behind the handle you need to call  OfxImageEffectSuiteV1::imageMemoryLock.
    ///
    ///See \ref ImageEffectsMemoryAllocation.
    ///
    ///@returns
    ///- kOfxStatOK if all went well, a valid memory handle is placed in \e memoryHandle
    ///- kOfxStatErrBadHandle if instanceHandle is not valid, memoryHandle is set to NULL
    ///- kOfxStatErrMemory if there was not enough memory to satisfy the call, memoryHandle is set to NULL 
 pub imageMemoryAlloc : :: std :: option :: Option < unsafe extern "C" fn ( instanceHandle : OfxImageEffectHandle , nBytes : usize , memoryHandle : * mut OfxImageMemoryHandle ) -> OfxStatus > , 
 /// @brief Frees a memory handle and associated memory.
    ///
    ///\arg memoryHandle - memory handle returned by imageMemoryAlloc
    ///
    ///This function frees a memory handle and associated memory that was previously allocated via OfxImageEffectSuiteV1::imageMemoryAlloc
    ///
    ///If there are outstanding locks, these are ignored and the handle and memory are freed anyway.
    ///
    ///See \ref ImageEffectsMemoryAllocation.
    ///
    ///@returns
    ///- kOfxStatOK if the memory was cleanly deleted
    ///- kOfxStatErrBadHandle if the value of \e memoryHandle was not a valid pointer returned by OfxImageEffectSuiteV1::imageMemoryAlloc 
 pub imageMemoryFree : :: std :: option :: Option < unsafe extern "C" fn ( memoryHandle : OfxImageMemoryHandle ) -> OfxStatus > , 
 /// @brief Lock the memory associated with a memory handle and make it available for use.
    ///
    ///\arg memoryHandle - memory handle returned by imageMemoryAlloc
    ///\arg returnedPtr - where to the pointer to the locked memory
    ///
    ///This function locks them memory associated with a memory handle and returns a pointer to it. The memory will be 16 byte aligned, to allow use of vector operations.
    ///
    ///Note that memory locks and unlocks nest.
    ///
    ///After the first lock call, the contents of the memory pointer to by \e returnedPtr is undefined. All subsequent calls to lock will return memory with the same contents as  the previous call.
    ///
    ///Also, if unlocked, then relocked, the memory associated with a memory handle may be at a different address.
    ///
    ///See also OfxImageEffectSuiteV1::imageMemoryUnlock and \ref ImageEffectsMemoryAllocation.
    ///
    ///@returns
    ///- kOfxStatOK if the memory was locked, a pointer is placed in \e returnedPtr
    ///- kOfxStatErrBadHandle if the value of \e memoryHandle was not a valid pointer returned by OfxImageEffectSuiteV1::imageMemoryAlloc, null is placed in \e *returnedPtr
    ///- kOfxStatErrMemory if there was not enough memory to satisfy the call, \e *returnedPtr is set to NULL 
 pub imageMemoryLock : :: std :: option :: Option < unsafe extern "C" fn ( memoryHandle : OfxImageMemoryHandle , returnedPtr : * mut * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , 
 /// @brief Unlock allocated image data
    ///
    ///\arg allocatedData - pointer to memory previously returned by OfxImageEffectSuiteV1::imageAlloc
    ///
    ///This function unlocks a previously locked memory handle. Once completely unlocked, memory associated with a memoryHandle is no longer available for use. Attempting to use it results in undefined behaviour.
    ///
    ///Note that locks and unlocks nest, and to fully unlock memory you need to match the count of locks placed upon it.
    ///
    ///Also note, if you unlock a completely unlocked handle, it has no effect (ie: the lock count can't be negative).
    ///
    ///If unlocked, then relocked, the memory associated with a memory handle may be at a different address, however the contents will remain the same.
    ///
    ///See also OfxImageEffectSuiteV1::imageMemoryLock and \ref ImageEffectsMemoryAllocation.
    ///
    ///@returns
    ///- kOfxStatOK if the memory was unlocked cleanly,
    ///- kOfxStatErrBadHandle if the value of \e memoryHandle was not a valid pointer returned by OfxImageEffectSuiteV1::imageMemoryAlloc, null is placed in \e *returnedPtr 
 pub imageMemoryUnlock : :: std :: option :: Option < unsafe extern "C" fn ( memoryHandle : OfxImageMemoryHandle ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxImageEffectSuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxImageEffectSuiteV1 > ( ) , 104usize , concat ! ( "Size of: " , stringify ! ( OfxImageEffectSuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxImageEffectSuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxImageEffectSuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectSuiteV1 > ( ) ) ) . getPropertySet as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectSuiteV1 ) , "::" , stringify ! ( getPropertySet ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectSuiteV1 > ( ) ) ) . getParamSet as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectSuiteV1 ) , "::" , stringify ! ( getParamSet ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectSuiteV1 > ( ) ) ) . clipDefine as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectSuiteV1 ) , "::" , stringify ! ( clipDefine ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectSuiteV1 > ( ) ) ) . clipGetHandle as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectSuiteV1 ) , "::" , stringify ! ( clipGetHandle ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectSuiteV1 > ( ) ) ) . clipGetPropertySet as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectSuiteV1 ) , "::" , stringify ! ( clipGetPropertySet ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectSuiteV1 > ( ) ) ) . clipGetImage as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectSuiteV1 ) , "::" , stringify ! ( clipGetImage ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectSuiteV1 > ( ) ) ) . clipReleaseImage as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectSuiteV1 ) , "::" , stringify ! ( clipReleaseImage ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectSuiteV1 > ( ) ) ) . clipGetRegionOfDefinition as * const _ as usize } , 56usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectSuiteV1 ) , "::" , stringify ! ( clipGetRegionOfDefinition ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectSuiteV1 > ( ) ) ) . abort as * const _ as usize } , 64usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectSuiteV1 ) , "::" , stringify ! ( abort ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectSuiteV1 > ( ) ) ) . imageMemoryAlloc as * const _ as usize } , 72usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectSuiteV1 ) , "::" , stringify ! ( imageMemoryAlloc ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectSuiteV1 > ( ) ) ) . imageMemoryFree as * const _ as usize } , 80usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectSuiteV1 ) , "::" , stringify ! ( imageMemoryFree ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectSuiteV1 > ( ) ) ) . imageMemoryLock as * const _ as usize } , 88usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectSuiteV1 ) , "::" , stringify ! ( imageMemoryLock ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectSuiteV1 > ( ) ) ) . imageMemoryUnlock as * const _ as usize } , 96usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectSuiteV1 ) , "::" , stringify ! ( imageMemoryUnlock ) ) ) ; } 
 /// @brief Defines an 8 bit per component YUVA pixel
///-- ofxPixels.h
///Deprecated in 1.3, removed in 1.4 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxYUVAColourB { pub y : :: std :: os :: raw :: c_uchar , pub u : :: std :: os :: raw :: c_uchar , pub v : :: std :: os :: raw :: c_uchar , pub a : :: std :: os :: raw :: c_uchar , } # [ test ] fn bindgen_test_layout_OfxYUVAColourB ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxYUVAColourB > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( OfxYUVAColourB ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxYUVAColourB > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( OfxYUVAColourB ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxYUVAColourB > ( ) ) ) . y as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxYUVAColourB ) , "::" , stringify ! ( y ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxYUVAColourB > ( ) ) ) . u as * const _ as usize } , 1usize , concat ! ( "Offset of field: " , stringify ! ( OfxYUVAColourB ) , "::" , stringify ! ( u ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxYUVAColourB > ( ) ) ) . v as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( OfxYUVAColourB ) , "::" , stringify ! ( v ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxYUVAColourB > ( ) ) ) . a as * const _ as usize } , 3usize , concat ! ( "Offset of field: " , stringify ! ( OfxYUVAColourB ) , "::" , stringify ! ( a ) ) ) ; } 
 /// @brief Defines an 16 bit per component YUVA pixel
///-- ofxPixels.h
///@deprecated -  Deprecated in 1.3, removed in 1.4 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxYUVAColourS { pub y : :: std :: os :: raw :: c_ushort , pub u : :: std :: os :: raw :: c_ushort , pub v : :: std :: os :: raw :: c_ushort , pub a : :: std :: os :: raw :: c_ushort , } # [ test ] fn bindgen_test_layout_OfxYUVAColourS ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxYUVAColourS > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( OfxYUVAColourS ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxYUVAColourS > ( ) , 2usize , concat ! ( "Alignment of " , stringify ! ( OfxYUVAColourS ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxYUVAColourS > ( ) ) ) . y as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxYUVAColourS ) , "::" , stringify ! ( y ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxYUVAColourS > ( ) ) ) . u as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( OfxYUVAColourS ) , "::" , stringify ! ( u ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxYUVAColourS > ( ) ) ) . v as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( OfxYUVAColourS ) , "::" , stringify ! ( v ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxYUVAColourS > ( ) ) ) . a as * const _ as usize } , 6usize , concat ! ( "Offset of field: " , stringify ! ( OfxYUVAColourS ) , "::" , stringify ! ( a ) ) ) ; } 
 /// @brief Defines an floating point component YUVA pixel
///-- ofxPixels.h
///@deprecated -  Deprecated in 1.3, removed in 1.4 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxYUVAColourF { pub y : f32 , pub u : f32 , pub v : f32 , pub a : f32 , } # [ test ] fn bindgen_test_layout_OfxYUVAColourF ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxYUVAColourF > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( OfxYUVAColourF ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxYUVAColourF > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( OfxYUVAColourF ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxYUVAColourF > ( ) ) ) . y as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxYUVAColourF ) , "::" , stringify ! ( y ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxYUVAColourF > ( ) ) ) . u as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( OfxYUVAColourF ) , "::" , stringify ! ( u ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxYUVAColourF > ( ) ) ) . v as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxYUVAColourF ) , "::" , stringify ! ( v ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxYUVAColourF > ( ) ) ) . a as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( OfxYUVAColourF ) , "::" , stringify ! ( a ) ) ) ; } 
 /// @brief Defines an 8 bit per component RGBA pixel 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxRGBAColourB { pub r : :: std :: os :: raw :: c_uchar , pub g : :: std :: os :: raw :: c_uchar , pub b : :: std :: os :: raw :: c_uchar , pub a : :: std :: os :: raw :: c_uchar , } # [ test ] fn bindgen_test_layout_OfxRGBAColourB ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxRGBAColourB > ( ) , 4usize , concat ! ( "Size of: " , stringify ! ( OfxRGBAColourB ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxRGBAColourB > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( OfxRGBAColourB ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourB > ( ) ) ) . r as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourB ) , "::" , stringify ! ( r ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourB > ( ) ) ) . g as * const _ as usize } , 1usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourB ) , "::" , stringify ! ( g ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourB > ( ) ) ) . b as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourB ) , "::" , stringify ! ( b ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourB > ( ) ) ) . a as * const _ as usize } , 3usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourB ) , "::" , stringify ! ( a ) ) ) ; } 
 /// @brief Defines a 16 bit per component RGBA pixel 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxRGBAColourS { pub r : :: std :: os :: raw :: c_ushort , pub g : :: std :: os :: raw :: c_ushort , pub b : :: std :: os :: raw :: c_ushort , pub a : :: std :: os :: raw :: c_ushort , } # [ test ] fn bindgen_test_layout_OfxRGBAColourS ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxRGBAColourS > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( OfxRGBAColourS ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxRGBAColourS > ( ) , 2usize , concat ! ( "Alignment of " , stringify ! ( OfxRGBAColourS ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourS > ( ) ) ) . r as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourS ) , "::" , stringify ! ( r ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourS > ( ) ) ) . g as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourS ) , "::" , stringify ! ( g ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourS > ( ) ) ) . b as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourS ) , "::" , stringify ! ( b ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourS > ( ) ) ) . a as * const _ as usize } , 6usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourS ) , "::" , stringify ! ( a ) ) ) ; } 
 /// @brief Defines a floating point component RGBA pixel 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxRGBAColourF { pub r : f32 , pub g : f32 , pub b : f32 , pub a : f32 , } # [ test ] fn bindgen_test_layout_OfxRGBAColourF ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxRGBAColourF > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( OfxRGBAColourF ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxRGBAColourF > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( OfxRGBAColourF ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourF > ( ) ) ) . r as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourF ) , "::" , stringify ! ( r ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourF > ( ) ) ) . g as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourF ) , "::" , stringify ! ( g ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourF > ( ) ) ) . b as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourF ) , "::" , stringify ! ( b ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourF > ( ) ) ) . a as * const _ as usize } , 12usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourF ) , "::" , stringify ! ( a ) ) ) ; } 
 /// @brief Defines a double precision floating point component RGBA pixel 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxRGBAColourD { pub r : f64 , pub g : f64 , pub b : f64 , pub a : f64 , } # [ test ] fn bindgen_test_layout_OfxRGBAColourD ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxRGBAColourD > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( OfxRGBAColourD ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxRGBAColourD > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxRGBAColourD ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourD > ( ) ) ) . r as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourD ) , "::" , stringify ! ( r ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourD > ( ) ) ) . g as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourD ) , "::" , stringify ! ( g ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourD > ( ) ) ) . b as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourD ) , "::" , stringify ! ( b ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBAColourD > ( ) ) ) . a as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBAColourD ) , "::" , stringify ! ( a ) ) ) ; } 
 /// @brief Defines an 8 bit per component RGB pixel 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxRGBColourB { pub r : :: std :: os :: raw :: c_uchar , pub g : :: std :: os :: raw :: c_uchar , pub b : :: std :: os :: raw :: c_uchar , } # [ test ] fn bindgen_test_layout_OfxRGBColourB ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxRGBColourB > ( ) , 3usize , concat ! ( "Size of: " , stringify ! ( OfxRGBColourB ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxRGBColourB > ( ) , 1usize , concat ! ( "Alignment of " , stringify ! ( OfxRGBColourB ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBColourB > ( ) ) ) . r as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBColourB ) , "::" , stringify ! ( r ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBColourB > ( ) ) ) . g as * const _ as usize } , 1usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBColourB ) , "::" , stringify ! ( g ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBColourB > ( ) ) ) . b as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBColourB ) , "::" , stringify ! ( b ) ) ) ; } 
 /// @brief Defines a 16 bit per component RGB pixel 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxRGBColourS { pub r : :: std :: os :: raw :: c_ushort , pub g : :: std :: os :: raw :: c_ushort , pub b : :: std :: os :: raw :: c_ushort , } # [ test ] fn bindgen_test_layout_OfxRGBColourS ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxRGBColourS > ( ) , 6usize , concat ! ( "Size of: " , stringify ! ( OfxRGBColourS ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxRGBColourS > ( ) , 2usize , concat ! ( "Alignment of " , stringify ! ( OfxRGBColourS ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBColourS > ( ) ) ) . r as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBColourS ) , "::" , stringify ! ( r ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBColourS > ( ) ) ) . g as * const _ as usize } , 2usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBColourS ) , "::" , stringify ! ( g ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBColourS > ( ) ) ) . b as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBColourS ) , "::" , stringify ! ( b ) ) ) ; } 
 /// @brief Defines a floating point component RGB pixel 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxRGBColourF { pub r : f32 , pub g : f32 , pub b : f32 , } # [ test ] fn bindgen_test_layout_OfxRGBColourF ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxRGBColourF > ( ) , 12usize , concat ! ( "Size of: " , stringify ! ( OfxRGBColourF ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxRGBColourF > ( ) , 4usize , concat ! ( "Alignment of " , stringify ! ( OfxRGBColourF ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBColourF > ( ) ) ) . r as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBColourF ) , "::" , stringify ! ( r ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBColourF > ( ) ) ) . g as * const _ as usize } , 4usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBColourF ) , "::" , stringify ! ( g ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBColourF > ( ) ) ) . b as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBColourF ) , "::" , stringify ! ( b ) ) ) ; } 
 /// @brief Defines a double precision floating point component RGB pixel 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxRGBColourD { pub r : f64 , pub g : f64 , pub b : f64 , } # [ test ] fn bindgen_test_layout_OfxRGBColourD ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxRGBColourD > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( OfxRGBColourD ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxRGBColourD > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxRGBColourD ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBColourD > ( ) ) ) . r as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBColourD ) , "::" , stringify ! ( r ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBColourD > ( ) ) ) . g as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBColourD ) , "::" , stringify ! ( g ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxRGBColourD > ( ) ) ) . b as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxRGBColourD ) , "::" , stringify ! ( b ) ) ) ; } 
 /// @brief OFX suite that provides provides the ability to execute an action in the UI thread.
///
///@deprecated - deprecated in v1.5 in favor of OfxDialogSuiteV2 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxDialogSuiteV1 { 
 /// @brief Request the host to send a kOfxActionDialog to the plugin from its UI thread.
    ///\pre
    ///- user_data: A pointer to any user data
    ///\post
    ///@returns
    ///- ::kOfxStatOK - The host has queued the request and will send an 'OfxActionDialog'
    ///- ::kOfxStatFailed - The host has no provision for this or can not deal with it currently. 
 pub requestDialog : :: std :: option :: Option < unsafe extern "C" fn ( instanceData : * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , 
 /// @brief Inform the host of redraw event so it can redraw itself
    ///If the host runs fullscreen in OpenGL, it would otherwise not receive
    ///redraw event when a dialog in front would catch all events.
    ///\pre
    ///\post
    ///@returns
    ///- ::kOfxStatReplyDefault 
 pub notifyRedrawPending : :: std :: option :: Option < unsafe extern "C" fn ( ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxDialogSuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxDialogSuiteV1 > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( OfxDialogSuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxDialogSuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxDialogSuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxDialogSuiteV1 > ( ) ) ) . requestDialog as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxDialogSuiteV1 ) , "::" , stringify ! ( requestDialog ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxDialogSuiteV1 > ( ) ) ) . notifyRedrawPending as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxDialogSuiteV1 ) , "::" , stringify ! ( notifyRedrawPending ) ) ) ; } 
 /// @brief OFX suite that provides provides the ability to execute an action in the UI thread. 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxDialogSuiteV2 { 
 /// @brief Request the host to send a kOfxActionDialog action to the plugin from its UI thread.
    ///\pre
    ///- instance: Handle to the instance that requests the dialog, and will receive the kOfxActionDialog.
    ///- inArgs: The inArgs of the action that triggered the request.
    ///- instanceData: A pointer to any instance data, which will be passed back in kOfxActionDialog.
    ///May be used to hold dialog parameters.
    ///\post
    ///@returns
    ///- ::kOfxStatOK - The host has queued the request and will send an 'OfxActionDialog'
    ///- ::kOfxStatFailed - The host has no provision for this or can not deal with it currently. 
 pub requestDialog : :: std :: option :: Option < unsafe extern "C" fn ( instance : OfxImageEffectHandle , inArgs : OfxPropertySetHandle , instanceData : * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , 
 /// @brief Inform the host of redraw event so it can redraw itself
    ///If the host runs fullscreen in OpenGL, it would otherwise not receive
    ///redraw event when a dialog in front would catch all events.
    ///\pre
    ///- instance: Handle to the instance that informs the host.
    ///- inArgs: The inArgs of the action that triggered the notification.
    ///\post
    ///@returns
    ///- ::kOfxStatReplyDefault 
 pub notifyRedrawPending : :: std :: option :: Option < unsafe extern "C" fn ( instance : OfxImageEffectHandle , inArgs : OfxPropertySetHandle ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxDialogSuiteV2 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxDialogSuiteV2 > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( OfxDialogSuiteV2 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxDialogSuiteV2 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxDialogSuiteV2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxDialogSuiteV2 > ( ) ) ) . requestDialog as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxDialogSuiteV2 ) , "::" , stringify ! ( requestDialog ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxDialogSuiteV2 > ( ) ) ) . notifyRedrawPending as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxDialogSuiteV2 ) , "::" , stringify ! ( notifyRedrawPending ) ) ) ; } 
 /// @brief A suite that provides progress feedback from a plugin to an application
///
///A plugin instance can initiate, update and close a progress indicator with
///this suite.
///
///This is an optional suite in the Image Effect API.
///
///API V1.4: Amends the documentation of progress suite V1 so that it is
///expected that it can be raised in a modal manner and have a "cancel"
///button when invoked in instanceChanged. Plugins that perform analysis
///post an appropriate message, raise the progress monitor in a modal manner
///and should poll to see if processing has been aborted. Any cancellation
///should be handled gracefully by the plugin (eg: reset analysis parameters
///to default values), clear allocated memory...
///
///Many hosts already operate as described above. kOfxStatReplyNo should be
///returned to the plugin during progressUpdate when the user presses
///cancel.
///
///Suite V2: Adds an ID that can be looked up for internationalisation and
///so on. When a new version is introduced, because plug-ins need to support
///old versions, and plug-in's new releases are not necessary in synch with
///hosts (or users don't immediately update), best practice is to support
///the 2 suite versions. That is, the plugin should check if V2 exists; if
///not then check if V1 exists. This way a graceful transition is
///guaranteed.  So plugin should fetchSuite passing 2,
///(OfxProgressSuiteV2*) fetchSuite(mHost->mHost->host, kOfxProgressSuite,2);
///and if no success pass (OfxProgressSuiteV1*)
///fetchSuite(mHost->mHost->host, kOfxProgressSuite,1); 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxProgressSuiteV1 { 
 /// @brief Initiate a progress bar display.
    ///
    ///Call this to initiate the display of a progress bar.
    ///
    ///\arg \e effectInstance - the instance of the plugin this progress bar is
    ///associated with. It cannot be NULL.
    ///\arg \e label          - a text label to display in any message portion of the
    ///progress object's user interface. A UTF8 string.
    ///
    ///\pre                   - There is no currently ongoing progress display for this instance.
    ///
    ///\returns
    ///- ::kOfxStatOK - the handle is now valid for use
    ///- ::kOfxStatFailed - the progress object failed for some reason
    ///- ::kOfxStatErrBadHandle - effectInstance was invalid 
 pub progressStart : :: std :: option :: Option < unsafe extern "C" fn ( effectInstance : * mut :: std :: os :: raw :: c_void , label : * const :: std :: os :: raw :: c_char ) -> OfxStatus > , 
 /// @brief Indicate how much of the processing task has been completed and reports on any abort status.
    ///
    ///\arg \e effectInstance - the instance of the plugin this progress bar is
    ///associated with. It cannot be NULL.
    ///\arg \e progress - a number between 0.0 and 1.0 indicating what proportion of the current task has been processed.
    ///
    ///\returns
    ///- ::kOfxStatOK - the progress object was successfully updated and the task should continue
    ///- ::kOfxStatReplyNo - the progress object was successfully updated and the task should abort
    ///- ::kOfxStatErrBadHandle - the progress handle was invalid, 
 pub progressUpdate : :: std :: option :: Option < unsafe extern "C" fn ( effectInstance : * mut :: std :: os :: raw :: c_void , progress : f64 ) -> OfxStatus > , 
 /// @brief Signal that we are finished with the progress meter.
    ///
    ///Call this when you are done with the progress meter and no
    ///longer need it displayed.
    ///
    ///\arg \e effectInstance - the instance of the plugin this progress bar is
    ///associated with. It cannot be NULL.
    ///
    ///\post - you can no longer call progressUpdate on the instance
    ///
    ///\returns
    ///- ::kOfxStatOK - the progress object was successfully closed
    ///- ::kOfxStatErrBadHandle - the progress handle was invalid, 
 pub progressEnd : :: std :: option :: Option < unsafe extern "C" fn ( effectInstance : * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxProgressSuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxProgressSuiteV1 > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( OfxProgressSuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxProgressSuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxProgressSuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxProgressSuiteV1 > ( ) ) ) . progressStart as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxProgressSuiteV1 ) , "::" , stringify ! ( progressStart ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxProgressSuiteV1 > ( ) ) ) . progressUpdate as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxProgressSuiteV1 ) , "::" , stringify ! ( progressUpdate ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxProgressSuiteV1 > ( ) ) ) . progressEnd as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxProgressSuiteV1 ) , "::" , stringify ! ( progressEnd ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxProgressSuiteV2 { 
 /// @brief Initiate a progress bar display.
    ///
    ///Call this to initiate the display of a progress bar.
    ///
    ///\arg \e effectInstance - the instance of the plugin this progress bar is
    ///associated with. It cannot be NULL.
    ///\arg \e message        - a text label to display in any message portion of the
    ///progress object's user interface. A UTF8 string.
    ///\arg \e messageId      - plugin-specified id to associate with this message.
    ///If overriding the message in an XML resource, the message
    ///is identified with this, this may be NULL, or "", in
    ///which case no override will occur.
    ///New in V2 of this suite.
    ///
    ///\pre                   - There is no currently ongoing progress display for this instance.
    ///
    ///\returns
    ///- ::kOfxStatOK - the handle is now valid for use
    ///- ::kOfxStatFailed - the progress object failed for some reason
    ///- ::kOfxStatErrBadHandle - effectInstance was invalid 
 pub progressStart : :: std :: option :: Option < unsafe extern "C" fn ( effectInstance : * mut :: std :: os :: raw :: c_void , message : * const :: std :: os :: raw :: c_char , messageid : * const :: std :: os :: raw :: c_char ) -> OfxStatus > , 
 /// @brief Indicate how much of the processing task has been completed and reports on any abort status.
    ///
    ///\arg \e effectInstance - the instance of the plugin this progress bar is
    ///associated with. It cannot be NULL.
    ///\arg \e progress - a number between 0.0 and 1.0 indicating what proportion of the current task has been processed.
    ///
    ///\returns
    ///- ::kOfxStatOK - the progress object was successfully updated and the task should continue
    ///- ::kOfxStatReplyNo - the progress object was successfully updated and the task should abort
    ///- ::kOfxStatErrBadHandle - the progress handle was invalid, 
 pub progressUpdate : :: std :: option :: Option < unsafe extern "C" fn ( effectInstance : * mut :: std :: os :: raw :: c_void , progress : f64 ) -> OfxStatus > , 
 /// @brief Signal that we are finished with the progress meter.
    ///
    ///Call this when you are done with the progress meter and no
    ///longer need it displayed.
    ///
    ///\arg \e effectInstance - the instance of the plugin this progress bar is
    ///associated with. It cannot be NULL.
    ///
    ///\post - you can no longer call progressUpdate on the instance
    ///
    ///\returns
    ///- ::kOfxStatOK - the progress object was successfully closed
    ///- ::kOfxStatErrBadHandle - the progress handle was invalid, 
 pub progressEnd : :: std :: option :: Option < unsafe extern "C" fn ( effectInstance : * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxProgressSuiteV2 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxProgressSuiteV2 > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( OfxProgressSuiteV2 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxProgressSuiteV2 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxProgressSuiteV2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxProgressSuiteV2 > ( ) ) ) . progressStart as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxProgressSuiteV2 ) , "::" , stringify ! ( progressStart ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxProgressSuiteV2 > ( ) ) ) . progressUpdate as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxProgressSuiteV2 ) , "::" , stringify ! ( progressUpdate ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxProgressSuiteV2 > ( ) ) ) . progressEnd as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxProgressSuiteV2 ) , "::" , stringify ! ( progressEnd ) ) ) ; } 
 ///@brief Prototype of the distortion passed to the kOfxPropInverseDistortionFunction property. It takes in input the distorted position and should output the
///undistorted position, both in canonical coordinates. Optionnally the Jacobian may be output.
///@param customData These are custom datas that were returned by the plug-in in the kOfxImageEffectActionGetInverseDistortion action in kOfxPropInverseDistortionFunctionData
///@param wantsJacobian True if the caller would like the function to return a Jacobian, if possible. Note that the function may not return a Jacobian
///even if it was asked for, in which case the caller will have to compute it using for example finite differences.
///@param gotJaboian True if the jacobian was computed and set in output. If wantsJacobian is set to false, this parameter may be NULL.
///@param jacobian The 4 partial derivatives of the function: [dFx/dx, dFx/dy, dFy/dx, dFy/dy].
///If wantsJacobian is set to false, this parameter may be NULL. 
 pub type OfxInverseDistortionFunctionV1 = :: std :: option :: Option < unsafe extern "C" fn ( customData : * const :: std :: os :: raw :: c_void , distortedX : f64 , distortedY : f64 , wantsJacobian : bool , undistortedX : * mut f64 , undistortedY : * mut f64 , gotJabobian : * mut bool , jacobian : * mut f64 ) > ; pub type OfxInverseDistortionDataFreeFunctionV1 = :: std :: option :: Option < unsafe extern "C" fn ( customData : * mut :: std :: os :: raw :: c_void ) > ; 
 /// @brief OFX suite that provides image to texture conversion for OpenGL
///processing 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxImageEffectOpenGLRenderSuiteV1 { 
 /// @brief loads an image from an OFX clip as a texture into OpenGL
    ///
    ///\arg clip   - the clip to load the image from
    ///\arg time   - effect time to load the image from
    ///\arg format - the requested texture format (As in
    ///none,byte,word,half,float, etc..)
    ///When set to NULL, the host decides the format based on the
    ///plug-in's ::kOfxOpenGLPropPixelDepth setting.
    ///\arg region - region of the image to load (optional, set to NULL to
    ///get a 'default' region)
    ///this is in the \ref CanonicalCoordinates.
    ///\arg textureHandle - a property set containing information about the
    ///texture
    ///
    ///An image is fetched from a clip at the indicated time for the given region
    ///and loaded into an OpenGL texture. When a specific format is requested, the
    ///host ensures it gives the requested format.
    ///When the clip specified is the "Output" clip, the format is ignored and
    ///the host must bind the resulting texture as the current color buffer
    ///(render target). This may also be done prior to calling the
    ///::kOfxImageEffectActionRender action.
    ///If the \em region parameter is set to non-NULL, then it will be clipped to
    ///the clip's Region of Definition for the given time.
    ///The returned image will be \em at \em least as big as this region.
    ///If the region parameter is not set or is NULL, then the region fetched will be at
    ///least the Region of Interest the effect has previously specified, clipped to
    ///the clip's Region of Definition.
    ///Information about the texture, including the texture index, is returned in
    ///the \em textureHandle argument.
    ///The properties on this handle will be...
    ///- ::kOfxImageEffectPropOpenGLTextureIndex
    ///- ::kOfxImageEffectPropOpenGLTextureTarget
    ///- ::kOfxImageEffectPropPixelDepth
    ///- ::kOfxImageEffectPropComponents
    ///- ::kOfxImageEffectPropPreMultiplication
    ///- ::kOfxImageEffectPropRenderScale
    ///- ::kOfxImagePropPixelAspectRatio
    ///- ::kOfxImagePropBounds
    ///- ::kOfxImagePropRegionOfDefinition
    ///- ::kOfxImagePropRowBytes
    ///- ::kOfxImagePropField
    ///- ::kOfxImagePropUniqueIdentifier
    ///
    ///With the exception of the OpenGL specifics, these properties are the same
    ///as the properties in an image handle returned by clipGetImage in the image
    ///effect suite.
    ///\pre
    ///- clip was returned by clipGetHandle
    ///- Format property in the texture handle
    ///
    ///\post
    ///- texture handle to be disposed of by clipFreeTexture before the action
    ///returns
    ///- when the clip specified is the "Output" clip, the format is ignored and
    ///the host must bind the resulting texture as the current color buffer
    ///(render target).
    ///This may also be done prior to calling the render action.
    ///
    ///@returns
    ///- ::kOfxStatOK           - the image was successfully fetched and returned
    ///in the handle,
    ///- ::kOfxStatFailed       - the image could not be fetched because it does
    ///not exist in the clip at the indicated
    ///time and/or region, the plugin should continue
    ///operation, but assume the image was black and
    ///transparent.
    ///- ::kOfxStatErrBadHandle - the clip handle was invalid,
    ///- ::kOfxStatErrMemory    - not enough OpenGL memory was available for the
    ///effect to load the texture.
    ///The plugin should abort the GL render and
    ///return ::kOfxStatErrMemory, after which the host can
    ///decide to retry the operation with CPU based processing.
    ///
    ///\note
    ///- this is the OpenGL equivalent of clipGetImage from OfxImageEffectSuiteV1
    /// 
 pub clipLoadTexture : :: std :: option :: Option < unsafe extern "C" fn ( clip : OfxImageClipHandle , time : OfxTime , format : * const :: std :: os :: raw :: c_char , region : * const OfxRectD , textureHandle : * mut OfxPropertySetHandle ) -> OfxStatus > , 
 /// @brief Releases the texture handle previously returned by
    ///clipLoadTexture
    ///
    ///For input clips, this also deletes the texture from OpenGL.
    ///This should also be called on the output clip; for the Output
    ///clip, it just releases the handle but does not delete the
    ///texture (since the host will need to read it).
    ///
    ///\pre
    ///- textureHandle was returned by clipGetImage
    ///
    ///\post
    ///- all operations on textureHandle will be invalid, and the OpenGL texture
    ///it referred to has been deleted (for source clips)
    ///
    ///@returns
    ///- ::kOfxStatOK - the image was successfully fetched and returned in the
    ///handle,
    ///- ::kOfxStatFailed - general failure for some reason,
    ///- ::kOfxStatErrBadHandle - the image handle was invalid, 
 pub clipFreeTexture : :: std :: option :: Option < unsafe extern "C" fn ( textureHandle : OfxPropertySetHandle ) -> OfxStatus > , 
 /// @brief Request the host to minimize its GPU resource load
    ///
    ///When a plugin fails to allocate GPU resources, it can call this function to
    ///request the host to flush it's GPU resources if it holds any.
    ///After the function the plugin can try again to allocate resources which then
    ///might succeed if the host actually has released anything.
    ///
    ///\pre
    ///\post
    ///- No changes to the plugin GL state should have been made.
    ///
    ///@returns
    ///- ::kOfxStatOK           - the host has actually released some
    ///resources,
    ///- ::kOfxStatReplyDefault - nothing the host could do.. 
 pub flushResources : :: std :: option :: Option < unsafe extern "C" fn ( ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxImageEffectOpenGLRenderSuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxImageEffectOpenGLRenderSuiteV1 > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( OfxImageEffectOpenGLRenderSuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxImageEffectOpenGLRenderSuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxImageEffectOpenGLRenderSuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectOpenGLRenderSuiteV1 > ( ) ) ) . clipLoadTexture as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectOpenGLRenderSuiteV1 ) , "::" , stringify ! ( clipLoadTexture ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectOpenGLRenderSuiteV1 > ( ) ) ) . clipFreeTexture as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectOpenGLRenderSuiteV1 ) , "::" , stringify ! ( clipFreeTexture ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxImageEffectOpenGLRenderSuiteV1 > ( ) ) ) . flushResources as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxImageEffectOpenGLRenderSuiteV1 ) , "::" , stringify ! ( flushResources ) ) ) ; } 
 /// @brief The OFX suite used to define and manipulate 'parametric' parameters.
///
///This is an optional suite.
///
///Parametric parameters are in effect 'functions' a plug-in can ask a host to arbitrarily
///evaluate for some value 'x'. A classic use case would be for constructing look-up tables,
///a plug-in would ask the host to evaluate one at multiple values from 0 to 1 and use that
///to fill an array.
///
///A host would probably represent this to a user as a cubic curve in a standard curve editor
///interface, or possibly through scripting. The user would then use this to define the 'shape'
///of the parameter.
///
///The evaluation of such params is not the same as animation, they are returning values based
///on some arbitrary argument orthogonal to time, so to evaluate such a param, you need to pass
///a parametric position and time.
///
///Often, you would want such a parametric parameter to be multi-dimensional, for example, a
///colour look-up table might want three values, one for red, green and blue. Rather than
///declare three separate parametric parameters, it would be better to have one such parameter
///with multiple values in it.
///
///The major complication with these parameters is how to allow a plug-in to set values, and
///defaults. The default default value of a parametric curve is to be an identity lookup. If
///a plugin wishes to set a different default value for a curve, it can use the suite to set
///key/value pairs on the \em descriptor of the param. When a new instance is made, it will
///have these curve values as a default. 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxParametricParameterSuiteV1 { 
 /// @brief Evaluates a parametric parameter
    ///
    ///\arg param                 handle to the parametric parameter
    ///\arg curveIndex            which dimension to evaluate
    ///\arg time                  the time to evaluate to the parametric param at
    ///\arg parametricPosition    the position to evaluate the parametric param at
    ///\arg returnValue           pointer to a double where a value is returned
    ///
    ///@returns
    ///- ::kOfxStatOK            - all was fine
    ///- ::kOfxStatErrBadHandle  - if the paramter handle was invalid
    ///- ::kOfxStatErrBadIndex   - the curve index was invalid 
 pub parametricParamGetValue : :: std :: option :: Option < unsafe extern "C" fn ( param : OfxParamHandle , curveIndex : :: std :: os :: raw :: c_int , time : OfxTime , parametricPosition : f64 , returnValue : * mut f64 ) -> OfxStatus > , 
 /// @brief Returns the number of control points in the parametric param.
    ///
    ///\arg param                 handle to the parametric parameter
    ///\arg curveIndex            which dimension to check
    ///\arg time                  the time to check
    ///\arg returnValue           pointer to an integer where the value is returned.
    ///
    ///@returns
    ///- ::kOfxStatOK            - all was fine
    ///- ::kOfxStatErrBadHandle  - if the paramter handle was invalid
    ///- ::kOfxStatErrBadIndex   - the curve index was invalid 
 pub parametricParamGetNControlPoints : :: std :: option :: Option < unsafe extern "C" fn ( param : OfxParamHandle , curveIndex : :: std :: os :: raw :: c_int , time : f64 , returnValue : * mut :: std :: os :: raw :: c_int ) -> OfxStatus > , 
 /// @brief Returns the key/value pair of the nth control point.
    ///
    ///\arg param                 handle to the parametric parameter
    ///\arg curveIndex            which dimension to check
    ///\arg time                  the time to check
    ///\arg nthCtl                the nth control point to get the value of
    ///\arg key                   pointer to a double where the key will be returned
    ///\arg value                 pointer to a double where the value will be returned
    ///
    ///@returns
    ///- ::kOfxStatOK            - all was fine
    ///- ::kOfxStatErrBadHandle  - if the paramter handle was invalid
    ///- ::kOfxStatErrUnknown    - if the type is unknown 
 pub parametricParamGetNthControlPoint : :: std :: option :: Option < unsafe extern "C" fn ( param : OfxParamHandle , curveIndex : :: std :: os :: raw :: c_int , time : f64 , nthCtl : :: std :: os :: raw :: c_int , key : * mut f64 , value : * mut f64 ) -> OfxStatus > , 
 /// @brief Modifies an existing control point on a curve
    ///
    ///\arg param                 handle to the parametric parameter
    ///\arg curveIndex            which dimension to set
    ///\arg time                  the time to set the value at
    ///\arg nthCtl                the control point to modify
    ///\arg key                   key of the control point
    ///\arg value                 value of the control point
    ///\arg addAnimationKey       if the param is an animatable, setting this to true will
    ///force an animation keyframe to be set as well as a curve key,
    ///otherwise if false, a key will only be added if the curve is already
    ///animating.
    ///
    ///@returns
    ///- ::kOfxStatOK            - all was fine
    ///- ::kOfxStatErrBadHandle  - if the paramter handle was invalid
    ///- ::kOfxStatErrUnknown    - if the type is unknown
    ///
    ///This modifies an existing control point. Note that by changing key, the order of the
    ///control point may be modified (as you may move it before or after anther point). So be
    ///careful when iterating over a curves control points and you change a key. 
 pub parametricParamSetNthControlPoint : :: std :: option :: Option < unsafe extern "C" fn ( param : OfxParamHandle , curveIndex : :: std :: os :: raw :: c_int , time : f64 , nthCtl : :: std :: os :: raw :: c_int , key : f64 , value : f64 , addAnimationKey : bool ) -> OfxStatus > , 
 /// @brief Adds a control point to the curve.
    ///
    ///\arg param                 handle to the parametric parameter
    ///\arg curveIndex            which dimension to set
    ///\arg time                  the time to set the value at
    ///\arg key                   key of the control point
    ///\arg value                 value of the control point
    ///\arg addAnimationKey       if the param is an animatable, setting this to true will
    ///force an animation keyframe to be set as well as a curve key,
    ///otherwise if false, a key will only be added if the curve is already
    ///animating.
    ///
    ///@returns
    ///- ::kOfxStatOK            - all was fine
    ///- ::kOfxStatErrBadHandle  - if the paramter handle was invalid
    ///- ::kOfxStatErrUnknown    - if the type is unknown
    ///
    ///This will add a new control point to the given dimension of a parametric parameter. If a key exists
    ///sufficiently close to 'key', then it will be set to the indicated control point. 
 pub parametricParamAddControlPoint : :: std :: option :: Option < unsafe extern "C" fn ( param : OfxParamHandle , curveIndex : :: std :: os :: raw :: c_int , time : f64 , key : f64 , value : f64 , addAnimationKey : bool ) -> OfxStatus > , 
 /// @brief Deletes the nth control point from a parametric param.
    ///
    ///\arg param                 handle to the parametric parameter
    ///\arg curveIndex            which dimension to delete
    ///\arg nthCtl                the control point to delete 
 pub parametricParamDeleteControlPoint : :: std :: option :: Option < unsafe extern "C" fn ( param : OfxParamHandle , curveIndex : :: std :: os :: raw :: c_int , nthCtl : :: std :: os :: raw :: c_int ) -> OfxStatus > , 
 /// @brief Delete all curve control points on the given param.
    ///
    ///\arg param                 handle to the parametric parameter
    ///\arg curveIndex            which dimension to clear 
 pub parametricParamDeleteAllControlPoints : :: std :: option :: Option < unsafe extern "C" fn ( param : OfxParamHandle , curveIndex : :: std :: os :: raw :: c_int ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxParametricParameterSuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxParametricParameterSuiteV1 > ( ) , 56usize , concat ! ( "Size of: " , stringify ! ( OfxParametricParameterSuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxParametricParameterSuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxParametricParameterSuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParametricParameterSuiteV1 > ( ) ) ) . parametricParamGetValue as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxParametricParameterSuiteV1 ) , "::" , stringify ! ( parametricParamGetValue ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParametricParameterSuiteV1 > ( ) ) ) . parametricParamGetNControlPoints as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxParametricParameterSuiteV1 ) , "::" , stringify ! ( parametricParamGetNControlPoints ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParametricParameterSuiteV1 > ( ) ) ) . parametricParamGetNthControlPoint as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxParametricParameterSuiteV1 ) , "::" , stringify ! ( parametricParamGetNthControlPoint ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParametricParameterSuiteV1 > ( ) ) ) . parametricParamSetNthControlPoint as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( OfxParametricParameterSuiteV1 ) , "::" , stringify ! ( parametricParamSetNthControlPoint ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParametricParameterSuiteV1 > ( ) ) ) . parametricParamAddControlPoint as * const _ as usize } , 32usize , concat ! ( "Offset of field: " , stringify ! ( OfxParametricParameterSuiteV1 ) , "::" , stringify ! ( parametricParamAddControlPoint ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParametricParameterSuiteV1 > ( ) ) ) . parametricParamDeleteControlPoint as * const _ as usize } , 40usize , concat ! ( "Offset of field: " , stringify ! ( OfxParametricParameterSuiteV1 ) , "::" , stringify ! ( parametricParamDeleteControlPoint ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxParametricParameterSuiteV1 > ( ) ) ) . parametricParamDeleteAllControlPoints as * const _ as usize } , 48usize , concat ! ( "Offset of field: " , stringify ! ( OfxParametricParameterSuiteV1 ) , "::" , stringify ! ( parametricParamDeleteAllControlPoints ) ) ) ; } 
 /// @brief OFX suite that allows an effect to interact with an openGL window so as to provide custom interfaces. 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxHWNDInteractSuiteV1 { 
 /// @brief Gets the property set handle for this interact handle 
 pub interactGetPropertySet : :: std :: option :: Option < unsafe extern "C" fn ( interactInstance : OfxInteractHandle , property : * mut OfxPropertySetHandle ) -> OfxStatus > , pub interactUpdate : :: std :: option :: Option < unsafe extern "C" fn ( interactInstance : OfxInteractHandle ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxHWNDInteractSuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxHWNDInteractSuiteV1 > ( ) , 16usize , concat ! ( "Size of: " , stringify ! ( OfxHWNDInteractSuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxHWNDInteractSuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxHWNDInteractSuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxHWNDInteractSuiteV1 > ( ) ) ) . interactGetPropertySet as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxHWNDInteractSuiteV1 ) , "::" , stringify ! ( interactGetPropertySet ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxHWNDInteractSuiteV1 > ( ) ) ) . interactUpdate as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxHWNDInteractSuiteV1 ) , "::" , stringify ! ( interactUpdate ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxVegasProgressSuiteV1 { pub progressStart : :: std :: option :: Option < unsafe extern "C" fn ( effectInstance : * mut :: std :: os :: raw :: c_void , message : * const :: std :: os :: raw :: c_char , messageid : * const :: std :: os :: raw :: c_char ) -> OfxStatus > , pub progressUpdate : :: std :: option :: Option < unsafe extern "C" fn ( effectInstance : * mut :: std :: os :: raw :: c_void , progress : f64 ) -> OfxStatus > , pub progressEnd : :: std :: option :: Option < unsafe extern "C" fn ( effectInstance : * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxVegasProgressSuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxVegasProgressSuiteV1 > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( OfxVegasProgressSuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxVegasProgressSuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxVegasProgressSuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxVegasProgressSuiteV1 > ( ) ) ) . progressStart as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxVegasProgressSuiteV1 ) , "::" , stringify ! ( progressStart ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxVegasProgressSuiteV1 > ( ) ) ) . progressUpdate as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxVegasProgressSuiteV1 ) , "::" , stringify ! ( progressUpdate ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxVegasProgressSuiteV1 > ( ) ) ) . progressEnd as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxVegasProgressSuiteV1 ) , "::" , stringify ! ( progressEnd ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxVegasProgressSuiteV2 { pub progressStart : :: std :: option :: Option < unsafe extern "C" fn ( effectInstance : * mut :: std :: os :: raw :: c_void , message : * const :: std :: os :: raw :: c_char , messageid : * const :: std :: os :: raw :: c_char , showTimeWindows : :: std :: os :: raw :: c_int ) -> OfxStatus > , pub progressUpdate : :: std :: option :: Option < unsafe extern "C" fn ( effectInstance : * mut :: std :: os :: raw :: c_void , progress : f64 ) -> OfxStatus > , pub progressEnd : :: std :: option :: Option < unsafe extern "C" fn ( effectInstance : * mut :: std :: os :: raw :: c_void ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxVegasProgressSuiteV2 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxVegasProgressSuiteV2 > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( OfxVegasProgressSuiteV2 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxVegasProgressSuiteV2 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxVegasProgressSuiteV2 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxVegasProgressSuiteV2 > ( ) ) ) . progressStart as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxVegasProgressSuiteV2 ) , "::" , stringify ! ( progressStart ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxVegasProgressSuiteV2 > ( ) ) ) . progressUpdate as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxVegasProgressSuiteV2 ) , "::" , stringify ! ( progressUpdate ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxVegasProgressSuiteV2 > ( ) ) ) . progressEnd as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxVegasProgressSuiteV2 ) , "::" , stringify ! ( progressEnd ) ) ) ; } # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxVegasStereoscopicImageEffectSuiteV1 { pub clipGetStereoscopicImage : :: std :: option :: Option < unsafe extern "C" fn ( clip : OfxImageClipHandle , time : OfxTime , iview : :: std :: os :: raw :: c_int , region : * mut OfxRectD , imageHandle : * mut OfxPropertySetHandle ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxVegasStereoscopicImageEffectSuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxVegasStereoscopicImageEffectSuiteV1 > ( ) , 8usize , concat ! ( "Size of: " , stringify ! ( OfxVegasStereoscopicImageEffectSuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxVegasStereoscopicImageEffectSuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxVegasStereoscopicImageEffectSuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxVegasStereoscopicImageEffectSuiteV1 > ( ) ) ) . clipGetStereoscopicImage as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxVegasStereoscopicImageEffectSuiteV1 ) , "::" , stringify ! ( clipGetStereoscopicImage ) ) ) ; } pub type OfxVegasStereoscopicImageSuiteV1 = OfxVegasStereoscopicImageEffectSuiteV1 ; # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxVegasKeyframeSuiteV1 { pub paramGetKeyInterpolation : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle , time : OfxTime , interpolationType : * mut * mut :: std :: os :: raw :: c_char ) -> OfxStatus > , pub paramGetKeySlopes : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle , time : OfxTime , ... ) -> OfxStatus > , pub paramSetKeyInterpolation : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle , time : OfxTime , interpolationType : * const :: std :: os :: raw :: c_char ) -> OfxStatus > , pub paramSetKeySlopes : :: std :: option :: Option < unsafe extern "C" fn ( paramHandle : OfxParamHandle , time : OfxTime , ... ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxVegasKeyframeSuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxVegasKeyframeSuiteV1 > ( ) , 32usize , concat ! ( "Size of: " , stringify ! ( OfxVegasKeyframeSuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxVegasKeyframeSuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxVegasKeyframeSuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxVegasKeyframeSuiteV1 > ( ) ) ) . paramGetKeyInterpolation as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxVegasKeyframeSuiteV1 ) , "::" , stringify ! ( paramGetKeyInterpolation ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxVegasKeyframeSuiteV1 > ( ) ) ) . paramGetKeySlopes as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxVegasKeyframeSuiteV1 ) , "::" , stringify ! ( paramGetKeySlopes ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxVegasKeyframeSuiteV1 > ( ) ) ) . paramSetKeyInterpolation as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxVegasKeyframeSuiteV1 ) , "::" , stringify ! ( paramSetKeyInterpolation ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxVegasKeyframeSuiteV1 > ( ) ) ) . paramSetKeySlopes as * const _ as usize } , 24usize , concat ! ( "Offset of field: " , stringify ! ( OfxVegasKeyframeSuiteV1 ) , "::" , stringify ! ( paramSetKeySlopes ) ) ) ; } 
 /// @brief Suite to control timelines
///
///This suite is used to enquire and control a timeline associated with a plug-in
///instance.
///
///This is an optional suite in the Image Effect API. 
 # [ repr ( C ) ] # [ derive ( Debug , Copy , Clone ) ] pub struct OfxTimeLineSuiteV1 { 
 /// @brief Get the time value of the timeline that is controlling to the indicated effect.
    ///
    ///\arg instance - is the instance of the effect changing the timeline, cast to a void *
    ///\arg time - a pointer through which the timeline value should be returned
    ///
    ///This function returns the current time value of the timeline associated with the effect instance.
    ///
    ///@returns
    ///- ::kOfxStatOK - the time enquiry was sucessful
    ///- ::kOfxStatFailed - the enquiry failed for some host specific reason
    ///- ::kOfxStatErrBadHandle - the effect handle was invalid 
 pub getTime : :: std :: option :: Option < unsafe extern "C" fn ( instance : * mut :: std :: os :: raw :: c_void , time : * mut f64 ) -> OfxStatus > , 
 /// @brief Move the timeline control to the indicated time.
    ///
    ///\arg instance - is the instance of the effect changing the timeline, cast to a void *
    ///\arg time - is the time to change the timeline to. This is in the temporal coordinate system of the effect.
    ///
    ///This function moves the timeline to the indicated frame and returns. Any side effects of the timeline
    ///change are also triggered and completed before this returns (for example instance changed actions and renders
    ///if the output of the effect is being viewed).
    ///
    ///@returns
    ///- ::kOfxStatOK - the time was changed sucessfully, will all side effects if the change completed
    ///- ::kOfxStatFailed - the change failed for some host specific reason
    ///- ::kOfxStatErrBadHandle - the effect handle was invalid
    ///- ::kOfxStatErrValue - the time was an illegal value 
 pub gotoTime : :: std :: option :: Option < unsafe extern "C" fn ( instance : * mut :: std :: os :: raw :: c_void , time : f64 ) -> OfxStatus > , 
 /// @brief Get the current bounds on a timeline
    ///
    ///\arg instance - is the instance of the effect changing the timeline, cast to a void *
    ///\arg firstTime - is the first time on the timeline. This is in the temporal coordinate system of the effect.
    ///\arg lastTime - is last time on the timeline. This is in the temporal coordinate system of the effect.
    ///
    ///This function
    ///
    ///@returns
    ///- ::kOfxStatOK - the time enquiry was sucessful
    ///- ::kOfxStatFailed - the enquiry failed for some host specific reason
    ///- ::kOfxStatErrBadHandle - the effect handle was invalid 
 pub getTimeBounds : :: std :: option :: Option < unsafe extern "C" fn ( instance : * mut :: std :: os :: raw :: c_void , firstTime : * mut f64 , lastTime : * mut f64 ) -> OfxStatus > , } # [ test ] fn bindgen_test_layout_OfxTimeLineSuiteV1 ( ) { assert_eq ! ( :: std :: mem :: size_of :: < OfxTimeLineSuiteV1 > ( ) , 24usize , concat ! ( "Size of: " , stringify ! ( OfxTimeLineSuiteV1 ) ) ) ; assert_eq ! ( :: std :: mem :: align_of :: < OfxTimeLineSuiteV1 > ( ) , 8usize , concat ! ( "Alignment of " , stringify ! ( OfxTimeLineSuiteV1 ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxTimeLineSuiteV1 > ( ) ) ) . getTime as * const _ as usize } , 0usize , concat ! ( "Offset of field: " , stringify ! ( OfxTimeLineSuiteV1 ) , "::" , stringify ! ( getTime ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxTimeLineSuiteV1 > ( ) ) ) . gotoTime as * const _ as usize } , 8usize , concat ! ( "Offset of field: " , stringify ! ( OfxTimeLineSuiteV1 ) , "::" , stringify ! ( gotoTime ) ) ) ; assert_eq ! ( unsafe { & ( * ( :: std :: ptr :: null :: < OfxTimeLineSuiteV1 > ( ) ) ) . getTimeBounds as * const _ as usize } , 16usize , concat ! ( "Offset of field: " , stringify ! ( OfxTimeLineSuiteV1 ) , "::" , stringify ! ( getTimeBounds ) ) ) ; } pub const eOfxStatus_Unused : eOfxStatus = -1 ; pub const eOfxStatus_OK : eOfxStatus = 0 ; pub const eOfxStatus_ReplyDefault : eOfxStatus = 14 ; pub const eOfxStatus_Failed : eOfxStatus = 1 ; pub const eOfxStatus_ErrFatal : eOfxStatus = 2 ; pub const eOfxStatus_ErrBadHandle : eOfxStatus = 9 ; pub const eOfxStatus_ErrBadIndex : eOfxStatus = 10 ; pub const eOfxStatus_ErrValue : eOfxStatus = 11 ; pub const eOfxStatus_ErrUnknown : eOfxStatus = 3 ; pub const eOfxStatus_ErrMemory : eOfxStatus = 8 ; pub const eOfxStatus_ErrUnsupported : eOfxStatus = 5 ; pub const eOfxStatus_ErrMissingHostFeature : eOfxStatus = 4 ; pub type eOfxStatus = i32 ;