1 #![allow(non_snake_case, non_camel_case_types, non_upper_case_globals, clashing_extern_declarations, clippy::all)] 2 #[link(name = "windows")] 3 extern "system" { 4 #[cfg(feature = "Win32_Foundation")] D3DPERF_BeginEvent(col: u32, wszname: super::super::Foundation::PWSTR) -> i325 pub fn D3DPERF_BeginEvent(col: u32, wszname: super::super::Foundation::PWSTR) -> i32; D3DPERF_EndEvent() -> i326 pub fn D3DPERF_EndEvent() -> i32; D3DPERF_GetStatus() -> u327 pub fn D3DPERF_GetStatus() -> u32; 8 #[cfg(feature = "Win32_Foundation")] D3DPERF_QueryRepeatFrame() -> super::super::Foundation::BOOL9 pub fn D3DPERF_QueryRepeatFrame() -> super::super::Foundation::BOOL; 10 #[cfg(feature = "Win32_Foundation")] D3DPERF_SetMarker(col: u32, wszname: super::super::Foundation::PWSTR)11 pub fn D3DPERF_SetMarker(col: u32, wszname: super::super::Foundation::PWSTR); D3DPERF_SetOptions(dwoptions: u32)12 pub fn D3DPERF_SetOptions(dwoptions: u32); 13 #[cfg(feature = "Win32_Foundation")] D3DPERF_SetRegion(col: u32, wszname: super::super::Foundation::PWSTR)14 pub fn D3DPERF_SetRegion(col: u32, wszname: super::super::Foundation::PWSTR); Direct3DCreate9(sdkversion: u32) -> IDirect3D915 pub fn Direct3DCreate9(sdkversion: u32) -> IDirect3D9; Direct3DCreate9Ex(sdkversion: u32, param1: *mut IDirect3D9Ex) -> ::windows_sys::core::HRESULT16 pub fn Direct3DCreate9Ex(sdkversion: u32, param1: *mut IDirect3D9Ex) -> ::windows_sys::core::HRESULT; 17 } 18 pub const D3D9_RESOURCE_PRIORITY_HIGH: u32 = 2684354560u32; 19 pub const D3D9_RESOURCE_PRIORITY_LOW: u32 = 1342177280u32; 20 pub const D3D9_RESOURCE_PRIORITY_MAXIMUM: u32 = 3355443200u32; 21 pub const D3D9_RESOURCE_PRIORITY_MINIMUM: u32 = 671088640u32; 22 pub const D3D9_RESOURCE_PRIORITY_NORMAL: u32 = 2013265920u32; 23 pub const D3D9b_SDK_VERSION: u32 = 31u32; 24 pub const D3DADAPTER_DEFAULT: u32 = 0u32; 25 #[repr(C)] 26 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 27 #[cfg(feature = "Win32_Foundation")] 28 pub struct D3DADAPTER_IDENTIFIER9 { 29 pub Driver: [super::super::Foundation::CHAR; 512], 30 pub Description: [super::super::Foundation::CHAR; 512], 31 pub DeviceName: [super::super::Foundation::CHAR; 32], 32 pub DriverVersion: i64, 33 pub VendorId: u32, 34 pub DeviceId: u32, 35 pub SubSysId: u32, 36 pub Revision: u32, 37 pub DeviceIdentifier: ::windows_sys::core::GUID, 38 pub WHQLLevel: u32, 39 } 40 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 41 #[cfg(feature = "Win32_Foundation")] 42 impl ::core::marker::Copy for D3DADAPTER_IDENTIFIER9 {} 43 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 44 #[cfg(feature = "Win32_Foundation")] 45 impl ::core::clone::Clone for D3DADAPTER_IDENTIFIER9 { clone(&self) -> Self46 fn clone(&self) -> Self { 47 *self 48 } 49 } 50 #[repr(C, packed(4))] 51 #[cfg(any(target_arch = "x86",))] 52 #[cfg(feature = "Win32_Foundation")] 53 pub struct D3DADAPTER_IDENTIFIER9 { 54 pub Driver: [super::super::Foundation::CHAR; 512], 55 pub Description: [super::super::Foundation::CHAR; 512], 56 pub DeviceName: [super::super::Foundation::CHAR; 32], 57 pub DriverVersion: i64, 58 pub VendorId: u32, 59 pub DeviceId: u32, 60 pub SubSysId: u32, 61 pub Revision: u32, 62 pub DeviceIdentifier: ::windows_sys::core::GUID, 63 pub WHQLLevel: u32, 64 } 65 #[cfg(any(target_arch = "x86",))] 66 #[cfg(feature = "Win32_Foundation")] 67 impl ::core::marker::Copy for D3DADAPTER_IDENTIFIER9 {} 68 #[cfg(any(target_arch = "x86",))] 69 #[cfg(feature = "Win32_Foundation")] 70 impl ::core::clone::Clone for D3DADAPTER_IDENTIFIER9 { clone(&self) -> Self71 fn clone(&self) -> Self { 72 *self 73 } 74 } 75 #[repr(C)] 76 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 77 pub struct D3DAES_CTR_IV { 78 pub IV: u64, 79 pub Count: u64, 80 } 81 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 82 impl ::core::marker::Copy for D3DAES_CTR_IV {} 83 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 84 impl ::core::clone::Clone for D3DAES_CTR_IV { clone(&self) -> Self85 fn clone(&self) -> Self { 86 *self 87 } 88 } 89 #[repr(C, packed(4))] 90 #[cfg(any(target_arch = "x86",))] 91 pub struct D3DAES_CTR_IV { 92 pub IV: u64, 93 pub Count: u64, 94 } 95 #[cfg(any(target_arch = "x86",))] 96 impl ::core::marker::Copy for D3DAES_CTR_IV {} 97 #[cfg(any(target_arch = "x86",))] 98 impl ::core::clone::Clone for D3DAES_CTR_IV { clone(&self) -> Self99 fn clone(&self) -> Self { 100 *self 101 } 102 } 103 pub type D3DAUTHENTICATEDCHANNELTYPE = i32; 104 pub const D3DAUTHENTICATEDCHANNEL_D3D9: D3DAUTHENTICATEDCHANNELTYPE = 1i32; 105 pub const D3DAUTHENTICATEDCHANNEL_DRIVER_SOFTWARE: D3DAUTHENTICATEDCHANNELTYPE = 2i32; 106 pub const D3DAUTHENTICATEDCHANNEL_DRIVER_HARDWARE: D3DAUTHENTICATEDCHANNELTYPE = 3i32; 107 #[repr(C)] 108 #[cfg(feature = "Win32_Foundation")] 109 pub struct D3DAUTHENTICATEDCHANNEL_CONFIGURECRYPTOSESSION { 110 pub Parameters: D3DAUTHENTICATEDCHANNEL_CONFIGURE_INPUT, 111 pub DXVA2DecodeHandle: super::super::Foundation::HANDLE, 112 pub CryptoSessionHandle: super::super::Foundation::HANDLE, 113 pub DeviceHandle: super::super::Foundation::HANDLE, 114 } 115 #[cfg(feature = "Win32_Foundation")] 116 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_CONFIGURECRYPTOSESSION {} 117 #[cfg(feature = "Win32_Foundation")] 118 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_CONFIGURECRYPTOSESSION { clone(&self) -> Self119 fn clone(&self) -> Self { 120 *self 121 } 122 } 123 #[repr(C)] 124 #[cfg(feature = "Win32_Foundation")] 125 pub struct D3DAUTHENTICATEDCHANNEL_CONFIGUREINITIALIZE { 126 pub Parameters: D3DAUTHENTICATEDCHANNEL_CONFIGURE_INPUT, 127 pub StartSequenceQuery: u32, 128 pub StartSequenceConfigure: u32, 129 } 130 #[cfg(feature = "Win32_Foundation")] 131 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_CONFIGUREINITIALIZE {} 132 #[cfg(feature = "Win32_Foundation")] 133 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_CONFIGUREINITIALIZE { clone(&self) -> Self134 fn clone(&self) -> Self { 135 *self 136 } 137 } 138 #[repr(C)] 139 #[cfg(feature = "Win32_Foundation")] 140 pub struct D3DAUTHENTICATEDCHANNEL_CONFIGUREPROTECTION { 141 pub Parameters: D3DAUTHENTICATEDCHANNEL_CONFIGURE_INPUT, 142 pub Protections: D3DAUTHENTICATEDCHANNEL_PROTECTION_FLAGS, 143 } 144 #[cfg(feature = "Win32_Foundation")] 145 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_CONFIGUREPROTECTION {} 146 #[cfg(feature = "Win32_Foundation")] 147 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_CONFIGUREPROTECTION { clone(&self) -> Self148 fn clone(&self) -> Self { 149 *self 150 } 151 } 152 #[repr(C)] 153 #[cfg(feature = "Win32_Foundation")] 154 pub struct D3DAUTHENTICATEDCHANNEL_CONFIGURESHAREDRESOURCE { 155 pub Parameters: D3DAUTHENTICATEDCHANNEL_CONFIGURE_INPUT, 156 pub ProcessIdentiferType: D3DAUTHENTICATEDCHANNEL_PROCESSIDENTIFIERTYPE, 157 pub ProcessHandle: super::super::Foundation::HANDLE, 158 pub AllowAccess: super::super::Foundation::BOOL, 159 } 160 #[cfg(feature = "Win32_Foundation")] 161 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_CONFIGURESHAREDRESOURCE {} 162 #[cfg(feature = "Win32_Foundation")] 163 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_CONFIGURESHAREDRESOURCE { clone(&self) -> Self164 fn clone(&self) -> Self { 165 *self 166 } 167 } 168 #[repr(C)] 169 #[cfg(feature = "Win32_Foundation")] 170 pub struct D3DAUTHENTICATEDCHANNEL_CONFIGUREUNCOMPRESSEDENCRYPTION { 171 pub Parameters: D3DAUTHENTICATEDCHANNEL_CONFIGURE_INPUT, 172 pub EncryptionGuid: ::windows_sys::core::GUID, 173 } 174 #[cfg(feature = "Win32_Foundation")] 175 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_CONFIGUREUNCOMPRESSEDENCRYPTION {} 176 #[cfg(feature = "Win32_Foundation")] 177 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_CONFIGUREUNCOMPRESSEDENCRYPTION { clone(&self) -> Self178 fn clone(&self) -> Self { 179 *self 180 } 181 } 182 #[repr(C)] 183 #[cfg(feature = "Win32_Foundation")] 184 pub struct D3DAUTHENTICATEDCHANNEL_CONFIGURE_INPUT { 185 pub omac: D3D_OMAC, 186 pub ConfigureType: ::windows_sys::core::GUID, 187 pub hChannel: super::super::Foundation::HANDLE, 188 pub SequenceNumber: u32, 189 } 190 #[cfg(feature = "Win32_Foundation")] 191 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_CONFIGURE_INPUT {} 192 #[cfg(feature = "Win32_Foundation")] 193 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_CONFIGURE_INPUT { clone(&self) -> Self194 fn clone(&self) -> Self { 195 *self 196 } 197 } 198 #[repr(C)] 199 #[cfg(feature = "Win32_Foundation")] 200 pub struct D3DAUTHENTICATEDCHANNEL_CONFIGURE_OUTPUT { 201 pub omac: D3D_OMAC, 202 pub ConfigureType: ::windows_sys::core::GUID, 203 pub hChannel: super::super::Foundation::HANDLE, 204 pub SequenceNumber: u32, 205 pub ReturnCode: ::windows_sys::core::HRESULT, 206 } 207 #[cfg(feature = "Win32_Foundation")] 208 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_CONFIGURE_OUTPUT {} 209 #[cfg(feature = "Win32_Foundation")] 210 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_CONFIGURE_OUTPUT { clone(&self) -> Self211 fn clone(&self) -> Self { 212 *self 213 } 214 } 215 pub type D3DAUTHENTICATEDCHANNEL_PROCESSIDENTIFIERTYPE = i32; 216 pub const PROCESSIDTYPE_UNKNOWN: D3DAUTHENTICATEDCHANNEL_PROCESSIDENTIFIERTYPE = 0i32; 217 pub const PROCESSIDTYPE_DWM: D3DAUTHENTICATEDCHANNEL_PROCESSIDENTIFIERTYPE = 1i32; 218 pub const PROCESSIDTYPE_HANDLE: D3DAUTHENTICATEDCHANNEL_PROCESSIDENTIFIERTYPE = 2i32; 219 #[repr(C)] 220 pub struct D3DAUTHENTICATEDCHANNEL_PROTECTION_FLAGS { 221 pub Anonymous: D3DAUTHENTICATEDCHANNEL_PROTECTION_FLAGS_0, 222 } 223 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_PROTECTION_FLAGS {} 224 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_PROTECTION_FLAGS { clone(&self) -> Self225 fn clone(&self) -> Self { 226 *self 227 } 228 } 229 #[repr(C)] 230 pub union D3DAUTHENTICATEDCHANNEL_PROTECTION_FLAGS_0 { 231 pub Anonymous: D3DAUTHENTICATEDCHANNEL_PROTECTION_FLAGS_0_0, 232 pub Value: u32, 233 } 234 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_PROTECTION_FLAGS_0 {} 235 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_PROTECTION_FLAGS_0 { clone(&self) -> Self236 fn clone(&self) -> Self { 237 *self 238 } 239 } 240 #[repr(C)] 241 pub struct D3DAUTHENTICATEDCHANNEL_PROTECTION_FLAGS_0_0 { 242 pub _bitfield: u32, 243 } 244 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_PROTECTION_FLAGS_0_0 {} 245 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_PROTECTION_FLAGS_0_0 { clone(&self) -> Self246 fn clone(&self) -> Self { 247 *self 248 } 249 } 250 #[repr(C)] 251 #[cfg(feature = "Win32_Foundation")] 252 pub struct D3DAUTHENTICATEDCHANNEL_QUERYCHANNELTYPE_OUTPUT { 253 pub Output: D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT, 254 pub ChannelType: D3DAUTHENTICATEDCHANNELTYPE, 255 } 256 #[cfg(feature = "Win32_Foundation")] 257 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYCHANNELTYPE_OUTPUT {} 258 #[cfg(feature = "Win32_Foundation")] 259 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYCHANNELTYPE_OUTPUT { clone(&self) -> Self260 fn clone(&self) -> Self { 261 *self 262 } 263 } 264 #[repr(C)] 265 #[cfg(feature = "Win32_Foundation")] 266 pub struct D3DAUTHENTICATEDCHANNEL_QUERYCRYPTOSESSION_INPUT { 267 pub Input: D3DAUTHENTICATEDCHANNEL_QUERY_INPUT, 268 pub DXVA2DecodeHandle: super::super::Foundation::HANDLE, 269 } 270 #[cfg(feature = "Win32_Foundation")] 271 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYCRYPTOSESSION_INPUT {} 272 #[cfg(feature = "Win32_Foundation")] 273 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYCRYPTOSESSION_INPUT { clone(&self) -> Self274 fn clone(&self) -> Self { 275 *self 276 } 277 } 278 #[repr(C)] 279 #[cfg(feature = "Win32_Foundation")] 280 pub struct D3DAUTHENTICATEDCHANNEL_QUERYCRYPTOSESSION_OUTPUT { 281 pub Output: D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT, 282 pub DXVA2DecodeHandle: super::super::Foundation::HANDLE, 283 pub CryptoSessionHandle: super::super::Foundation::HANDLE, 284 pub DeviceHandle: super::super::Foundation::HANDLE, 285 } 286 #[cfg(feature = "Win32_Foundation")] 287 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYCRYPTOSESSION_OUTPUT {} 288 #[cfg(feature = "Win32_Foundation")] 289 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYCRYPTOSESSION_OUTPUT { clone(&self) -> Self290 fn clone(&self) -> Self { 291 *self 292 } 293 } 294 #[repr(C)] 295 #[cfg(feature = "Win32_Foundation")] 296 pub struct D3DAUTHENTICATEDCHANNEL_QUERYDEVICEHANDLE_OUTPUT { 297 pub Output: D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT, 298 pub DeviceHandle: super::super::Foundation::HANDLE, 299 } 300 #[cfg(feature = "Win32_Foundation")] 301 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYDEVICEHANDLE_OUTPUT {} 302 #[cfg(feature = "Win32_Foundation")] 303 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYDEVICEHANDLE_OUTPUT { clone(&self) -> Self304 fn clone(&self) -> Self { 305 *self 306 } 307 } 308 #[repr(C)] 309 #[cfg(feature = "Win32_Foundation")] 310 pub struct D3DAUTHENTICATEDCHANNEL_QUERYEVICTIONENCRYPTIONGUIDCOUNT_OUTPUT { 311 pub Output: D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT, 312 pub NumEncryptionGuids: u32, 313 } 314 #[cfg(feature = "Win32_Foundation")] 315 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYEVICTIONENCRYPTIONGUIDCOUNT_OUTPUT {} 316 #[cfg(feature = "Win32_Foundation")] 317 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYEVICTIONENCRYPTIONGUIDCOUNT_OUTPUT { clone(&self) -> Self318 fn clone(&self) -> Self { 319 *self 320 } 321 } 322 #[repr(C)] 323 #[cfg(feature = "Win32_Foundation")] 324 pub struct D3DAUTHENTICATEDCHANNEL_QUERYEVICTIONENCRYPTIONGUID_INPUT { 325 pub Input: D3DAUTHENTICATEDCHANNEL_QUERY_INPUT, 326 pub EncryptionGuidIndex: u32, 327 } 328 #[cfg(feature = "Win32_Foundation")] 329 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYEVICTIONENCRYPTIONGUID_INPUT {} 330 #[cfg(feature = "Win32_Foundation")] 331 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYEVICTIONENCRYPTIONGUID_INPUT { clone(&self) -> Self332 fn clone(&self) -> Self { 333 *self 334 } 335 } 336 #[repr(C)] 337 #[cfg(feature = "Win32_Foundation")] 338 pub struct D3DAUTHENTICATEDCHANNEL_QUERYEVICTIONENCRYPTIONGUID_OUTPUT { 339 pub Output: D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT, 340 pub EncryptionGuidIndex: u32, 341 pub EncryptionGuid: ::windows_sys::core::GUID, 342 } 343 #[cfg(feature = "Win32_Foundation")] 344 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYEVICTIONENCRYPTIONGUID_OUTPUT {} 345 #[cfg(feature = "Win32_Foundation")] 346 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYEVICTIONENCRYPTIONGUID_OUTPUT { clone(&self) -> Self347 fn clone(&self) -> Self { 348 *self 349 } 350 } 351 #[repr(C)] 352 #[cfg(feature = "Win32_Foundation")] 353 pub struct D3DAUTHENTICATEDCHANNEL_QUERYINFOBUSTYPE_OUTPUT { 354 pub Output: D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT, 355 pub BusType: D3DBUSTYPE, 356 pub bAccessibleInContiguousBlocks: super::super::Foundation::BOOL, 357 pub bAccessibleInNonContiguousBlocks: super::super::Foundation::BOOL, 358 } 359 #[cfg(feature = "Win32_Foundation")] 360 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYINFOBUSTYPE_OUTPUT {} 361 #[cfg(feature = "Win32_Foundation")] 362 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYINFOBUSTYPE_OUTPUT { clone(&self) -> Self363 fn clone(&self) -> Self { 364 *self 365 } 366 } 367 #[repr(C)] 368 #[cfg(feature = "Win32_Foundation")] 369 pub struct D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTIDCOUNT_INPUT { 370 pub Input: D3DAUTHENTICATEDCHANNEL_QUERY_INPUT, 371 pub DeviceHandle: super::super::Foundation::HANDLE, 372 pub CryptoSessionHandle: super::super::Foundation::HANDLE, 373 } 374 #[cfg(feature = "Win32_Foundation")] 375 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTIDCOUNT_INPUT {} 376 #[cfg(feature = "Win32_Foundation")] 377 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTIDCOUNT_INPUT { clone(&self) -> Self378 fn clone(&self) -> Self { 379 *self 380 } 381 } 382 #[repr(C)] 383 #[cfg(feature = "Win32_Foundation")] 384 pub struct D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTIDCOUNT_OUTPUT { 385 pub Output: D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT, 386 pub DeviceHandle: super::super::Foundation::HANDLE, 387 pub CryptoSessionHandle: super::super::Foundation::HANDLE, 388 pub NumOutputIDs: u32, 389 } 390 #[cfg(feature = "Win32_Foundation")] 391 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTIDCOUNT_OUTPUT {} 392 #[cfg(feature = "Win32_Foundation")] 393 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTIDCOUNT_OUTPUT { clone(&self) -> Self394 fn clone(&self) -> Self { 395 *self 396 } 397 } 398 #[repr(C)] 399 #[cfg(feature = "Win32_Foundation")] 400 pub struct D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTID_INPUT { 401 pub Input: D3DAUTHENTICATEDCHANNEL_QUERY_INPUT, 402 pub DeviceHandle: super::super::Foundation::HANDLE, 403 pub CryptoSessionHandle: super::super::Foundation::HANDLE, 404 pub OutputIDIndex: u32, 405 } 406 #[cfg(feature = "Win32_Foundation")] 407 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTID_INPUT {} 408 #[cfg(feature = "Win32_Foundation")] 409 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTID_INPUT { clone(&self) -> Self410 fn clone(&self) -> Self { 411 *self 412 } 413 } 414 #[repr(C)] 415 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 416 #[cfg(feature = "Win32_Foundation")] 417 pub struct D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTID_OUTPUT { 418 pub Output: D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT, 419 pub DeviceHandle: super::super::Foundation::HANDLE, 420 pub CryptoSessionHandle: super::super::Foundation::HANDLE, 421 pub OutputIDIndex: u32, 422 pub OutputID: u64, 423 } 424 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 425 #[cfg(feature = "Win32_Foundation")] 426 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTID_OUTPUT {} 427 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 428 #[cfg(feature = "Win32_Foundation")] 429 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTID_OUTPUT { clone(&self) -> Self430 fn clone(&self) -> Self { 431 *self 432 } 433 } 434 #[repr(C, packed(4))] 435 #[cfg(any(target_arch = "x86",))] 436 #[cfg(feature = "Win32_Foundation")] 437 pub struct D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTID_OUTPUT { 438 pub Output: D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT, 439 pub DeviceHandle: super::super::Foundation::HANDLE, 440 pub CryptoSessionHandle: super::super::Foundation::HANDLE, 441 pub OutputIDIndex: u32, 442 pub OutputID: u64, 443 } 444 #[cfg(any(target_arch = "x86",))] 445 #[cfg(feature = "Win32_Foundation")] 446 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTID_OUTPUT {} 447 #[cfg(any(target_arch = "x86",))] 448 #[cfg(feature = "Win32_Foundation")] 449 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYOUTPUTID_OUTPUT { clone(&self) -> Self450 fn clone(&self) -> Self { 451 *self 452 } 453 } 454 #[repr(C)] 455 #[cfg(feature = "Win32_Foundation")] 456 pub struct D3DAUTHENTICATEDCHANNEL_QUERYPROTECTION_OUTPUT { 457 pub Output: D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT, 458 pub ProtectionFlags: D3DAUTHENTICATEDCHANNEL_PROTECTION_FLAGS, 459 } 460 #[cfg(feature = "Win32_Foundation")] 461 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYPROTECTION_OUTPUT {} 462 #[cfg(feature = "Win32_Foundation")] 463 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYPROTECTION_OUTPUT { clone(&self) -> Self464 fn clone(&self) -> Self { 465 *self 466 } 467 } 468 #[repr(C)] 469 #[cfg(feature = "Win32_Foundation")] 470 pub struct D3DAUTHENTICATEDCHANNEL_QUERYRESTRICTEDSHAREDRESOURCEPROCESSCOUNT_OUTPUT { 471 pub Output: D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT, 472 pub NumRestrictedSharedResourceProcesses: u32, 473 } 474 #[cfg(feature = "Win32_Foundation")] 475 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYRESTRICTEDSHAREDRESOURCEPROCESSCOUNT_OUTPUT {} 476 #[cfg(feature = "Win32_Foundation")] 477 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYRESTRICTEDSHAREDRESOURCEPROCESSCOUNT_OUTPUT { clone(&self) -> Self478 fn clone(&self) -> Self { 479 *self 480 } 481 } 482 #[repr(C)] 483 #[cfg(feature = "Win32_Foundation")] 484 pub struct D3DAUTHENTICATEDCHANNEL_QUERYRESTRICTEDSHAREDRESOURCEPROCESS_INPUT { 485 pub Input: D3DAUTHENTICATEDCHANNEL_QUERY_INPUT, 486 pub ProcessIndex: u32, 487 } 488 #[cfg(feature = "Win32_Foundation")] 489 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYRESTRICTEDSHAREDRESOURCEPROCESS_INPUT {} 490 #[cfg(feature = "Win32_Foundation")] 491 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYRESTRICTEDSHAREDRESOURCEPROCESS_INPUT { clone(&self) -> Self492 fn clone(&self) -> Self { 493 *self 494 } 495 } 496 #[repr(C)] 497 #[cfg(feature = "Win32_Foundation")] 498 pub struct D3DAUTHENTICATEDCHANNEL_QUERYRESTRICTEDSHAREDRESOURCEPROCESS_OUTPUT { 499 pub Output: D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT, 500 pub ProcessIndex: u32, 501 pub ProcessIdentifer: D3DAUTHENTICATEDCHANNEL_PROCESSIDENTIFIERTYPE, 502 pub ProcessHandle: super::super::Foundation::HANDLE, 503 } 504 #[cfg(feature = "Win32_Foundation")] 505 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYRESTRICTEDSHAREDRESOURCEPROCESS_OUTPUT {} 506 #[cfg(feature = "Win32_Foundation")] 507 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYRESTRICTEDSHAREDRESOURCEPROCESS_OUTPUT { clone(&self) -> Self508 fn clone(&self) -> Self { 509 *self 510 } 511 } 512 #[repr(C)] 513 #[cfg(feature = "Win32_Foundation")] 514 pub struct D3DAUTHENTICATEDCHANNEL_QUERYUNCOMPRESSEDENCRYPTIONLEVEL_OUTPUT { 515 pub Output: D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT, 516 pub EncryptionGuid: ::windows_sys::core::GUID, 517 } 518 #[cfg(feature = "Win32_Foundation")] 519 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYUNCOMPRESSEDENCRYPTIONLEVEL_OUTPUT {} 520 #[cfg(feature = "Win32_Foundation")] 521 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYUNCOMPRESSEDENCRYPTIONLEVEL_OUTPUT { clone(&self) -> Self522 fn clone(&self) -> Self { 523 *self 524 } 525 } 526 #[repr(C)] 527 #[cfg(feature = "Win32_Foundation")] 528 pub struct D3DAUTHENTICATEDCHANNEL_QUERYUNRESTRICTEDPROTECTEDSHAREDRESOURCECOUNT_OUTPUT { 529 pub Output: D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT, 530 pub NumUnrestrictedProtectedSharedResources: u32, 531 } 532 #[cfg(feature = "Win32_Foundation")] 533 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERYUNRESTRICTEDPROTECTEDSHAREDRESOURCECOUNT_OUTPUT {} 534 #[cfg(feature = "Win32_Foundation")] 535 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERYUNRESTRICTEDPROTECTEDSHAREDRESOURCECOUNT_OUTPUT { clone(&self) -> Self536 fn clone(&self) -> Self { 537 *self 538 } 539 } 540 #[repr(C)] 541 #[cfg(feature = "Win32_Foundation")] 542 pub struct D3DAUTHENTICATEDCHANNEL_QUERY_INPUT { 543 pub QueryType: ::windows_sys::core::GUID, 544 pub hChannel: super::super::Foundation::HANDLE, 545 pub SequenceNumber: u32, 546 } 547 #[cfg(feature = "Win32_Foundation")] 548 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERY_INPUT {} 549 #[cfg(feature = "Win32_Foundation")] 550 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERY_INPUT { clone(&self) -> Self551 fn clone(&self) -> Self { 552 *self 553 } 554 } 555 #[repr(C)] 556 #[cfg(feature = "Win32_Foundation")] 557 pub struct D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT { 558 pub omac: D3D_OMAC, 559 pub QueryType: ::windows_sys::core::GUID, 560 pub hChannel: super::super::Foundation::HANDLE, 561 pub SequenceNumber: u32, 562 pub ReturnCode: ::windows_sys::core::HRESULT, 563 } 564 #[cfg(feature = "Win32_Foundation")] 565 impl ::core::marker::Copy for D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT {} 566 #[cfg(feature = "Win32_Foundation")] 567 impl ::core::clone::Clone for D3DAUTHENTICATEDCHANNEL_QUERY_OUTPUT { clone(&self) -> Self568 fn clone(&self) -> Self { 569 *self 570 } 571 } 572 pub const D3DAUTHENTICATEDCONFIGURE_CRYPTOSESSION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1665584212, data2: 11516, data3: 19156, data4: [130, 36, 209, 88, 55, 222, 119, 0] }; 573 pub const D3DAUTHENTICATEDCONFIGURE_ENCRYPTIONWHENACCESSIBLE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 574 data1: 1107292806, 575 data2: 27360, 576 data3: 19779, 577 data4: [157, 85, 164, 110, 158, 253, 21, 138], 578 }; 579 pub const D3DAUTHENTICATEDCONFIGURE_INITIALIZE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 580 data1: 101796827, 581 data2: 13603, 582 data3: 18186, 583 data4: [141, 202, 251, 194, 132, 81, 84, 240], 584 }; 585 pub const D3DAUTHENTICATEDCONFIGURE_PROTECTION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 586 data1: 1346721368, 587 data2: 16199, 588 data3: 17250, 589 data4: [191, 153, 191, 223, 205, 233, 237, 41], 590 }; 591 pub const D3DAUTHENTICATEDCONFIGURE_SHAREDRESOURCE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 124964935, data2: 6976, data3: 18664, data4: [156, 166, 181, 245, 16, 222, 159, 1] }; 592 pub const D3DAUTHENTICATEDQUERY_ACCESSIBILITYATTRIBUTES: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 593 data1: 1645533650, 594 data2: 17196, 595 data3: 19131, 596 data4: [159, 206, 33, 110, 234, 38, 158, 59], 597 }; 598 pub const D3DAUTHENTICATEDQUERY_CHANNELTYPE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 599 data1: 3155892389, 600 data2: 45563, 601 data3: 17067, 602 data4: [189, 148, 181, 130, 139, 75, 247, 190], 603 }; 604 pub const D3DAUTHENTICATEDQUERY_CRYPTOSESSION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 640960926, data2: 53272, data3: 19828, data4: [172, 23, 127, 114, 64, 89, 82, 141] }; 605 pub const D3DAUTHENTICATEDQUERY_CURRENTENCRYPTIONWHENACCESSIBLE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 606 data1: 3960967623, 607 data2: 56019, 608 data3: 20245, 609 data4: [158, 195, 250, 169, 61, 96, 212, 240], 610 }; 611 pub const D3DAUTHENTICATEDQUERY_DEVICEHANDLE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 612 data1: 3961279389, 613 data2: 36095, 614 data3: 20010, 615 data4: [188, 196, 245, 105, 47, 153, 244, 128], 616 }; 617 pub const D3DAUTHENTICATEDQUERY_ENCRYPTIONWHENACCESSIBLEGUID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4164573528, data2: 59782, data3: 19418, data4: [190, 176, 65, 31, 106, 122, 1, 183] }; 618 pub const D3DAUTHENTICATEDQUERY_ENCRYPTIONWHENACCESSIBLEGUIDCOUNT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3004133478, data2: 8252, data3: 19207, data4: [147, 252, 206, 170, 253, 97, 36, 30] }; 619 pub const D3DAUTHENTICATEDQUERY_OUTPUTID: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 620 data1: 2208160931, 621 data2: 39758, 622 data3: 16868, 623 data4: [176, 83, 137, 43, 210, 161, 30, 231], 624 }; 625 pub const D3DAUTHENTICATEDQUERY_OUTPUTIDCOUNT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 626 data1: 738470750, 627 data2: 35847, 628 data3: 18133, 629 data4: [170, 190, 143, 117, 203, 173, 76, 49], 630 }; 631 pub const D3DAUTHENTICATEDQUERY_PROTECTION: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 632 data1: 2823730564, 633 data2: 50325, 634 data3: 18602, 635 data4: [185, 77, 139, 210, 214, 251, 206, 5], 636 }; 637 pub const D3DAUTHENTICATEDQUERY_RESTRICTEDSHAREDRESOURCEPROCESS: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1687927515, data2: 61684, data3: 17977, data4: [161, 91, 36, 57, 63, 195, 171, 172] }; 638 pub const D3DAUTHENTICATEDQUERY_RESTRICTEDSHAREDRESOURCEPROCESSCOUNT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 639 data1: 229771187, 640 data2: 37968, 641 data3: 18086, 642 data4: [130, 222, 27, 150, 212, 79, 156, 242], 643 }; 644 pub const D3DAUTHENTICATEDQUERY_UNRESTRICTEDPROTECTEDSHAREDRESOURCECOUNT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 19860438, data2: 58978, data3: 17524, data4: [190, 253, 170, 83, 229, 20, 60, 109] }; 645 pub type D3DBACKBUFFER_TYPE = u32; 646 pub const D3DBACKBUFFER_TYPE_MONO: D3DBACKBUFFER_TYPE = 0u32; 647 pub const D3DBACKBUFFER_TYPE_LEFT: D3DBACKBUFFER_TYPE = 1u32; 648 pub const D3DBACKBUFFER_TYPE_RIGHT: D3DBACKBUFFER_TYPE = 2u32; 649 pub const D3DBACKBUFFER_TYPE_FORCE_DWORD: D3DBACKBUFFER_TYPE = 2147483647u32; 650 pub type D3DBASISTYPE = i32; 651 pub const D3DBASIS_BEZIER: D3DBASISTYPE = 0i32; 652 pub const D3DBASIS_BSPLINE: D3DBASISTYPE = 1i32; 653 pub const D3DBASIS_CATMULL_ROM: D3DBASISTYPE = 2i32; 654 pub const D3DBASIS_FORCE_DWORD: D3DBASISTYPE = 2147483647i32; 655 pub type D3DBLEND = u32; 656 pub const D3DBLEND_ZERO: D3DBLEND = 1u32; 657 pub const D3DBLEND_ONE: D3DBLEND = 2u32; 658 pub const D3DBLEND_SRCCOLOR: D3DBLEND = 3u32; 659 pub const D3DBLEND_INVSRCCOLOR: D3DBLEND = 4u32; 660 pub const D3DBLEND_SRCALPHA: D3DBLEND = 5u32; 661 pub const D3DBLEND_INVSRCALPHA: D3DBLEND = 6u32; 662 pub const D3DBLEND_DESTALPHA: D3DBLEND = 7u32; 663 pub const D3DBLEND_INVDESTALPHA: D3DBLEND = 8u32; 664 pub const D3DBLEND_DESTCOLOR: D3DBLEND = 9u32; 665 pub const D3DBLEND_INVDESTCOLOR: D3DBLEND = 10u32; 666 pub const D3DBLEND_SRCALPHASAT: D3DBLEND = 11u32; 667 pub const D3DBLEND_BOTHSRCALPHA: D3DBLEND = 12u32; 668 pub const D3DBLEND_BOTHINVSRCALPHA: D3DBLEND = 13u32; 669 pub const D3DBLEND_BLENDFACTOR: D3DBLEND = 14u32; 670 pub const D3DBLEND_INVBLENDFACTOR: D3DBLEND = 15u32; 671 pub const D3DBLEND_SRCCOLOR2: D3DBLEND = 16u32; 672 pub const D3DBLEND_INVSRCCOLOR2: D3DBLEND = 17u32; 673 pub const D3DBLEND_FORCE_DWORD: D3DBLEND = 2147483647u32; 674 pub type D3DBLENDOP = u32; 675 pub const D3DBLENDOP_ADD: D3DBLENDOP = 1u32; 676 pub const D3DBLENDOP_SUBTRACT: D3DBLENDOP = 2u32; 677 pub const D3DBLENDOP_REVSUBTRACT: D3DBLENDOP = 3u32; 678 pub const D3DBLENDOP_MIN: D3DBLENDOP = 4u32; 679 pub const D3DBLENDOP_MAX: D3DBLENDOP = 5u32; 680 pub const D3DBLENDOP_FORCE_DWORD: D3DBLENDOP = 2147483647u32; 681 #[repr(C)] 682 pub struct D3DBOX { 683 pub Left: u32, 684 pub Top: u32, 685 pub Right: u32, 686 pub Bottom: u32, 687 pub Front: u32, 688 pub Back: u32, 689 } 690 impl ::core::marker::Copy for D3DBOX {} 691 impl ::core::clone::Clone for D3DBOX { clone(&self) -> Self692 fn clone(&self) -> Self { 693 *self 694 } 695 } 696 pub type D3DBUSTYPE = i32; 697 pub const D3DBUSTYPE_OTHER: D3DBUSTYPE = 0i32; 698 pub const D3DBUSTYPE_PCI: D3DBUSTYPE = 1i32; 699 pub const D3DBUSTYPE_PCIX: D3DBUSTYPE = 2i32; 700 pub const D3DBUSTYPE_PCIEXPRESS: D3DBUSTYPE = 3i32; 701 pub const D3DBUSTYPE_AGP: D3DBUSTYPE = 4i32; 702 pub const D3DBUSIMPL_MODIFIER_INSIDE_OF_CHIPSET: D3DBUSTYPE = 65536i32; 703 pub const D3DBUSIMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_CHIP: D3DBUSTYPE = 131072i32; 704 pub const D3DBUSIMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_SOCKET: D3DBUSTYPE = 196608i32; 705 pub const D3DBUSIMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR: D3DBUSTYPE = 262144i32; 706 pub const D3DBUSIMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR_INSIDE_OF_NUAE: D3DBUSTYPE = 327680i32; 707 pub const D3DBUSIMPL_MODIFIER_NON_STANDARD: D3DBUSTYPE = -2147483648i32; 708 pub const D3DCAPS2_CANAUTOGENMIPMAP: i32 = 1073741824i32; 709 pub const D3DCAPS2_CANCALIBRATEGAMMA: i32 = 1048576i32; 710 pub const D3DCAPS2_CANMANAGERESOURCE: i32 = 268435456i32; 711 pub const D3DCAPS2_CANSHARERESOURCE: i32 = -2147483648i32; 712 pub const D3DCAPS2_DYNAMICTEXTURES: i32 = 536870912i32; 713 pub const D3DCAPS2_FULLSCREENGAMMA: i32 = 131072i32; 714 pub const D3DCAPS2_RESERVED: i32 = 33554432i32; 715 pub const D3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD: i32 = 32i32; 716 pub const D3DCAPS3_COPY_TO_SYSTEMMEM: i32 = 512i32; 717 pub const D3DCAPS3_COPY_TO_VIDMEM: i32 = 256i32; 718 pub const D3DCAPS3_DXVAHD: i32 = 1024i32; 719 pub const D3DCAPS3_DXVAHD_LIMITED: i32 = 2048i32; 720 pub const D3DCAPS3_LINEAR_TO_SRGB_PRESENTATION: i32 = 128i32; 721 pub const D3DCAPS3_RESERVED: i32 = -2147483617i32; 722 #[repr(C)] 723 pub struct D3DCAPS9 { 724 pub DeviceType: D3DDEVTYPE, 725 pub AdapterOrdinal: u32, 726 pub Caps: u32, 727 pub Caps2: u32, 728 pub Caps3: u32, 729 pub PresentationIntervals: u32, 730 pub CursorCaps: u32, 731 pub DevCaps: u32, 732 pub PrimitiveMiscCaps: u32, 733 pub RasterCaps: u32, 734 pub ZCmpCaps: u32, 735 pub SrcBlendCaps: u32, 736 pub DestBlendCaps: u32, 737 pub AlphaCmpCaps: u32, 738 pub ShadeCaps: u32, 739 pub TextureCaps: u32, 740 pub TextureFilterCaps: u32, 741 pub CubeTextureFilterCaps: u32, 742 pub VolumeTextureFilterCaps: u32, 743 pub TextureAddressCaps: u32, 744 pub VolumeTextureAddressCaps: u32, 745 pub LineCaps: u32, 746 pub MaxTextureWidth: u32, 747 pub MaxTextureHeight: u32, 748 pub MaxVolumeExtent: u32, 749 pub MaxTextureRepeat: u32, 750 pub MaxTextureAspectRatio: u32, 751 pub MaxAnisotropy: u32, 752 pub MaxVertexW: f32, 753 pub GuardBandLeft: f32, 754 pub GuardBandTop: f32, 755 pub GuardBandRight: f32, 756 pub GuardBandBottom: f32, 757 pub ExtentsAdjust: f32, 758 pub StencilCaps: u32, 759 pub FVFCaps: u32, 760 pub TextureOpCaps: u32, 761 pub MaxTextureBlendStages: u32, 762 pub MaxSimultaneousTextures: u32, 763 pub VertexProcessingCaps: u32, 764 pub MaxActiveLights: u32, 765 pub MaxUserClipPlanes: u32, 766 pub MaxVertexBlendMatrices: u32, 767 pub MaxVertexBlendMatrixIndex: u32, 768 pub MaxPointSize: f32, 769 pub MaxPrimitiveCount: u32, 770 pub MaxVertexIndex: u32, 771 pub MaxStreams: u32, 772 pub MaxStreamStride: u32, 773 pub VertexShaderVersion: u32, 774 pub MaxVertexShaderConst: u32, 775 pub PixelShaderVersion: u32, 776 pub PixelShader1xMaxValue: f32, 777 pub DevCaps2: u32, 778 pub MaxNpatchTessellationLevel: f32, 779 pub Reserved5: u32, 780 pub MasterAdapterOrdinal: u32, 781 pub AdapterOrdinalInGroup: u32, 782 pub NumberOfAdaptersInGroup: u32, 783 pub DeclTypes: u32, 784 pub NumSimultaneousRTs: u32, 785 pub StretchRectFilterCaps: u32, 786 pub VS20Caps: D3DVSHADERCAPS2_0, 787 pub PS20Caps: D3DPSHADERCAPS2_0, 788 pub VertexTextureFilterCaps: u32, 789 pub MaxVShaderInstructionsExecuted: u32, 790 pub MaxPShaderInstructionsExecuted: u32, 791 pub MaxVertexShader30InstructionSlots: u32, 792 pub MaxPixelShader30InstructionSlots: u32, 793 } 794 impl ::core::marker::Copy for D3DCAPS9 {} 795 impl ::core::clone::Clone for D3DCAPS9 { clone(&self) -> Self796 fn clone(&self) -> Self { 797 *self 798 } 799 } 800 pub const D3DCAPS_OVERLAY: i32 = 2048i32; 801 pub const D3DCAPS_READ_SCANLINE: i32 = 131072i32; 802 #[repr(C)] 803 pub struct D3DCLIPSTATUS9 { 804 pub ClipUnion: u32, 805 pub ClipIntersection: u32, 806 } 807 impl ::core::marker::Copy for D3DCLIPSTATUS9 {} 808 impl ::core::clone::Clone for D3DCLIPSTATUS9 { clone(&self) -> Self809 fn clone(&self) -> Self { 810 *self 811 } 812 } 813 pub type D3DCMPFUNC = i32; 814 pub const D3DCMP_NEVER: D3DCMPFUNC = 1i32; 815 pub const D3DCMP_LESS: D3DCMPFUNC = 2i32; 816 pub const D3DCMP_EQUAL: D3DCMPFUNC = 3i32; 817 pub const D3DCMP_LESSEQUAL: D3DCMPFUNC = 4i32; 818 pub const D3DCMP_GREATER: D3DCMPFUNC = 5i32; 819 pub const D3DCMP_NOTEQUAL: D3DCMPFUNC = 6i32; 820 pub const D3DCMP_GREATEREQUAL: D3DCMPFUNC = 7i32; 821 pub const D3DCMP_ALWAYS: D3DCMPFUNC = 8i32; 822 pub const D3DCMP_FORCE_DWORD: D3DCMPFUNC = 2147483647i32; 823 #[repr(C)] 824 pub struct D3DCOLORVALUE { 825 pub r: f32, 826 pub g: f32, 827 pub b: f32, 828 pub a: f32, 829 } 830 impl ::core::marker::Copy for D3DCOLORVALUE {} 831 impl ::core::clone::Clone for D3DCOLORVALUE { clone(&self) -> Self832 fn clone(&self) -> Self { 833 *self 834 } 835 } 836 #[repr(C)] 837 pub struct D3DCOMPOSERECTDESC { 838 pub X: u16, 839 pub Y: u16, 840 pub Width: u16, 841 pub Height: u16, 842 } 843 impl ::core::marker::Copy for D3DCOMPOSERECTDESC {} 844 impl ::core::clone::Clone for D3DCOMPOSERECTDESC { clone(&self) -> Self845 fn clone(&self) -> Self { 846 *self 847 } 848 } 849 #[repr(C)] 850 pub struct D3DCOMPOSERECTDESTINATION { 851 pub SrcRectIndex: u16, 852 pub Reserved: u16, 853 pub X: i16, 854 pub Y: i16, 855 } 856 impl ::core::marker::Copy for D3DCOMPOSERECTDESTINATION {} 857 impl ::core::clone::Clone for D3DCOMPOSERECTDESTINATION { clone(&self) -> Self858 fn clone(&self) -> Self { 859 *self 860 } 861 } 862 pub type D3DCOMPOSERECTSOP = i32; 863 pub const D3DCOMPOSERECTS_COPY: D3DCOMPOSERECTSOP = 1i32; 864 pub const D3DCOMPOSERECTS_OR: D3DCOMPOSERECTSOP = 2i32; 865 pub const D3DCOMPOSERECTS_AND: D3DCOMPOSERECTSOP = 3i32; 866 pub const D3DCOMPOSERECTS_NEG: D3DCOMPOSERECTSOP = 4i32; 867 pub const D3DCOMPOSERECTS_FORCE_DWORD: D3DCOMPOSERECTSOP = 2147483647i32; 868 pub const D3DCOMPOSERECTS_MAXNUMRECTS: u32 = 65535u32; 869 pub const D3DCONVOLUTIONMONO_MAXHEIGHT: u32 = 7u32; 870 pub const D3DCONVOLUTIONMONO_MAXWIDTH: u32 = 7u32; 871 pub const D3DCPCAPS_CONTENTKEY: u32 = 16u32; 872 pub const D3DCPCAPS_ENCRYPTEDREADBACK: u32 = 64u32; 873 pub const D3DCPCAPS_ENCRYPTEDREADBACKKEY: u32 = 128u32; 874 pub const D3DCPCAPS_ENCRYPTSLICEDATAONLY: u32 = 512u32; 875 pub const D3DCPCAPS_FRESHENSESSIONKEY: u32 = 32u32; 876 pub const D3DCPCAPS_HARDWARE: u32 = 2u32; 877 pub const D3DCPCAPS_PARTIALDECRYPTION: u32 = 8u32; 878 pub const D3DCPCAPS_PROTECTIONALWAYSON: u32 = 4u32; 879 pub const D3DCPCAPS_SEQUENTIAL_CTR_IV: u32 = 256u32; 880 pub const D3DCPCAPS_SOFTWARE: u32 = 1u32; 881 pub const D3DCREATE_ADAPTERGROUP_DEVICE: i32 = 512i32; 882 pub const D3DCREATE_DISABLE_DRIVER_MANAGEMENT: i32 = 256i32; 883 pub const D3DCREATE_DISABLE_DRIVER_MANAGEMENT_EX: i32 = 1024i32; 884 pub const D3DCREATE_DISABLE_PRINTSCREEN: i32 = 32768i32; 885 pub const D3DCREATE_DISABLE_PSGP_THREADING: i32 = 8192i32; 886 pub const D3DCREATE_ENABLE_PRESENTSTATS: i32 = 16384i32; 887 pub const D3DCREATE_FPU_PRESERVE: i32 = 2i32; 888 pub const D3DCREATE_HARDWARE_VERTEXPROCESSING: i32 = 64i32; 889 pub const D3DCREATE_MIXED_VERTEXPROCESSING: i32 = 128i32; 890 pub const D3DCREATE_MULTITHREADED: i32 = 4i32; 891 pub const D3DCREATE_NOWINDOWCHANGES: i32 = 2048i32; 892 pub const D3DCREATE_PUREDEVICE: i32 = 16i32; 893 pub const D3DCREATE_SCREENSAVER: i32 = 268435456i32; 894 pub const D3DCREATE_SOFTWARE_VERTEXPROCESSING: i32 = 32i32; 895 pub const D3DCRYPTOTYPE_AES128_CTR: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 896 data1: 2607535889, 897 data2: 20340, 898 data3: 16841, 899 data4: [158, 123, 11, 226, 215, 217, 59, 79], 900 }; 901 pub const D3DCRYPTOTYPE_PROPRIETARY: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2874055421, data2: 7452, data3: 18150, data4: [167, 47, 8, 105, 145, 123, 13, 232] }; 902 pub const D3DCS_BACK: i32 = 32i32; 903 pub const D3DCS_BOTTOM: i32 = 8i32; 904 pub const D3DCS_FRONT: i32 = 16i32; 905 pub const D3DCS_LEFT: i32 = 1i32; 906 pub const D3DCS_PLANE0: i32 = 64i32; 907 pub const D3DCS_PLANE1: i32 = 128i32; 908 pub const D3DCS_PLANE2: i32 = 256i32; 909 pub const D3DCS_PLANE3: i32 = 512i32; 910 pub const D3DCS_PLANE4: i32 = 1024i32; 911 pub const D3DCS_PLANE5: i32 = 2048i32; 912 pub const D3DCS_RIGHT: i32 = 2i32; 913 pub const D3DCS_TOP: i32 = 4i32; 914 pub type D3DCUBEMAP_FACES = i32; 915 pub const D3DCUBEMAP_FACE_POSITIVE_X: D3DCUBEMAP_FACES = 0i32; 916 pub const D3DCUBEMAP_FACE_NEGATIVE_X: D3DCUBEMAP_FACES = 1i32; 917 pub const D3DCUBEMAP_FACE_POSITIVE_Y: D3DCUBEMAP_FACES = 2i32; 918 pub const D3DCUBEMAP_FACE_NEGATIVE_Y: D3DCUBEMAP_FACES = 3i32; 919 pub const D3DCUBEMAP_FACE_POSITIVE_Z: D3DCUBEMAP_FACES = 4i32; 920 pub const D3DCUBEMAP_FACE_NEGATIVE_Z: D3DCUBEMAP_FACES = 5i32; 921 pub const D3DCUBEMAP_FACE_FORCE_DWORD: D3DCUBEMAP_FACES = 2147483647i32; 922 pub type D3DCULL = u32; 923 pub const D3DCULL_NONE: D3DCULL = 1u32; 924 pub const D3DCULL_CW: D3DCULL = 2u32; 925 pub const D3DCULL_CCW: D3DCULL = 3u32; 926 pub const D3DCULL_FORCE_DWORD: D3DCULL = 2147483647u32; 927 pub const D3DCURSORCAPS_COLOR: i32 = 1i32; 928 pub const D3DCURSORCAPS_LOWRES: i32 = 2i32; 929 pub const D3DCURSOR_IMMEDIATE_UPDATE: i32 = 1i32; 930 pub type D3DDEBUGMONITORTOKENS = i32; 931 pub const D3DDMT_ENABLE: D3DDEBUGMONITORTOKENS = 0i32; 932 pub const D3DDMT_DISABLE: D3DDEBUGMONITORTOKENS = 1i32; 933 pub const D3DDMT_FORCE_DWORD: D3DDEBUGMONITORTOKENS = 2147483647i32; 934 pub type D3DDECLMETHOD = i32; 935 pub const D3DDECLMETHOD_DEFAULT: D3DDECLMETHOD = 0i32; 936 pub const D3DDECLMETHOD_PARTIALU: D3DDECLMETHOD = 1i32; 937 pub const D3DDECLMETHOD_PARTIALV: D3DDECLMETHOD = 2i32; 938 pub const D3DDECLMETHOD_CROSSUV: D3DDECLMETHOD = 3i32; 939 pub const D3DDECLMETHOD_UV: D3DDECLMETHOD = 4i32; 940 pub const D3DDECLMETHOD_LOOKUP: D3DDECLMETHOD = 5i32; 941 pub const D3DDECLMETHOD_LOOKUPPRESAMPLED: D3DDECLMETHOD = 6i32; 942 pub type D3DDECLTYPE = i32; 943 pub const D3DDECLTYPE_FLOAT1: D3DDECLTYPE = 0i32; 944 pub const D3DDECLTYPE_FLOAT2: D3DDECLTYPE = 1i32; 945 pub const D3DDECLTYPE_FLOAT3: D3DDECLTYPE = 2i32; 946 pub const D3DDECLTYPE_FLOAT4: D3DDECLTYPE = 3i32; 947 pub const D3DDECLTYPE_D3DCOLOR: D3DDECLTYPE = 4i32; 948 pub const D3DDECLTYPE_UBYTE4: D3DDECLTYPE = 5i32; 949 pub const D3DDECLTYPE_SHORT2: D3DDECLTYPE = 6i32; 950 pub const D3DDECLTYPE_SHORT4: D3DDECLTYPE = 7i32; 951 pub const D3DDECLTYPE_UBYTE4N: D3DDECLTYPE = 8i32; 952 pub const D3DDECLTYPE_SHORT2N: D3DDECLTYPE = 9i32; 953 pub const D3DDECLTYPE_SHORT4N: D3DDECLTYPE = 10i32; 954 pub const D3DDECLTYPE_USHORT2N: D3DDECLTYPE = 11i32; 955 pub const D3DDECLTYPE_USHORT4N: D3DDECLTYPE = 12i32; 956 pub const D3DDECLTYPE_UDEC3: D3DDECLTYPE = 13i32; 957 pub const D3DDECLTYPE_DEC3N: D3DDECLTYPE = 14i32; 958 pub const D3DDECLTYPE_FLOAT16_2: D3DDECLTYPE = 15i32; 959 pub const D3DDECLTYPE_FLOAT16_4: D3DDECLTYPE = 16i32; 960 pub const D3DDECLTYPE_UNUSED: D3DDECLTYPE = 17i32; 961 pub type D3DDECLUSAGE = i32; 962 pub const D3DDECLUSAGE_POSITION: D3DDECLUSAGE = 0i32; 963 pub const D3DDECLUSAGE_BLENDWEIGHT: D3DDECLUSAGE = 1i32; 964 pub const D3DDECLUSAGE_BLENDINDICES: D3DDECLUSAGE = 2i32; 965 pub const D3DDECLUSAGE_NORMAL: D3DDECLUSAGE = 3i32; 966 pub const D3DDECLUSAGE_PSIZE: D3DDECLUSAGE = 4i32; 967 pub const D3DDECLUSAGE_TEXCOORD: D3DDECLUSAGE = 5i32; 968 pub const D3DDECLUSAGE_TANGENT: D3DDECLUSAGE = 6i32; 969 pub const D3DDECLUSAGE_BINORMAL: D3DDECLUSAGE = 7i32; 970 pub const D3DDECLUSAGE_TESSFACTOR: D3DDECLUSAGE = 8i32; 971 pub const D3DDECLUSAGE_POSITIONT: D3DDECLUSAGE = 9i32; 972 pub const D3DDECLUSAGE_COLOR: D3DDECLUSAGE = 10i32; 973 pub const D3DDECLUSAGE_FOG: D3DDECLUSAGE = 11i32; 974 pub const D3DDECLUSAGE_DEPTH: D3DDECLUSAGE = 12i32; 975 pub const D3DDECLUSAGE_SAMPLE: D3DDECLUSAGE = 13i32; 976 pub type D3DDEGREETYPE = i32; 977 pub const D3DDEGREE_LINEAR: D3DDEGREETYPE = 1i32; 978 pub const D3DDEGREE_QUADRATIC: D3DDEGREETYPE = 2i32; 979 pub const D3DDEGREE_CUBIC: D3DDEGREETYPE = 3i32; 980 pub const D3DDEGREE_QUINTIC: D3DDEGREETYPE = 5i32; 981 pub const D3DDEGREE_FORCE_DWORD: D3DDEGREETYPE = 2147483647i32; 982 pub const D3DDEVCAPS2_ADAPTIVETESSNPATCH: i32 = 8i32; 983 pub const D3DDEVCAPS2_ADAPTIVETESSRTPATCH: i32 = 4i32; 984 pub const D3DDEVCAPS2_CAN_STRETCHRECT_FROM_TEXTURES: i32 = 16i32; 985 pub const D3DDEVCAPS2_DMAPNPATCH: i32 = 2i32; 986 pub const D3DDEVCAPS2_PRESAMPLEDDMAPNPATCH: i32 = 32i32; 987 pub const D3DDEVCAPS2_STREAMOFFSET: i32 = 1i32; 988 pub const D3DDEVCAPS2_VERTEXELEMENTSCANSHARESTREAMOFFSET: i32 = 64i32; 989 pub const D3DDEVCAPS_NPATCHES: i32 = 16777216i32; 990 pub const D3DDEVCAPS_PUREDEVICE: i32 = 1048576i32; 991 pub const D3DDEVCAPS_QUINTICRTPATCHES: i32 = 2097152i32; 992 pub const D3DDEVCAPS_RTPATCHES: i32 = 4194304i32; 993 pub const D3DDEVCAPS_RTPATCHHANDLEZERO: i32 = 8388608i32; 994 #[repr(C)] 995 #[cfg(feature = "Win32_Foundation")] 996 pub struct D3DDEVICE_CREATION_PARAMETERS { 997 pub AdapterOrdinal: u32, 998 pub DeviceType: D3DDEVTYPE, 999 pub hFocusWindow: super::super::Foundation::HWND, 1000 pub BehaviorFlags: u32, 1001 } 1002 #[cfg(feature = "Win32_Foundation")] 1003 impl ::core::marker::Copy for D3DDEVICE_CREATION_PARAMETERS {} 1004 #[cfg(feature = "Win32_Foundation")] 1005 impl ::core::clone::Clone for D3DDEVICE_CREATION_PARAMETERS { clone(&self) -> Self1006 fn clone(&self) -> Self { 1007 *self 1008 } 1009 } 1010 #[repr(C)] 1011 pub struct D3DDEVINFO_D3D9BANDWIDTHTIMINGS { 1012 pub MaxBandwidthUtilized: f32, 1013 pub FrontEndUploadMemoryUtilizedPercent: f32, 1014 pub VertexRateUtilizedPercent: f32, 1015 pub TriangleSetupRateUtilizedPercent: f32, 1016 pub FillRateUtilizedPercent: f32, 1017 } 1018 impl ::core::marker::Copy for D3DDEVINFO_D3D9BANDWIDTHTIMINGS {} 1019 impl ::core::clone::Clone for D3DDEVINFO_D3D9BANDWIDTHTIMINGS { clone(&self) -> Self1020 fn clone(&self) -> Self { 1021 *self 1022 } 1023 } 1024 #[repr(C)] 1025 pub struct D3DDEVINFO_D3D9CACHEUTILIZATION { 1026 pub TextureCacheHitRate: f32, 1027 pub PostTransformVertexCacheHitRate: f32, 1028 } 1029 impl ::core::marker::Copy for D3DDEVINFO_D3D9CACHEUTILIZATION {} 1030 impl ::core::clone::Clone for D3DDEVINFO_D3D9CACHEUTILIZATION { clone(&self) -> Self1031 fn clone(&self) -> Self { 1032 *self 1033 } 1034 } 1035 #[repr(C)] 1036 pub struct D3DDEVINFO_D3D9INTERFACETIMINGS { 1037 pub WaitingForGPUToUseApplicationResourceTimePercent: f32, 1038 pub WaitingForGPUToAcceptMoreCommandsTimePercent: f32, 1039 pub WaitingForGPUToStayWithinLatencyTimePercent: f32, 1040 pub WaitingForGPUExclusiveResourceTimePercent: f32, 1041 pub WaitingForGPUOtherTimePercent: f32, 1042 } 1043 impl ::core::marker::Copy for D3DDEVINFO_D3D9INTERFACETIMINGS {} 1044 impl ::core::clone::Clone for D3DDEVINFO_D3D9INTERFACETIMINGS { clone(&self) -> Self1045 fn clone(&self) -> Self { 1046 *self 1047 } 1048 } 1049 #[repr(C)] 1050 pub struct D3DDEVINFO_D3D9PIPELINETIMINGS { 1051 pub VertexProcessingTimePercent: f32, 1052 pub PixelProcessingTimePercent: f32, 1053 pub OtherGPUProcessingTimePercent: f32, 1054 pub GPUIdleTimePercent: f32, 1055 } 1056 impl ::core::marker::Copy for D3DDEVINFO_D3D9PIPELINETIMINGS {} 1057 impl ::core::clone::Clone for D3DDEVINFO_D3D9PIPELINETIMINGS { clone(&self) -> Self1058 fn clone(&self) -> Self { 1059 *self 1060 } 1061 } 1062 #[repr(C)] 1063 pub struct D3DDEVINFO_D3D9STAGETIMINGS { 1064 pub MemoryProcessingPercent: f32, 1065 pub ComputationProcessingPercent: f32, 1066 } 1067 impl ::core::marker::Copy for D3DDEVINFO_D3D9STAGETIMINGS {} 1068 impl ::core::clone::Clone for D3DDEVINFO_D3D9STAGETIMINGS { clone(&self) -> Self1069 fn clone(&self) -> Self { 1070 *self 1071 } 1072 } 1073 #[repr(C)] 1074 pub struct D3DDEVINFO_D3DVERTEXSTATS { 1075 pub NumRenderedTriangles: u32, 1076 pub NumExtraClippingTriangles: u32, 1077 } 1078 impl ::core::marker::Copy for D3DDEVINFO_D3DVERTEXSTATS {} 1079 impl ::core::clone::Clone for D3DDEVINFO_D3DVERTEXSTATS { clone(&self) -> Self1080 fn clone(&self) -> Self { 1081 *self 1082 } 1083 } 1084 #[repr(C)] 1085 #[cfg(feature = "Win32_Foundation")] 1086 pub struct D3DDEVINFO_RESOURCEMANAGER { 1087 pub stats: [D3DRESOURCESTATS; 8], 1088 } 1089 #[cfg(feature = "Win32_Foundation")] 1090 impl ::core::marker::Copy for D3DDEVINFO_RESOURCEMANAGER {} 1091 #[cfg(feature = "Win32_Foundation")] 1092 impl ::core::clone::Clone for D3DDEVINFO_RESOURCEMANAGER { clone(&self) -> Self1093 fn clone(&self) -> Self { 1094 *self 1095 } 1096 } 1097 #[repr(C)] 1098 pub struct D3DDEVINFO_VCACHE { 1099 pub Pattern: u32, 1100 pub OptMethod: u32, 1101 pub CacheSize: u32, 1102 pub MagicNumber: u32, 1103 } 1104 impl ::core::marker::Copy for D3DDEVINFO_VCACHE {} 1105 impl ::core::clone::Clone for D3DDEVINFO_VCACHE { clone(&self) -> Self1106 fn clone(&self) -> Self { 1107 *self 1108 } 1109 } 1110 pub type D3DDEVTYPE = u32; 1111 pub const D3DDEVTYPE_HAL: D3DDEVTYPE = 1u32; 1112 pub const D3DDEVTYPE_REF: D3DDEVTYPE = 2u32; 1113 pub const D3DDEVTYPE_SW: D3DDEVTYPE = 3u32; 1114 pub const D3DDEVTYPE_NULLREF: D3DDEVTYPE = 4u32; 1115 pub const D3DDEVTYPE_FORCE_DWORD: D3DDEVTYPE = 2147483647u32; 1116 #[repr(C)] 1117 pub struct D3DDISPLAYMODE { 1118 pub Width: u32, 1119 pub Height: u32, 1120 pub RefreshRate: u32, 1121 pub Format: D3DFORMAT, 1122 } 1123 impl ::core::marker::Copy for D3DDISPLAYMODE {} 1124 impl ::core::clone::Clone for D3DDISPLAYMODE { clone(&self) -> Self1125 fn clone(&self) -> Self { 1126 *self 1127 } 1128 } 1129 #[repr(C)] 1130 pub struct D3DDISPLAYMODEEX { 1131 pub Size: u32, 1132 pub Width: u32, 1133 pub Height: u32, 1134 pub RefreshRate: u32, 1135 pub Format: D3DFORMAT, 1136 pub ScanLineOrdering: D3DSCANLINEORDERING, 1137 } 1138 impl ::core::marker::Copy for D3DDISPLAYMODEEX {} 1139 impl ::core::clone::Clone for D3DDISPLAYMODEEX { clone(&self) -> Self1140 fn clone(&self) -> Self { 1141 *self 1142 } 1143 } 1144 #[repr(C)] 1145 pub struct D3DDISPLAYMODEFILTER { 1146 pub Size: u32, 1147 pub Format: D3DFORMAT, 1148 pub ScanLineOrdering: D3DSCANLINEORDERING, 1149 } 1150 impl ::core::marker::Copy for D3DDISPLAYMODEFILTER {} 1151 impl ::core::clone::Clone for D3DDISPLAYMODEFILTER { clone(&self) -> Self1152 fn clone(&self) -> Self { 1153 *self 1154 } 1155 } 1156 pub type D3DDISPLAYROTATION = i32; 1157 pub const D3DDISPLAYROTATION_IDENTITY: D3DDISPLAYROTATION = 1i32; 1158 pub const D3DDISPLAYROTATION_90: D3DDISPLAYROTATION = 2i32; 1159 pub const D3DDISPLAYROTATION_180: D3DDISPLAYROTATION = 3i32; 1160 pub const D3DDISPLAYROTATION_270: D3DDISPLAYROTATION = 4i32; 1161 pub const D3DDMAPSAMPLER: u32 = 256u32; 1162 pub const D3DDTCAPS_DEC3N: i32 = 128i32; 1163 pub const D3DDTCAPS_FLOAT16_2: i32 = 256i32; 1164 pub const D3DDTCAPS_FLOAT16_4: i32 = 512i32; 1165 pub const D3DDTCAPS_SHORT2N: i32 = 4i32; 1166 pub const D3DDTCAPS_SHORT4N: i32 = 8i32; 1167 pub const D3DDTCAPS_UBYTE4: i32 = 1i32; 1168 pub const D3DDTCAPS_UBYTE4N: i32 = 2i32; 1169 pub const D3DDTCAPS_UDEC3: i32 = 64i32; 1170 pub const D3DDTCAPS_USHORT2N: i32 = 16i32; 1171 pub const D3DDTCAPS_USHORT4N: i32 = 32i32; 1172 #[repr(C)] 1173 pub struct D3DENCRYPTED_BLOCK_INFO { 1174 pub NumEncryptedBytesAtBeginning: u32, 1175 pub NumBytesInSkipPattern: u32, 1176 pub NumBytesInEncryptPattern: u32, 1177 } 1178 impl ::core::marker::Copy for D3DENCRYPTED_BLOCK_INFO {} 1179 impl ::core::clone::Clone for D3DENCRYPTED_BLOCK_INFO { clone(&self) -> Self1180 fn clone(&self) -> Self { 1181 *self 1182 } 1183 } 1184 pub const D3DENUM_NO_DRIVERVERSION: i32 = 4i32; 1185 pub const D3DENUM_WHQL_LEVEL: i32 = 2i32; 1186 pub type D3DFILLMODE = i32; 1187 pub const D3DFILL_POINT: D3DFILLMODE = 1i32; 1188 pub const D3DFILL_WIREFRAME: D3DFILLMODE = 2i32; 1189 pub const D3DFILL_SOLID: D3DFILLMODE = 3i32; 1190 pub const D3DFILL_FORCE_DWORD: D3DFILLMODE = 2147483647i32; 1191 pub const D3DFMT_A1_SURFACE_MAXHEIGHT: u32 = 2048u32; 1192 pub const D3DFMT_A1_SURFACE_MAXWIDTH: u32 = 8192u32; 1193 pub type D3DFOGMODE = i32; 1194 pub const D3DFOG_NONE: D3DFOGMODE = 0i32; 1195 pub const D3DFOG_EXP: D3DFOGMODE = 1i32; 1196 pub const D3DFOG_EXP2: D3DFOGMODE = 2i32; 1197 pub const D3DFOG_LINEAR: D3DFOGMODE = 3i32; 1198 pub const D3DFOG_FORCE_DWORD: D3DFOGMODE = 2147483647i32; 1199 pub type D3DFORMAT = u32; 1200 pub const D3DFMT_UNKNOWN: D3DFORMAT = 0u32; 1201 pub const D3DFMT_R8G8B8: D3DFORMAT = 20u32; 1202 pub const D3DFMT_A8R8G8B8: D3DFORMAT = 21u32; 1203 pub const D3DFMT_X8R8G8B8: D3DFORMAT = 22u32; 1204 pub const D3DFMT_R5G6B5: D3DFORMAT = 23u32; 1205 pub const D3DFMT_X1R5G5B5: D3DFORMAT = 24u32; 1206 pub const D3DFMT_A1R5G5B5: D3DFORMAT = 25u32; 1207 pub const D3DFMT_A4R4G4B4: D3DFORMAT = 26u32; 1208 pub const D3DFMT_R3G3B2: D3DFORMAT = 27u32; 1209 pub const D3DFMT_A8: D3DFORMAT = 28u32; 1210 pub const D3DFMT_A8R3G3B2: D3DFORMAT = 29u32; 1211 pub const D3DFMT_X4R4G4B4: D3DFORMAT = 30u32; 1212 pub const D3DFMT_A2B10G10R10: D3DFORMAT = 31u32; 1213 pub const D3DFMT_A8B8G8R8: D3DFORMAT = 32u32; 1214 pub const D3DFMT_X8B8G8R8: D3DFORMAT = 33u32; 1215 pub const D3DFMT_G16R16: D3DFORMAT = 34u32; 1216 pub const D3DFMT_A2R10G10B10: D3DFORMAT = 35u32; 1217 pub const D3DFMT_A16B16G16R16: D3DFORMAT = 36u32; 1218 pub const D3DFMT_A8P8: D3DFORMAT = 40u32; 1219 pub const D3DFMT_P8: D3DFORMAT = 41u32; 1220 pub const D3DFMT_L8: D3DFORMAT = 50u32; 1221 pub const D3DFMT_A8L8: D3DFORMAT = 51u32; 1222 pub const D3DFMT_A4L4: D3DFORMAT = 52u32; 1223 pub const D3DFMT_V8U8: D3DFORMAT = 60u32; 1224 pub const D3DFMT_L6V5U5: D3DFORMAT = 61u32; 1225 pub const D3DFMT_X8L8V8U8: D3DFORMAT = 62u32; 1226 pub const D3DFMT_Q8W8V8U8: D3DFORMAT = 63u32; 1227 pub const D3DFMT_V16U16: D3DFORMAT = 64u32; 1228 pub const D3DFMT_A2W10V10U10: D3DFORMAT = 67u32; 1229 pub const D3DFMT_UYVY: D3DFORMAT = 1498831189u32; 1230 pub const D3DFMT_R8G8_B8G8: D3DFORMAT = 1195525970u32; 1231 pub const D3DFMT_YUY2: D3DFORMAT = 844715353u32; 1232 pub const D3DFMT_G8R8_G8B8: D3DFORMAT = 1111970375u32; 1233 pub const D3DFMT_DXT1: D3DFORMAT = 827611204u32; 1234 pub const D3DFMT_DXT2: D3DFORMAT = 844388420u32; 1235 pub const D3DFMT_DXT3: D3DFORMAT = 861165636u32; 1236 pub const D3DFMT_DXT4: D3DFORMAT = 877942852u32; 1237 pub const D3DFMT_DXT5: D3DFORMAT = 894720068u32; 1238 pub const D3DFMT_D16_LOCKABLE: D3DFORMAT = 70u32; 1239 pub const D3DFMT_D32: D3DFORMAT = 71u32; 1240 pub const D3DFMT_D15S1: D3DFORMAT = 73u32; 1241 pub const D3DFMT_D24S8: D3DFORMAT = 75u32; 1242 pub const D3DFMT_D24X8: D3DFORMAT = 77u32; 1243 pub const D3DFMT_D24X4S4: D3DFORMAT = 79u32; 1244 pub const D3DFMT_D16: D3DFORMAT = 80u32; 1245 pub const D3DFMT_D32F_LOCKABLE: D3DFORMAT = 82u32; 1246 pub const D3DFMT_D24FS8: D3DFORMAT = 83u32; 1247 pub const D3DFMT_D32_LOCKABLE: D3DFORMAT = 84u32; 1248 pub const D3DFMT_S8_LOCKABLE: D3DFORMAT = 85u32; 1249 pub const D3DFMT_L16: D3DFORMAT = 81u32; 1250 pub const D3DFMT_VERTEXDATA: D3DFORMAT = 100u32; 1251 pub const D3DFMT_INDEX16: D3DFORMAT = 101u32; 1252 pub const D3DFMT_INDEX32: D3DFORMAT = 102u32; 1253 pub const D3DFMT_Q16W16V16U16: D3DFORMAT = 110u32; 1254 pub const D3DFMT_MULTI2_ARGB8: D3DFORMAT = 827606349u32; 1255 pub const D3DFMT_R16F: D3DFORMAT = 111u32; 1256 pub const D3DFMT_G16R16F: D3DFORMAT = 112u32; 1257 pub const D3DFMT_A16B16G16R16F: D3DFORMAT = 113u32; 1258 pub const D3DFMT_R32F: D3DFORMAT = 114u32; 1259 pub const D3DFMT_G32R32F: D3DFORMAT = 115u32; 1260 pub const D3DFMT_A32B32G32R32F: D3DFORMAT = 116u32; 1261 pub const D3DFMT_CxV8U8: D3DFORMAT = 117u32; 1262 pub const D3DFMT_A1: D3DFORMAT = 118u32; 1263 pub const D3DFMT_A2B10G10R10_XR_BIAS: D3DFORMAT = 119u32; 1264 pub const D3DFMT_BINARYBUFFER: D3DFORMAT = 199u32; 1265 pub const D3DFMT_FORCE_DWORD: D3DFORMAT = 2147483647u32; 1266 pub const D3DFVFCAPS_PSIZE: i32 = 1048576i32; 1267 pub const D3DFVF_LASTBETA_D3DCOLOR: u32 = 32768u32; 1268 pub const D3DFVF_LASTBETA_UBYTE4: u32 = 4096u32; 1269 pub const D3DFVF_PSIZE: u32 = 32u32; 1270 pub const D3DFVF_XYZW: u32 = 16386u32; 1271 #[repr(C)] 1272 pub struct D3DGAMMARAMP { 1273 pub red: [u16; 256], 1274 pub green: [u16; 256], 1275 pub blue: [u16; 256], 1276 } 1277 impl ::core::marker::Copy for D3DGAMMARAMP {} 1278 impl ::core::clone::Clone for D3DGAMMARAMP { clone(&self) -> Self1279 fn clone(&self) -> Self { 1280 *self 1281 } 1282 } 1283 pub const D3DGETDATA_FLUSH: u32 = 1u32; 1284 #[repr(C)] 1285 pub struct D3DINDEXBUFFER_DESC { 1286 pub Format: D3DFORMAT, 1287 pub Type: D3DRESOURCETYPE, 1288 pub Usage: u32, 1289 pub Pool: D3DPOOL, 1290 pub Size: u32, 1291 } 1292 impl ::core::marker::Copy for D3DINDEXBUFFER_DESC {} 1293 impl ::core::clone::Clone for D3DINDEXBUFFER_DESC { clone(&self) -> Self1294 fn clone(&self) -> Self { 1295 *self 1296 } 1297 } 1298 pub const D3DISSUE_BEGIN: u32 = 2u32; 1299 pub const D3DISSUE_END: u32 = 1u32; 1300 pub const D3DKEYEXCHANGE_DXVA: ::windows_sys::core::GUID = ::windows_sys::core::GUID { 1301 data1: 1137932124, 1302 data2: 14565, 1303 data3: 18724, 1304 data4: [141, 134, 211, 252, 207, 21, 62, 155], 1305 }; 1306 pub const D3DKEYEXCHANGE_RSAES_OAEP: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3247741077, data2: 55082, data3: 18973, data4: [142, 93, 237, 133, 125, 23, 21, 32] }; 1307 #[repr(C)] 1308 #[cfg(feature = "Win32_Graphics_Direct3D")] 1309 pub struct D3DLIGHT9 { 1310 pub Type: D3DLIGHTTYPE, 1311 pub Diffuse: D3DCOLORVALUE, 1312 pub Specular: D3DCOLORVALUE, 1313 pub Ambient: D3DCOLORVALUE, 1314 pub Position: super::Direct3D::D3DVECTOR, 1315 pub Direction: super::Direct3D::D3DVECTOR, 1316 pub Range: f32, 1317 pub Falloff: f32, 1318 pub Attenuation0: f32, 1319 pub Attenuation1: f32, 1320 pub Attenuation2: f32, 1321 pub Theta: f32, 1322 pub Phi: f32, 1323 } 1324 #[cfg(feature = "Win32_Graphics_Direct3D")] 1325 impl ::core::marker::Copy for D3DLIGHT9 {} 1326 #[cfg(feature = "Win32_Graphics_Direct3D")] 1327 impl ::core::clone::Clone for D3DLIGHT9 { clone(&self) -> Self1328 fn clone(&self) -> Self { 1329 *self 1330 } 1331 } 1332 pub type D3DLIGHTTYPE = i32; 1333 pub const D3DLIGHT_POINT: D3DLIGHTTYPE = 1i32; 1334 pub const D3DLIGHT_SPOT: D3DLIGHTTYPE = 2i32; 1335 pub const D3DLIGHT_DIRECTIONAL: D3DLIGHTTYPE = 3i32; 1336 pub const D3DLIGHT_FORCE_DWORD: D3DLIGHTTYPE = 2147483647i32; 1337 pub const D3DLINECAPS_ALPHACMP: i32 = 8i32; 1338 pub const D3DLINECAPS_ANTIALIAS: i32 = 32i32; 1339 pub const D3DLINECAPS_BLEND: i32 = 4i32; 1340 pub const D3DLINECAPS_FOG: i32 = 16i32; 1341 pub const D3DLINECAPS_TEXTURE: i32 = 1i32; 1342 pub const D3DLINECAPS_ZTEST: i32 = 2i32; 1343 #[repr(C)] 1344 pub struct D3DLOCKED_BOX { 1345 pub RowPitch: i32, 1346 pub SlicePitch: i32, 1347 pub pBits: *mut ::core::ffi::c_void, 1348 } 1349 impl ::core::marker::Copy for D3DLOCKED_BOX {} 1350 impl ::core::clone::Clone for D3DLOCKED_BOX { clone(&self) -> Self1351 fn clone(&self) -> Self { 1352 *self 1353 } 1354 } 1355 #[repr(C)] 1356 pub struct D3DLOCKED_RECT { 1357 pub Pitch: i32, 1358 pub pBits: *mut ::core::ffi::c_void, 1359 } 1360 impl ::core::marker::Copy for D3DLOCKED_RECT {} 1361 impl ::core::clone::Clone for D3DLOCKED_RECT { clone(&self) -> Self1362 fn clone(&self) -> Self { 1363 *self 1364 } 1365 } 1366 pub const D3DLOCK_DISCARD: i32 = 8192i32; 1367 pub const D3DLOCK_DONOTWAIT: i32 = 16384i32; 1368 pub const D3DLOCK_NOOVERWRITE: i32 = 4096i32; 1369 pub const D3DLOCK_NOSYSLOCK: i32 = 2048i32; 1370 pub const D3DLOCK_NO_DIRTY_UPDATE: i32 = 32768i32; 1371 pub const D3DLOCK_READONLY: i32 = 16i32; 1372 #[repr(C)] 1373 pub struct D3DMATERIAL9 { 1374 pub Diffuse: D3DCOLORVALUE, 1375 pub Ambient: D3DCOLORVALUE, 1376 pub Specular: D3DCOLORVALUE, 1377 pub Emissive: D3DCOLORVALUE, 1378 pub Power: f32, 1379 } 1380 impl ::core::marker::Copy for D3DMATERIAL9 {} 1381 impl ::core::clone::Clone for D3DMATERIAL9 { clone(&self) -> Self1382 fn clone(&self) -> Self { 1383 *self 1384 } 1385 } 1386 pub type D3DMATERIALCOLORSOURCE = i32; 1387 pub const D3DMCS_MATERIAL: D3DMATERIALCOLORSOURCE = 0i32; 1388 pub const D3DMCS_COLOR1: D3DMATERIALCOLORSOURCE = 1i32; 1389 pub const D3DMCS_COLOR2: D3DMATERIALCOLORSOURCE = 2i32; 1390 pub const D3DMCS_FORCE_DWORD: D3DMATERIALCOLORSOURCE = 2147483647i32; 1391 pub const D3DMAX30SHADERINSTRUCTIONS: u32 = 32768u32; 1392 #[repr(C)] 1393 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 1394 pub struct D3DMEMORYPRESSURE { 1395 pub BytesEvictedFromProcess: u64, 1396 pub SizeOfInefficientAllocation: u64, 1397 pub LevelOfEfficiency: u32, 1398 } 1399 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 1400 impl ::core::marker::Copy for D3DMEMORYPRESSURE {} 1401 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 1402 impl ::core::clone::Clone for D3DMEMORYPRESSURE { clone(&self) -> Self1403 fn clone(&self) -> Self { 1404 *self 1405 } 1406 } 1407 #[repr(C, packed(4))] 1408 #[cfg(any(target_arch = "x86",))] 1409 pub struct D3DMEMORYPRESSURE { 1410 pub BytesEvictedFromProcess: u64, 1411 pub SizeOfInefficientAllocation: u64, 1412 pub LevelOfEfficiency: u32, 1413 } 1414 #[cfg(any(target_arch = "x86",))] 1415 impl ::core::marker::Copy for D3DMEMORYPRESSURE {} 1416 #[cfg(any(target_arch = "x86",))] 1417 impl ::core::clone::Clone for D3DMEMORYPRESSURE { clone(&self) -> Self1418 fn clone(&self) -> Self { 1419 *self 1420 } 1421 } 1422 pub const D3DMIN30SHADERINSTRUCTIONS: u32 = 512u32; 1423 pub type D3DMULTISAMPLE_TYPE = i32; 1424 pub const D3DMULTISAMPLE_NONE: D3DMULTISAMPLE_TYPE = 0i32; 1425 pub const D3DMULTISAMPLE_NONMASKABLE: D3DMULTISAMPLE_TYPE = 1i32; 1426 pub const D3DMULTISAMPLE_2_SAMPLES: D3DMULTISAMPLE_TYPE = 2i32; 1427 pub const D3DMULTISAMPLE_3_SAMPLES: D3DMULTISAMPLE_TYPE = 3i32; 1428 pub const D3DMULTISAMPLE_4_SAMPLES: D3DMULTISAMPLE_TYPE = 4i32; 1429 pub const D3DMULTISAMPLE_5_SAMPLES: D3DMULTISAMPLE_TYPE = 5i32; 1430 pub const D3DMULTISAMPLE_6_SAMPLES: D3DMULTISAMPLE_TYPE = 6i32; 1431 pub const D3DMULTISAMPLE_7_SAMPLES: D3DMULTISAMPLE_TYPE = 7i32; 1432 pub const D3DMULTISAMPLE_8_SAMPLES: D3DMULTISAMPLE_TYPE = 8i32; 1433 pub const D3DMULTISAMPLE_9_SAMPLES: D3DMULTISAMPLE_TYPE = 9i32; 1434 pub const D3DMULTISAMPLE_10_SAMPLES: D3DMULTISAMPLE_TYPE = 10i32; 1435 pub const D3DMULTISAMPLE_11_SAMPLES: D3DMULTISAMPLE_TYPE = 11i32; 1436 pub const D3DMULTISAMPLE_12_SAMPLES: D3DMULTISAMPLE_TYPE = 12i32; 1437 pub const D3DMULTISAMPLE_13_SAMPLES: D3DMULTISAMPLE_TYPE = 13i32; 1438 pub const D3DMULTISAMPLE_14_SAMPLES: D3DMULTISAMPLE_TYPE = 14i32; 1439 pub const D3DMULTISAMPLE_15_SAMPLES: D3DMULTISAMPLE_TYPE = 15i32; 1440 pub const D3DMULTISAMPLE_16_SAMPLES: D3DMULTISAMPLE_TYPE = 16i32; 1441 pub const D3DMULTISAMPLE_FORCE_DWORD: D3DMULTISAMPLE_TYPE = 2147483647i32; 1442 pub const D3DOVERLAYCAPS_FULLRANGERGB: u32 = 1u32; 1443 pub const D3DOVERLAYCAPS_LIMITEDRANGERGB: u32 = 2u32; 1444 pub const D3DOVERLAYCAPS_STRETCHX: u32 = 64u32; 1445 pub const D3DOVERLAYCAPS_STRETCHY: u32 = 128u32; 1446 pub const D3DOVERLAYCAPS_YCbCr_BT601: u32 = 4u32; 1447 pub const D3DOVERLAYCAPS_YCbCr_BT601_xvYCC: u32 = 16u32; 1448 pub const D3DOVERLAYCAPS_YCbCr_BT709: u32 = 8u32; 1449 pub const D3DOVERLAYCAPS_YCbCr_BT709_xvYCC: u32 = 32u32; 1450 pub type D3DPATCHEDGESTYLE = i32; 1451 pub const D3DPATCHEDGE_DISCRETE: D3DPATCHEDGESTYLE = 0i32; 1452 pub const D3DPATCHEDGE_CONTINUOUS: D3DPATCHEDGESTYLE = 1i32; 1453 pub const D3DPATCHEDGE_FORCE_DWORD: D3DPATCHEDGESTYLE = 2147483647i32; 1454 pub const D3DPBLENDCAPS_BLENDFACTOR: i32 = 8192i32; 1455 pub const D3DPBLENDCAPS_INVSRCCOLOR2: i32 = 32768i32; 1456 pub const D3DPBLENDCAPS_SRCCOLOR2: i32 = 16384i32; 1457 pub const D3DPMISCCAPS_BLENDOP: i32 = 2048i32; 1458 pub const D3DPMISCCAPS_CLIPPLANESCALEDPOINTS: i32 = 256i32; 1459 pub const D3DPMISCCAPS_CLIPTLVERTS: i32 = 512i32; 1460 pub const D3DPMISCCAPS_COLORWRITEENABLE: i32 = 128i32; 1461 pub const D3DPMISCCAPS_FOGANDSPECULARALPHA: i32 = 65536i32; 1462 pub const D3DPMISCCAPS_FOGVERTEXCLAMPED: i32 = 1048576i32; 1463 pub const D3DPMISCCAPS_INDEPENDENTWRITEMASKS: i32 = 16384i32; 1464 pub const D3DPMISCCAPS_MRTINDEPENDENTBITDEPTHS: i32 = 262144i32; 1465 pub const D3DPMISCCAPS_MRTPOSTPIXELSHADERBLENDING: i32 = 524288i32; 1466 pub const D3DPMISCCAPS_NULLREFERENCE: i32 = 4096i32; 1467 pub const D3DPMISCCAPS_PERSTAGECONSTANT: i32 = 32768i32; 1468 pub const D3DPMISCCAPS_POSTBLENDSRGBCONVERT: i32 = 2097152i32; 1469 pub const D3DPMISCCAPS_SEPARATEALPHABLEND: i32 = 131072i32; 1470 pub const D3DPMISCCAPS_TSSARGTEMP: i32 = 1024i32; 1471 pub type D3DPOOL = u32; 1472 pub const D3DPOOL_DEFAULT: D3DPOOL = 0u32; 1473 pub const D3DPOOL_MANAGED: D3DPOOL = 1u32; 1474 pub const D3DPOOL_SYSTEMMEM: D3DPOOL = 2u32; 1475 pub const D3DPOOL_SCRATCH: D3DPOOL = 3u32; 1476 pub const D3DPOOL_FORCE_DWORD: D3DPOOL = 2147483647u32; 1477 pub const D3DPRASTERCAPS_COLORPERSPECTIVE: i32 = 4194304i32; 1478 pub const D3DPRASTERCAPS_DEPTHBIAS: i32 = 67108864i32; 1479 pub const D3DPRASTERCAPS_MULTISAMPLE_TOGGLE: i32 = 134217728i32; 1480 pub const D3DPRASTERCAPS_SCISSORTEST: i32 = 16777216i32; 1481 pub const D3DPRASTERCAPS_SLOPESCALEDEPTHBIAS: i32 = 33554432i32; 1482 pub const D3DPRESENTFLAG_DEVICECLIP: u32 = 4u32; 1483 pub const D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL: u32 = 2u32; 1484 pub const D3DPRESENTFLAG_LOCKABLE_BACKBUFFER: u32 = 1u32; 1485 pub const D3DPRESENTFLAG_NOAUTOROTATE: u32 = 32u32; 1486 pub const D3DPRESENTFLAG_OVERLAY_LIMITEDRGB: u32 = 128u32; 1487 pub const D3DPRESENTFLAG_OVERLAY_YCbCr_BT709: u32 = 256u32; 1488 pub const D3DPRESENTFLAG_OVERLAY_YCbCr_xvYCC: u32 = 512u32; 1489 pub const D3DPRESENTFLAG_RESTRICTED_CONTENT: u32 = 1024u32; 1490 pub const D3DPRESENTFLAG_RESTRICT_SHARED_RESOURCE_DRIVER: u32 = 2048u32; 1491 pub const D3DPRESENTFLAG_UNPRUNEDMODE: u32 = 64u32; 1492 pub const D3DPRESENTFLAG_VIDEO: u32 = 16u32; 1493 #[repr(C)] 1494 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 1495 pub struct D3DPRESENTSTATS { 1496 pub PresentCount: u32, 1497 pub PresentRefreshCount: u32, 1498 pub SyncRefreshCount: u32, 1499 pub SyncQPCTime: i64, 1500 pub SyncGPUTime: i64, 1501 } 1502 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 1503 impl ::core::marker::Copy for D3DPRESENTSTATS {} 1504 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))] 1505 impl ::core::clone::Clone for D3DPRESENTSTATS { clone(&self) -> Self1506 fn clone(&self) -> Self { 1507 *self 1508 } 1509 } 1510 #[repr(C, packed(4))] 1511 #[cfg(any(target_arch = "x86",))] 1512 pub struct D3DPRESENTSTATS { 1513 pub PresentCount: u32, 1514 pub PresentRefreshCount: u32, 1515 pub SyncRefreshCount: u32, 1516 pub SyncQPCTime: i64, 1517 pub SyncGPUTime: i64, 1518 } 1519 #[cfg(any(target_arch = "x86",))] 1520 impl ::core::marker::Copy for D3DPRESENTSTATS {} 1521 #[cfg(any(target_arch = "x86",))] 1522 impl ::core::clone::Clone for D3DPRESENTSTATS { clone(&self) -> Self1523 fn clone(&self) -> Self { 1524 *self 1525 } 1526 } 1527 pub const D3DPRESENT_BACK_BUFFERS_MAX: i32 = 3i32; 1528 pub const D3DPRESENT_BACK_BUFFERS_MAX_EX: i32 = 30i32; 1529 pub const D3DPRESENT_DONOTFLIP: i32 = 4i32; 1530 pub const D3DPRESENT_DONOTWAIT: i32 = 1i32; 1531 pub const D3DPRESENT_FLIPRESTART: i32 = 8i32; 1532 pub const D3DPRESENT_FORCEIMMEDIATE: i32 = 256i32; 1533 pub const D3DPRESENT_HIDEOVERLAY: i32 = 64i32; 1534 pub const D3DPRESENT_INTERVAL_DEFAULT: i32 = 0i32; 1535 pub const D3DPRESENT_INTERVAL_FOUR: i32 = 8i32; 1536 pub const D3DPRESENT_INTERVAL_IMMEDIATE: i32 = -2147483648i32; 1537 pub const D3DPRESENT_INTERVAL_ONE: i32 = 1i32; 1538 pub const D3DPRESENT_INTERVAL_THREE: i32 = 4i32; 1539 pub const D3DPRESENT_INTERVAL_TWO: i32 = 2i32; 1540 pub const D3DPRESENT_LINEAR_CONTENT: i32 = 2i32; 1541 #[repr(C)] 1542 #[cfg(feature = "Win32_Foundation")] 1543 pub struct D3DPRESENT_PARAMETERS { 1544 pub BackBufferWidth: u32, 1545 pub BackBufferHeight: u32, 1546 pub BackBufferFormat: D3DFORMAT, 1547 pub BackBufferCount: u32, 1548 pub MultiSampleType: D3DMULTISAMPLE_TYPE, 1549 pub MultiSampleQuality: u32, 1550 pub SwapEffect: D3DSWAPEFFECT, 1551 pub hDeviceWindow: super::super::Foundation::HWND, 1552 pub Windowed: super::super::Foundation::BOOL, 1553 pub EnableAutoDepthStencil: super::super::Foundation::BOOL, 1554 pub AutoDepthStencilFormat: D3DFORMAT, 1555 pub Flags: u32, 1556 pub FullScreen_RefreshRateInHz: u32, 1557 pub PresentationInterval: u32, 1558 } 1559 #[cfg(feature = "Win32_Foundation")] 1560 impl ::core::marker::Copy for D3DPRESENT_PARAMETERS {} 1561 #[cfg(feature = "Win32_Foundation")] 1562 impl ::core::clone::Clone for D3DPRESENT_PARAMETERS { clone(&self) -> Self1563 fn clone(&self) -> Self { 1564 *self 1565 } 1566 } 1567 pub const D3DPRESENT_RATE_DEFAULT: u32 = 0u32; 1568 pub const D3DPRESENT_UPDATECOLORKEY: i32 = 128i32; 1569 pub const D3DPRESENT_UPDATEOVERLAYONLY: i32 = 32i32; 1570 pub const D3DPRESENT_VIDEO_RESTRICT_TO_MONITOR: i32 = 16i32; 1571 pub type D3DPRIMITIVETYPE = i32; 1572 pub const D3DPT_POINTLIST: D3DPRIMITIVETYPE = 1i32; 1573 pub const D3DPT_LINELIST: D3DPRIMITIVETYPE = 2i32; 1574 pub const D3DPT_LINESTRIP: D3DPRIMITIVETYPE = 3i32; 1575 pub const D3DPT_TRIANGLELIST: D3DPRIMITIVETYPE = 4i32; 1576 pub const D3DPT_TRIANGLESTRIP: D3DPRIMITIVETYPE = 5i32; 1577 pub const D3DPT_TRIANGLEFAN: D3DPRIMITIVETYPE = 6i32; 1578 pub const D3DPT_FORCE_DWORD: D3DPRIMITIVETYPE = 2147483647i32; 1579 pub const D3DPS20CAPS_ARBITRARYSWIZZLE: u32 = 1u32; 1580 pub const D3DPS20CAPS_GRADIENTINSTRUCTIONS: u32 = 2u32; 1581 pub const D3DPS20CAPS_NODEPENDENTREADLIMIT: u32 = 8u32; 1582 pub const D3DPS20CAPS_NOTEXINSTRUCTIONLIMIT: u32 = 16u32; 1583 pub const D3DPS20CAPS_PREDICATION: u32 = 4u32; 1584 pub const D3DPS20_MAX_DYNAMICFLOWCONTROLDEPTH: u32 = 24u32; 1585 pub const D3DPS20_MAX_NUMINSTRUCTIONSLOTS: u32 = 512u32; 1586 pub const D3DPS20_MAX_NUMTEMPS: u32 = 32u32; 1587 pub const D3DPS20_MAX_STATICFLOWCONTROLDEPTH: u32 = 4u32; 1588 pub const D3DPS20_MIN_DYNAMICFLOWCONTROLDEPTH: u32 = 0u32; 1589 pub const D3DPS20_MIN_NUMINSTRUCTIONSLOTS: u32 = 96u32; 1590 pub const D3DPS20_MIN_NUMTEMPS: u32 = 12u32; 1591 pub const D3DPS20_MIN_STATICFLOWCONTROLDEPTH: u32 = 0u32; 1592 #[repr(C)] 1593 pub struct D3DPSHADERCAPS2_0 { 1594 pub Caps: u32, 1595 pub DynamicFlowControlDepth: i32, 1596 pub NumTemps: i32, 1597 pub StaticFlowControlDepth: i32, 1598 pub NumInstructionSlots: i32, 1599 } 1600 impl ::core::marker::Copy for D3DPSHADERCAPS2_0 {} 1601 impl ::core::clone::Clone for D3DPSHADERCAPS2_0 { clone(&self) -> Self1602 fn clone(&self) -> Self { 1603 *self 1604 } 1605 } 1606 pub const D3DPTADDRESSCAPS_MIRRORONCE: i32 = 32i32; 1607 pub const D3DPTEXTURECAPS_CUBEMAP_POW2: i32 = 131072i32; 1608 pub const D3DPTEXTURECAPS_MIPCUBEMAP: i32 = 65536i32; 1609 pub const D3DPTEXTURECAPS_MIPMAP: i32 = 16384i32; 1610 pub const D3DPTEXTURECAPS_MIPVOLUMEMAP: i32 = 32768i32; 1611 pub const D3DPTEXTURECAPS_NOPROJECTEDBUMPENV: i32 = 2097152i32; 1612 pub const D3DPTEXTURECAPS_VOLUMEMAP: i32 = 8192i32; 1613 pub const D3DPTEXTURECAPS_VOLUMEMAP_POW2: i32 = 262144i32; 1614 pub const D3DPTFILTERCAPS_CONVOLUTIONMONO: i32 = 262144i32; 1615 pub const D3DPTFILTERCAPS_MAGFGAUSSIANQUAD: i32 = 268435456i32; 1616 pub const D3DPTFILTERCAPS_MAGFPYRAMIDALQUAD: i32 = 134217728i32; 1617 pub const D3DPTFILTERCAPS_MINFGAUSSIANQUAD: i32 = 4096i32; 1618 pub const D3DPTFILTERCAPS_MINFPYRAMIDALQUAD: i32 = 2048i32; 1619 pub type D3DQUERYTYPE = i32; 1620 pub const D3DQUERYTYPE_VCACHE: D3DQUERYTYPE = 4i32; 1621 pub const D3DQUERYTYPE_RESOURCEMANAGER: D3DQUERYTYPE = 5i32; 1622 pub const D3DQUERYTYPE_VERTEXSTATS: D3DQUERYTYPE = 6i32; 1623 pub const D3DQUERYTYPE_EVENT: D3DQUERYTYPE = 8i32; 1624 pub const D3DQUERYTYPE_OCCLUSION: D3DQUERYTYPE = 9i32; 1625 pub const D3DQUERYTYPE_TIMESTAMP: D3DQUERYTYPE = 10i32; 1626 pub const D3DQUERYTYPE_TIMESTAMPDISJOINT: D3DQUERYTYPE = 11i32; 1627 pub const D3DQUERYTYPE_TIMESTAMPFREQ: D3DQUERYTYPE = 12i32; 1628 pub const D3DQUERYTYPE_PIPELINETIMINGS: D3DQUERYTYPE = 13i32; 1629 pub const D3DQUERYTYPE_INTERFACETIMINGS: D3DQUERYTYPE = 14i32; 1630 pub const D3DQUERYTYPE_VERTEXTIMINGS: D3DQUERYTYPE = 15i32; 1631 pub const D3DQUERYTYPE_PIXELTIMINGS: D3DQUERYTYPE = 16i32; 1632 pub const D3DQUERYTYPE_BANDWIDTHTIMINGS: D3DQUERYTYPE = 17i32; 1633 pub const D3DQUERYTYPE_CACHEUTILIZATION: D3DQUERYTYPE = 18i32; 1634 pub const D3DQUERYTYPE_MEMORYPRESSURE: D3DQUERYTYPE = 19i32; 1635 #[repr(C)] 1636 pub struct D3DRANGE { 1637 pub Offset: u32, 1638 pub Size: u32, 1639 } 1640 impl ::core::marker::Copy for D3DRANGE {} 1641 impl ::core::clone::Clone for D3DRANGE { clone(&self) -> Self1642 fn clone(&self) -> Self { 1643 *self 1644 } 1645 } 1646 #[repr(C)] 1647 #[cfg(feature = "Win32_Foundation")] 1648 pub struct D3DRASTER_STATUS { 1649 pub InVBlank: super::super::Foundation::BOOL, 1650 pub ScanLine: u32, 1651 } 1652 #[cfg(feature = "Win32_Foundation")] 1653 impl ::core::marker::Copy for D3DRASTER_STATUS {} 1654 #[cfg(feature = "Win32_Foundation")] 1655 impl ::core::clone::Clone for D3DRASTER_STATUS { clone(&self) -> Self1656 fn clone(&self) -> Self { 1657 *self 1658 } 1659 } 1660 #[repr(C)] 1661 pub struct D3DRECT { 1662 pub x1: i32, 1663 pub y1: i32, 1664 pub x2: i32, 1665 pub y2: i32, 1666 } 1667 impl ::core::marker::Copy for D3DRECT {} 1668 impl ::core::clone::Clone for D3DRECT { clone(&self) -> Self1669 fn clone(&self) -> Self { 1670 *self 1671 } 1672 } 1673 #[repr(C)] 1674 pub struct D3DRECTPATCH_INFO { 1675 pub StartVertexOffsetWidth: u32, 1676 pub StartVertexOffsetHeight: u32, 1677 pub Width: u32, 1678 pub Height: u32, 1679 pub Stride: u32, 1680 pub Basis: D3DBASISTYPE, 1681 pub Degree: D3DDEGREETYPE, 1682 } 1683 impl ::core::marker::Copy for D3DRECTPATCH_INFO {} 1684 impl ::core::clone::Clone for D3DRECTPATCH_INFO { clone(&self) -> Self1685 fn clone(&self) -> Self { 1686 *self 1687 } 1688 } 1689 pub type D3DRENDERSTATETYPE = i32; 1690 pub const D3DRS_ZENABLE: D3DRENDERSTATETYPE = 7i32; 1691 pub const D3DRS_FILLMODE: D3DRENDERSTATETYPE = 8i32; 1692 pub const D3DRS_SHADEMODE: D3DRENDERSTATETYPE = 9i32; 1693 pub const D3DRS_ZWRITEENABLE: D3DRENDERSTATETYPE = 14i32; 1694 pub const D3DRS_ALPHATESTENABLE: D3DRENDERSTATETYPE = 15i32; 1695 pub const D3DRS_LASTPIXEL: D3DRENDERSTATETYPE = 16i32; 1696 pub const D3DRS_SRCBLEND: D3DRENDERSTATETYPE = 19i32; 1697 pub const D3DRS_DESTBLEND: D3DRENDERSTATETYPE = 20i32; 1698 pub const D3DRS_CULLMODE: D3DRENDERSTATETYPE = 22i32; 1699 pub const D3DRS_ZFUNC: D3DRENDERSTATETYPE = 23i32; 1700 pub const D3DRS_ALPHAREF: D3DRENDERSTATETYPE = 24i32; 1701 pub const D3DRS_ALPHAFUNC: D3DRENDERSTATETYPE = 25i32; 1702 pub const D3DRS_DITHERENABLE: D3DRENDERSTATETYPE = 26i32; 1703 pub const D3DRS_ALPHABLENDENABLE: D3DRENDERSTATETYPE = 27i32; 1704 pub const D3DRS_FOGENABLE: D3DRENDERSTATETYPE = 28i32; 1705 pub const D3DRS_SPECULARENABLE: D3DRENDERSTATETYPE = 29i32; 1706 pub const D3DRS_FOGCOLOR: D3DRENDERSTATETYPE = 34i32; 1707 pub const D3DRS_FOGTABLEMODE: D3DRENDERSTATETYPE = 35i32; 1708 pub const D3DRS_FOGSTART: D3DRENDERSTATETYPE = 36i32; 1709 pub const D3DRS_FOGEND: D3DRENDERSTATETYPE = 37i32; 1710 pub const D3DRS_FOGDENSITY: D3DRENDERSTATETYPE = 38i32; 1711 pub const D3DRS_RANGEFOGENABLE: D3DRENDERSTATETYPE = 48i32; 1712 pub const D3DRS_STENCILENABLE: D3DRENDERSTATETYPE = 52i32; 1713 pub const D3DRS_STENCILFAIL: D3DRENDERSTATETYPE = 53i32; 1714 pub const D3DRS_STENCILZFAIL: D3DRENDERSTATETYPE = 54i32; 1715 pub const D3DRS_STENCILPASS: D3DRENDERSTATETYPE = 55i32; 1716 pub const D3DRS_STENCILFUNC: D3DRENDERSTATETYPE = 56i32; 1717 pub const D3DRS_STENCILREF: D3DRENDERSTATETYPE = 57i32; 1718 pub const D3DRS_STENCILMASK: D3DRENDERSTATETYPE = 58i32; 1719 pub const D3DRS_STENCILWRITEMASK: D3DRENDERSTATETYPE = 59i32; 1720 pub const D3DRS_TEXTUREFACTOR: D3DRENDERSTATETYPE = 60i32; 1721 pub const D3DRS_WRAP0: D3DRENDERSTATETYPE = 128i32; 1722 pub const D3DRS_WRAP1: D3DRENDERSTATETYPE = 129i32; 1723 pub const D3DRS_WRAP2: D3DRENDERSTATETYPE = 130i32; 1724 pub const D3DRS_WRAP3: D3DRENDERSTATETYPE = 131i32; 1725 pub const D3DRS_WRAP4: D3DRENDERSTATETYPE = 132i32; 1726 pub const D3DRS_WRAP5: D3DRENDERSTATETYPE = 133i32; 1727 pub const D3DRS_WRAP6: D3DRENDERSTATETYPE = 134i32; 1728 pub const D3DRS_WRAP7: D3DRENDERSTATETYPE = 135i32; 1729 pub const D3DRS_CLIPPING: D3DRENDERSTATETYPE = 136i32; 1730 pub const D3DRS_LIGHTING: D3DRENDERSTATETYPE = 137i32; 1731 pub const D3DRS_AMBIENT: D3DRENDERSTATETYPE = 139i32; 1732 pub const D3DRS_FOGVERTEXMODE: D3DRENDERSTATETYPE = 140i32; 1733 pub const D3DRS_COLORVERTEX: D3DRENDERSTATETYPE = 141i32; 1734 pub const D3DRS_LOCALVIEWER: D3DRENDERSTATETYPE = 142i32; 1735 pub const D3DRS_NORMALIZENORMALS: D3DRENDERSTATETYPE = 143i32; 1736 pub const D3DRS_DIFFUSEMATERIALSOURCE: D3DRENDERSTATETYPE = 145i32; 1737 pub const D3DRS_SPECULARMATERIALSOURCE: D3DRENDERSTATETYPE = 146i32; 1738 pub const D3DRS_AMBIENTMATERIALSOURCE: D3DRENDERSTATETYPE = 147i32; 1739 pub const D3DRS_EMISSIVEMATERIALSOURCE: D3DRENDERSTATETYPE = 148i32; 1740 pub const D3DRS_VERTEXBLEND: D3DRENDERSTATETYPE = 151i32; 1741 pub const D3DRS_CLIPPLANEENABLE: D3DRENDERSTATETYPE = 152i32; 1742 pub const D3DRS_POINTSIZE: D3DRENDERSTATETYPE = 154i32; 1743 pub const D3DRS_POINTSIZE_MIN: D3DRENDERSTATETYPE = 155i32; 1744 pub const D3DRS_POINTSPRITEENABLE: D3DRENDERSTATETYPE = 156i32; 1745 pub const D3DRS_POINTSCALEENABLE: D3DRENDERSTATETYPE = 157i32; 1746 pub const D3DRS_POINTSCALE_A: D3DRENDERSTATETYPE = 158i32; 1747 pub const D3DRS_POINTSCALE_B: D3DRENDERSTATETYPE = 159i32; 1748 pub const D3DRS_POINTSCALE_C: D3DRENDERSTATETYPE = 160i32; 1749 pub const D3DRS_MULTISAMPLEANTIALIAS: D3DRENDERSTATETYPE = 161i32; 1750 pub const D3DRS_MULTISAMPLEMASK: D3DRENDERSTATETYPE = 162i32; 1751 pub const D3DRS_PATCHEDGESTYLE: D3DRENDERSTATETYPE = 163i32; 1752 pub const D3DRS_DEBUGMONITORTOKEN: D3DRENDERSTATETYPE = 165i32; 1753 pub const D3DRS_POINTSIZE_MAX: D3DRENDERSTATETYPE = 166i32; 1754 pub const D3DRS_INDEXEDVERTEXBLENDENABLE: D3DRENDERSTATETYPE = 167i32; 1755 pub const D3DRS_COLORWRITEENABLE: D3DRENDERSTATETYPE = 168i32; 1756 pub const D3DRS_TWEENFACTOR: D3DRENDERSTATETYPE = 170i32; 1757 pub const D3DRS_BLENDOP: D3DRENDERSTATETYPE = 171i32; 1758 pub const D3DRS_POSITIONDEGREE: D3DRENDERSTATETYPE = 172i32; 1759 pub const D3DRS_NORMALDEGREE: D3DRENDERSTATETYPE = 173i32; 1760 pub const D3DRS_SCISSORTESTENABLE: D3DRENDERSTATETYPE = 174i32; 1761 pub const D3DRS_SLOPESCALEDEPTHBIAS: D3DRENDERSTATETYPE = 175i32; 1762 pub const D3DRS_ANTIALIASEDLINEENABLE: D3DRENDERSTATETYPE = 176i32; 1763 pub const D3DRS_MINTESSELLATIONLEVEL: D3DRENDERSTATETYPE = 178i32; 1764 pub const D3DRS_MAXTESSELLATIONLEVEL: D3DRENDERSTATETYPE = 179i32; 1765 pub const D3DRS_ADAPTIVETESS_X: D3DRENDERSTATETYPE = 180i32; 1766 pub const D3DRS_ADAPTIVETESS_Y: D3DRENDERSTATETYPE = 181i32; 1767 pub const D3DRS_ADAPTIVETESS_Z: D3DRENDERSTATETYPE = 182i32; 1768 pub const D3DRS_ADAPTIVETESS_W: D3DRENDERSTATETYPE = 183i32; 1769 pub const D3DRS_ENABLEADAPTIVETESSELLATION: D3DRENDERSTATETYPE = 184i32; 1770 pub const D3DRS_TWOSIDEDSTENCILMODE: D3DRENDERSTATETYPE = 185i32; 1771 pub const D3DRS_CCW_STENCILFAIL: D3DRENDERSTATETYPE = 186i32; 1772 pub const D3DRS_CCW_STENCILZFAIL: D3DRENDERSTATETYPE = 187i32; 1773 pub const D3DRS_CCW_STENCILPASS: D3DRENDERSTATETYPE = 188i32; 1774 pub const D3DRS_CCW_STENCILFUNC: D3DRENDERSTATETYPE = 189i32; 1775 pub const D3DRS_COLORWRITEENABLE1: D3DRENDERSTATETYPE = 190i32; 1776 pub const D3DRS_COLORWRITEENABLE2: D3DRENDERSTATETYPE = 191i32; 1777 pub const D3DRS_COLORWRITEENABLE3: D3DRENDERSTATETYPE = 192i32; 1778 pub const D3DRS_BLENDFACTOR: D3DRENDERSTATETYPE = 193i32; 1779 pub const D3DRS_SRGBWRITEENABLE: D3DRENDERSTATETYPE = 194i32; 1780 pub const D3DRS_DEPTHBIAS: D3DRENDERSTATETYPE = 195i32; 1781 pub const D3DRS_WRAP8: D3DRENDERSTATETYPE = 198i32; 1782 pub const D3DRS_WRAP9: D3DRENDERSTATETYPE = 199i32; 1783 pub const D3DRS_WRAP10: D3DRENDERSTATETYPE = 200i32; 1784 pub const D3DRS_WRAP11: D3DRENDERSTATETYPE = 201i32; 1785 pub const D3DRS_WRAP12: D3DRENDERSTATETYPE = 202i32; 1786 pub const D3DRS_WRAP13: D3DRENDERSTATETYPE = 203i32; 1787 pub const D3DRS_WRAP14: D3DRENDERSTATETYPE = 204i32; 1788 pub const D3DRS_WRAP15: D3DRENDERSTATETYPE = 205i32; 1789 pub const D3DRS_SEPARATEALPHABLENDENABLE: D3DRENDERSTATETYPE = 206i32; 1790 pub const D3DRS_SRCBLENDALPHA: D3DRENDERSTATETYPE = 207i32; 1791 pub const D3DRS_DESTBLENDALPHA: D3DRENDERSTATETYPE = 208i32; 1792 pub const D3DRS_BLENDOPALPHA: D3DRENDERSTATETYPE = 209i32; 1793 pub const D3DRS_FORCE_DWORD: D3DRENDERSTATETYPE = 2147483647i32; 1794 #[repr(C)] 1795 #[cfg(feature = "Win32_Foundation")] 1796 pub struct D3DRESOURCESTATS { 1797 pub bThrashing: super::super::Foundation::BOOL, 1798 pub ApproxBytesDownloaded: u32, 1799 pub NumEvicts: u32, 1800 pub NumVidCreates: u32, 1801 pub LastPri: u32, 1802 pub NumUsed: u32, 1803 pub NumUsedInVidMem: u32, 1804 pub WorkingSet: u32, 1805 pub WorkingSetBytes: u32, 1806 pub TotalManaged: u32, 1807 pub TotalBytes: u32, 1808 } 1809 #[cfg(feature = "Win32_Foundation")] 1810 impl ::core::marker::Copy for D3DRESOURCESTATS {} 1811 #[cfg(feature = "Win32_Foundation")] 1812 impl ::core::clone::Clone for D3DRESOURCESTATS { clone(&self) -> Self1813 fn clone(&self) -> Self { 1814 *self 1815 } 1816 } 1817 pub type D3DRESOURCETYPE = i32; 1818 pub const D3DRTYPE_SURFACE: D3DRESOURCETYPE = 1i32; 1819 pub const D3DRTYPE_VOLUME: D3DRESOURCETYPE = 2i32; 1820 pub const D3DRTYPE_TEXTURE: D3DRESOURCETYPE = 3i32; 1821 pub const D3DRTYPE_VOLUMETEXTURE: D3DRESOURCETYPE = 4i32; 1822 pub const D3DRTYPE_CUBETEXTURE: D3DRESOURCETYPE = 5i32; 1823 pub const D3DRTYPE_VERTEXBUFFER: D3DRESOURCETYPE = 6i32; 1824 pub const D3DRTYPE_INDEXBUFFER: D3DRESOURCETYPE = 7i32; 1825 pub const D3DRTYPE_FORCE_DWORD: D3DRESOURCETYPE = 2147483647i32; 1826 pub const D3DRTYPECOUNT: u32 = 8u32; 1827 pub type D3DSAMPLERSTATETYPE = i32; 1828 pub const D3DSAMP_ADDRESSU: D3DSAMPLERSTATETYPE = 1i32; 1829 pub const D3DSAMP_ADDRESSV: D3DSAMPLERSTATETYPE = 2i32; 1830 pub const D3DSAMP_ADDRESSW: D3DSAMPLERSTATETYPE = 3i32; 1831 pub const D3DSAMP_BORDERCOLOR: D3DSAMPLERSTATETYPE = 4i32; 1832 pub const D3DSAMP_MAGFILTER: D3DSAMPLERSTATETYPE = 5i32; 1833 pub const D3DSAMP_MINFILTER: D3DSAMPLERSTATETYPE = 6i32; 1834 pub const D3DSAMP_MIPFILTER: D3DSAMPLERSTATETYPE = 7i32; 1835 pub const D3DSAMP_MIPMAPLODBIAS: D3DSAMPLERSTATETYPE = 8i32; 1836 pub const D3DSAMP_MAXMIPLEVEL: D3DSAMPLERSTATETYPE = 9i32; 1837 pub const D3DSAMP_MAXANISOTROPY: D3DSAMPLERSTATETYPE = 10i32; 1838 pub const D3DSAMP_SRGBTEXTURE: D3DSAMPLERSTATETYPE = 11i32; 1839 pub const D3DSAMP_ELEMENTINDEX: D3DSAMPLERSTATETYPE = 12i32; 1840 pub const D3DSAMP_DMAPOFFSET: D3DSAMPLERSTATETYPE = 13i32; 1841 pub const D3DSAMP_FORCE_DWORD: D3DSAMPLERSTATETYPE = 2147483647i32; 1842 pub type D3DSAMPLER_TEXTURE_TYPE = i32; 1843 pub const D3DSTT_UNKNOWN: D3DSAMPLER_TEXTURE_TYPE = 0i32; 1844 pub const D3DSTT_2D: D3DSAMPLER_TEXTURE_TYPE = 268435456i32; 1845 pub const D3DSTT_CUBE: D3DSAMPLER_TEXTURE_TYPE = 402653184i32; 1846 pub const D3DSTT_VOLUME: D3DSAMPLER_TEXTURE_TYPE = 536870912i32; 1847 pub const D3DSTT_FORCE_DWORD: D3DSAMPLER_TEXTURE_TYPE = 2147483647i32; 1848 pub type D3DSCANLINEORDERING = i32; 1849 pub const D3DSCANLINEORDERING_UNKNOWN: D3DSCANLINEORDERING = 0i32; 1850 pub const D3DSCANLINEORDERING_PROGRESSIVE: D3DSCANLINEORDERING = 1i32; 1851 pub const D3DSCANLINEORDERING_INTERLACED: D3DSCANLINEORDERING = 2i32; 1852 pub const D3DSGR_CALIBRATE: i32 = 1i32; 1853 pub const D3DSGR_NO_CALIBRATION: i32 = 0i32; 1854 pub type D3DSHADEMODE = i32; 1855 pub const D3DSHADE_FLAT: D3DSHADEMODE = 1i32; 1856 pub const D3DSHADE_GOURAUD: D3DSHADEMODE = 2i32; 1857 pub const D3DSHADE_PHONG: D3DSHADEMODE = 3i32; 1858 pub const D3DSHADE_FORCE_DWORD: D3DSHADEMODE = 2147483647i32; 1859 pub const D3DSHADER_ADDRESSMODE_SHIFT: u32 = 13u32; 1860 pub type D3DSHADER_ADDRESSMODE_TYPE = i32; 1861 pub const D3DSHADER_ADDRMODE_ABSOLUTE: D3DSHADER_ADDRESSMODE_TYPE = 0i32; 1862 pub const D3DSHADER_ADDRMODE_RELATIVE: D3DSHADER_ADDRESSMODE_TYPE = 8192i32; 1863 pub const D3DSHADER_ADDRMODE_FORCE_DWORD: D3DSHADER_ADDRESSMODE_TYPE = 2147483647i32; 1864 pub type D3DSHADER_COMPARISON = i32; 1865 pub const D3DSPC_RESERVED0: D3DSHADER_COMPARISON = 0i32; 1866 pub const D3DSPC_GT: D3DSHADER_COMPARISON = 1i32; 1867 pub const D3DSPC_EQ: D3DSHADER_COMPARISON = 2i32; 1868 pub const D3DSPC_GE: D3DSHADER_COMPARISON = 3i32; 1869 pub const D3DSPC_LT: D3DSHADER_COMPARISON = 4i32; 1870 pub const D3DSPC_NE: D3DSHADER_COMPARISON = 5i32; 1871 pub const D3DSPC_LE: D3DSHADER_COMPARISON = 6i32; 1872 pub const D3DSPC_RESERVED1: D3DSHADER_COMPARISON = 7i32; 1873 pub const D3DSHADER_COMPARISON_SHIFT: u32 = 16u32; 1874 pub type D3DSHADER_INSTRUCTION_OPCODE_TYPE = i32; 1875 pub const D3DSIO_NOP: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 0i32; 1876 pub const D3DSIO_MOV: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 1i32; 1877 pub const D3DSIO_ADD: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 2i32; 1878 pub const D3DSIO_SUB: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 3i32; 1879 pub const D3DSIO_MAD: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 4i32; 1880 pub const D3DSIO_MUL: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 5i32; 1881 pub const D3DSIO_RCP: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 6i32; 1882 pub const D3DSIO_RSQ: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 7i32; 1883 pub const D3DSIO_DP3: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 8i32; 1884 pub const D3DSIO_DP4: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 9i32; 1885 pub const D3DSIO_MIN: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 10i32; 1886 pub const D3DSIO_MAX: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 11i32; 1887 pub const D3DSIO_SLT: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 12i32; 1888 pub const D3DSIO_SGE: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 13i32; 1889 pub const D3DSIO_EXP: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 14i32; 1890 pub const D3DSIO_LOG: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 15i32; 1891 pub const D3DSIO_LIT: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 16i32; 1892 pub const D3DSIO_DST: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 17i32; 1893 pub const D3DSIO_LRP: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 18i32; 1894 pub const D3DSIO_FRC: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 19i32; 1895 pub const D3DSIO_M4x4: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 20i32; 1896 pub const D3DSIO_M4x3: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 21i32; 1897 pub const D3DSIO_M3x4: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 22i32; 1898 pub const D3DSIO_M3x3: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 23i32; 1899 pub const D3DSIO_M3x2: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 24i32; 1900 pub const D3DSIO_CALL: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 25i32; 1901 pub const D3DSIO_CALLNZ: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 26i32; 1902 pub const D3DSIO_LOOP: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 27i32; 1903 pub const D3DSIO_RET: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 28i32; 1904 pub const D3DSIO_ENDLOOP: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 29i32; 1905 pub const D3DSIO_LABEL: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 30i32; 1906 pub const D3DSIO_DCL: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 31i32; 1907 pub const D3DSIO_POW: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 32i32; 1908 pub const D3DSIO_CRS: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 33i32; 1909 pub const D3DSIO_SGN: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 34i32; 1910 pub const D3DSIO_ABS: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 35i32; 1911 pub const D3DSIO_NRM: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 36i32; 1912 pub const D3DSIO_SINCOS: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 37i32; 1913 pub const D3DSIO_REP: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 38i32; 1914 pub const D3DSIO_ENDREP: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 39i32; 1915 pub const D3DSIO_IF: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 40i32; 1916 pub const D3DSIO_IFC: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 41i32; 1917 pub const D3DSIO_ELSE: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 42i32; 1918 pub const D3DSIO_ENDIF: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 43i32; 1919 pub const D3DSIO_BREAK: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 44i32; 1920 pub const D3DSIO_BREAKC: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 45i32; 1921 pub const D3DSIO_MOVA: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 46i32; 1922 pub const D3DSIO_DEFB: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 47i32; 1923 pub const D3DSIO_DEFI: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 48i32; 1924 pub const D3DSIO_TEXCOORD: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 64i32; 1925 pub const D3DSIO_TEXKILL: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 65i32; 1926 pub const D3DSIO_TEX: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 66i32; 1927 pub const D3DSIO_TEXBEM: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 67i32; 1928 pub const D3DSIO_TEXBEML: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 68i32; 1929 pub const D3DSIO_TEXREG2AR: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 69i32; 1930 pub const D3DSIO_TEXREG2GB: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 70i32; 1931 pub const D3DSIO_TEXM3x2PAD: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 71i32; 1932 pub const D3DSIO_TEXM3x2TEX: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 72i32; 1933 pub const D3DSIO_TEXM3x3PAD: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 73i32; 1934 pub const D3DSIO_TEXM3x3TEX: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 74i32; 1935 pub const D3DSIO_RESERVED0: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 75i32; 1936 pub const D3DSIO_TEXM3x3SPEC: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 76i32; 1937 pub const D3DSIO_TEXM3x3VSPEC: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 77i32; 1938 pub const D3DSIO_EXPP: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 78i32; 1939 pub const D3DSIO_LOGP: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 79i32; 1940 pub const D3DSIO_CND: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 80i32; 1941 pub const D3DSIO_DEF: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 81i32; 1942 pub const D3DSIO_TEXREG2RGB: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 82i32; 1943 pub const D3DSIO_TEXDP3TEX: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 83i32; 1944 pub const D3DSIO_TEXM3x2DEPTH: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 84i32; 1945 pub const D3DSIO_TEXDP3: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 85i32; 1946 pub const D3DSIO_TEXM3x3: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 86i32; 1947 pub const D3DSIO_TEXDEPTH: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 87i32; 1948 pub const D3DSIO_CMP: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 88i32; 1949 pub const D3DSIO_BEM: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 89i32; 1950 pub const D3DSIO_DP2ADD: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 90i32; 1951 pub const D3DSIO_DSX: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 91i32; 1952 pub const D3DSIO_DSY: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 92i32; 1953 pub const D3DSIO_TEXLDD: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 93i32; 1954 pub const D3DSIO_SETP: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 94i32; 1955 pub const D3DSIO_TEXLDL: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 95i32; 1956 pub const D3DSIO_BREAKP: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 96i32; 1957 pub const D3DSIO_PHASE: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 65533i32; 1958 pub const D3DSIO_COMMENT: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 65534i32; 1959 pub const D3DSIO_END: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 65535i32; 1960 pub const D3DSIO_FORCE_DWORD: D3DSHADER_INSTRUCTION_OPCODE_TYPE = 2147483647i32; 1961 pub type D3DSHADER_MIN_PRECISION = i32; 1962 pub const D3DMP_DEFAULT: D3DSHADER_MIN_PRECISION = 0i32; 1963 pub const D3DMP_16: D3DSHADER_MIN_PRECISION = 1i32; 1964 pub const D3DMP_2_8: D3DSHADER_MIN_PRECISION = 2i32; 1965 pub type D3DSHADER_MISCTYPE_OFFSETS = i32; 1966 pub const D3DSMO_POSITION: D3DSHADER_MISCTYPE_OFFSETS = 0i32; 1967 pub const D3DSMO_FACE: D3DSHADER_MISCTYPE_OFFSETS = 1i32; 1968 pub type D3DSHADER_PARAM_REGISTER_TYPE = i32; 1969 pub const D3DSPR_TEMP: D3DSHADER_PARAM_REGISTER_TYPE = 0i32; 1970 pub const D3DSPR_INPUT: D3DSHADER_PARAM_REGISTER_TYPE = 1i32; 1971 pub const D3DSPR_CONST: D3DSHADER_PARAM_REGISTER_TYPE = 2i32; 1972 pub const D3DSPR_ADDR: D3DSHADER_PARAM_REGISTER_TYPE = 3i32; 1973 pub const D3DSPR_TEXTURE: D3DSHADER_PARAM_REGISTER_TYPE = 3i32; 1974 pub const D3DSPR_RASTOUT: D3DSHADER_PARAM_REGISTER_TYPE = 4i32; 1975 pub const D3DSPR_ATTROUT: D3DSHADER_PARAM_REGISTER_TYPE = 5i32; 1976 pub const D3DSPR_TEXCRDOUT: D3DSHADER_PARAM_REGISTER_TYPE = 6i32; 1977 pub const D3DSPR_OUTPUT: D3DSHADER_PARAM_REGISTER_TYPE = 6i32; 1978 pub const D3DSPR_CONSTINT: D3DSHADER_PARAM_REGISTER_TYPE = 7i32; 1979 pub const D3DSPR_COLOROUT: D3DSHADER_PARAM_REGISTER_TYPE = 8i32; 1980 pub const D3DSPR_DEPTHOUT: D3DSHADER_PARAM_REGISTER_TYPE = 9i32; 1981 pub const D3DSPR_SAMPLER: D3DSHADER_PARAM_REGISTER_TYPE = 10i32; 1982 pub const D3DSPR_CONST2: D3DSHADER_PARAM_REGISTER_TYPE = 11i32; 1983 pub const D3DSPR_CONST3: D3DSHADER_PARAM_REGISTER_TYPE = 12i32; 1984 pub const D3DSPR_CONST4: D3DSHADER_PARAM_REGISTER_TYPE = 13i32; 1985 pub const D3DSPR_CONSTBOOL: D3DSHADER_PARAM_REGISTER_TYPE = 14i32; 1986 pub const D3DSPR_LOOP: D3DSHADER_PARAM_REGISTER_TYPE = 15i32; 1987 pub const D3DSPR_TEMPFLOAT16: D3DSHADER_PARAM_REGISTER_TYPE = 16i32; 1988 pub const D3DSPR_MISCTYPE: D3DSHADER_PARAM_REGISTER_TYPE = 17i32; 1989 pub const D3DSPR_LABEL: D3DSHADER_PARAM_REGISTER_TYPE = 18i32; 1990 pub const D3DSPR_PREDICATE: D3DSHADER_PARAM_REGISTER_TYPE = 19i32; 1991 pub const D3DSPR_FORCE_DWORD: D3DSHADER_PARAM_REGISTER_TYPE = 2147483647i32; 1992 pub type D3DSHADER_PARAM_SRCMOD_TYPE = i32; 1993 pub const D3DSPSM_NONE: D3DSHADER_PARAM_SRCMOD_TYPE = 0i32; 1994 pub const D3DSPSM_NEG: D3DSHADER_PARAM_SRCMOD_TYPE = 16777216i32; 1995 pub const D3DSPSM_BIAS: D3DSHADER_PARAM_SRCMOD_TYPE = 33554432i32; 1996 pub const D3DSPSM_BIASNEG: D3DSHADER_PARAM_SRCMOD_TYPE = 50331648i32; 1997 pub const D3DSPSM_SIGN: D3DSHADER_PARAM_SRCMOD_TYPE = 67108864i32; 1998 pub const D3DSPSM_SIGNNEG: D3DSHADER_PARAM_SRCMOD_TYPE = 83886080i32; 1999 pub const D3DSPSM_COMP: D3DSHADER_PARAM_SRCMOD_TYPE = 100663296i32; 2000 pub const D3DSPSM_X2: D3DSHADER_PARAM_SRCMOD_TYPE = 117440512i32; 2001 pub const D3DSPSM_X2NEG: D3DSHADER_PARAM_SRCMOD_TYPE = 134217728i32; 2002 pub const D3DSPSM_DZ: D3DSHADER_PARAM_SRCMOD_TYPE = 150994944i32; 2003 pub const D3DSPSM_DW: D3DSHADER_PARAM_SRCMOD_TYPE = 167772160i32; 2004 pub const D3DSPSM_ABS: D3DSHADER_PARAM_SRCMOD_TYPE = 184549376i32; 2005 pub const D3DSPSM_ABSNEG: D3DSHADER_PARAM_SRCMOD_TYPE = 201326592i32; 2006 pub const D3DSPSM_NOT: D3DSHADER_PARAM_SRCMOD_TYPE = 218103808i32; 2007 pub const D3DSPSM_FORCE_DWORD: D3DSHADER_PARAM_SRCMOD_TYPE = 2147483647i32; 2008 pub const D3DSI_COISSUE: u32 = 1073741824u32; 2009 pub const D3DSI_COMMENTSIZE_MASK: u32 = 2147418112u32; 2010 pub const D3DSI_COMMENTSIZE_SHIFT: u32 = 16u32; 2011 pub const D3DSI_INSTLENGTH_MASK: u32 = 251658240u32; 2012 pub const D3DSI_INSTLENGTH_SHIFT: u32 = 24u32; 2013 pub const D3DSI_OPCODE_MASK: u32 = 65535u32; 2014 pub const D3DSPD_IUNKNOWN: i32 = 1i32; 2015 pub const D3DSP_DCL_USAGEINDEX_MASK: u32 = 983040u32; 2016 pub const D3DSP_DCL_USAGEINDEX_SHIFT: u32 = 16u32; 2017 pub const D3DSP_DCL_USAGE_MASK: u32 = 15u32; 2018 pub const D3DSP_DCL_USAGE_SHIFT: u32 = 0u32; 2019 pub const D3DSP_DSTMOD_MASK: u32 = 15728640u32; 2020 pub const D3DSP_DSTMOD_SHIFT: u32 = 20u32; 2021 pub const D3DSP_DSTSHIFT_MASK: u32 = 251658240u32; 2022 pub const D3DSP_DSTSHIFT_SHIFT: u32 = 24u32; 2023 pub const D3DSP_MIN_PRECISION_MASK: u32 = 49152u32; 2024 pub const D3DSP_MIN_PRECISION_SHIFT: u32 = 14u32; 2025 pub const D3DSP_OPCODESPECIFICCONTROL_MASK: u32 = 16711680u32; 2026 pub const D3DSP_OPCODESPECIFICCONTROL_SHIFT: u32 = 16u32; 2027 pub const D3DSP_REGNUM_MASK: u32 = 2047u32; 2028 pub const D3DSP_REGTYPE_MASK: u32 = 1879048192u32; 2029 pub const D3DSP_REGTYPE_MASK2: u32 = 6144u32; 2030 pub const D3DSP_REGTYPE_SHIFT: u32 = 28u32; 2031 pub const D3DSP_REGTYPE_SHIFT2: u32 = 8u32; 2032 pub const D3DSP_SRCMOD_MASK: u32 = 251658240u32; 2033 pub const D3DSP_SRCMOD_SHIFT: u32 = 24u32; 2034 pub const D3DSP_SWIZZLE_MASK: u32 = 16711680u32; 2035 pub const D3DSP_SWIZZLE_SHIFT: u32 = 16u32; 2036 pub const D3DSP_TEXTURETYPE_MASK: u32 = 2013265920u32; 2037 pub const D3DSP_TEXTURETYPE_SHIFT: u32 = 27u32; 2038 pub const D3DSP_WRITEMASK_0: u32 = 65536u32; 2039 pub const D3DSP_WRITEMASK_1: u32 = 131072u32; 2040 pub const D3DSP_WRITEMASK_2: u32 = 262144u32; 2041 pub const D3DSP_WRITEMASK_3: u32 = 524288u32; 2042 pub const D3DSP_WRITEMASK_ALL: u32 = 983040u32; 2043 pub type D3DSTATEBLOCKTYPE = i32; 2044 pub const D3DSBT_ALL: D3DSTATEBLOCKTYPE = 1i32; 2045 pub const D3DSBT_PIXELSTATE: D3DSTATEBLOCKTYPE = 2i32; 2046 pub const D3DSBT_VERTEXSTATE: D3DSTATEBLOCKTYPE = 3i32; 2047 pub const D3DSBT_FORCE_DWORD: D3DSTATEBLOCKTYPE = 2147483647i32; 2048 pub const D3DSTENCILCAPS_TWOSIDED: i32 = 256i32; 2049 pub type D3DSTENCILOP = u32; 2050 pub const D3DSTENCILOP_KEEP: D3DSTENCILOP = 1u32; 2051 pub const D3DSTENCILOP_ZERO: D3DSTENCILOP = 2u32; 2052 pub const D3DSTENCILOP_REPLACE: D3DSTENCILOP = 3u32; 2053 pub const D3DSTENCILOP_INCRSAT: D3DSTENCILOP = 4u32; 2054 pub const D3DSTENCILOP_DECRSAT: D3DSTENCILOP = 5u32; 2055 pub const D3DSTENCILOP_INVERT: D3DSTENCILOP = 6u32; 2056 pub const D3DSTENCILOP_INCR: D3DSTENCILOP = 7u32; 2057 pub const D3DSTENCILOP_DECR: D3DSTENCILOP = 8u32; 2058 pub const D3DSTENCILOP_FORCE_DWORD: D3DSTENCILOP = 2147483647u32; 2059 pub const D3DSTREAMSOURCE_INDEXEDDATA: u32 = 1073741824u32; 2060 pub const D3DSTREAMSOURCE_INSTANCEDATA: u32 = 2147483648u32; 2061 #[repr(C)] 2062 pub struct D3DSURFACE_DESC { 2063 pub Format: D3DFORMAT, 2064 pub Type: D3DRESOURCETYPE, 2065 pub Usage: u32, 2066 pub Pool: D3DPOOL, 2067 pub MultiSampleType: D3DMULTISAMPLE_TYPE, 2068 pub MultiSampleQuality: u32, 2069 pub Width: u32, 2070 pub Height: u32, 2071 } 2072 impl ::core::marker::Copy for D3DSURFACE_DESC {} 2073 impl ::core::clone::Clone for D3DSURFACE_DESC { clone(&self) -> Self2074 fn clone(&self) -> Self { 2075 *self 2076 } 2077 } 2078 pub type D3DSWAPEFFECT = u32; 2079 pub const D3DSWAPEFFECT_DISCARD: D3DSWAPEFFECT = 1u32; 2080 pub const D3DSWAPEFFECT_FLIP: D3DSWAPEFFECT = 2u32; 2081 pub const D3DSWAPEFFECT_COPY: D3DSWAPEFFECT = 3u32; 2082 pub const D3DSWAPEFFECT_OVERLAY: D3DSWAPEFFECT = 4u32; 2083 pub const D3DSWAPEFFECT_FLIPEX: D3DSWAPEFFECT = 5u32; 2084 pub const D3DSWAPEFFECT_FORCE_DWORD: D3DSWAPEFFECT = 2147483647u32; 2085 pub const D3DTA_CONSTANT: u32 = 6u32; 2086 pub const D3DTA_TEMP: u32 = 5u32; 2087 pub const D3DTEXOPCAPS_LERP: i32 = 33554432i32; 2088 pub const D3DTEXOPCAPS_MULTIPLYADD: i32 = 16777216i32; 2089 pub type D3DTEXTUREADDRESS = i32; 2090 pub const D3DTADDRESS_WRAP: D3DTEXTUREADDRESS = 1i32; 2091 pub const D3DTADDRESS_MIRROR: D3DTEXTUREADDRESS = 2i32; 2092 pub const D3DTADDRESS_CLAMP: D3DTEXTUREADDRESS = 3i32; 2093 pub const D3DTADDRESS_BORDER: D3DTEXTUREADDRESS = 4i32; 2094 pub const D3DTADDRESS_MIRRORONCE: D3DTEXTUREADDRESS = 5i32; 2095 pub const D3DTADDRESS_FORCE_DWORD: D3DTEXTUREADDRESS = 2147483647i32; 2096 pub type D3DTEXTUREFILTERTYPE = i32; 2097 pub const D3DTEXF_NONE: D3DTEXTUREFILTERTYPE = 0i32; 2098 pub const D3DTEXF_POINT: D3DTEXTUREFILTERTYPE = 1i32; 2099 pub const D3DTEXF_LINEAR: D3DTEXTUREFILTERTYPE = 2i32; 2100 pub const D3DTEXF_ANISOTROPIC: D3DTEXTUREFILTERTYPE = 3i32; 2101 pub const D3DTEXF_PYRAMIDALQUAD: D3DTEXTUREFILTERTYPE = 6i32; 2102 pub const D3DTEXF_GAUSSIANQUAD: D3DTEXTUREFILTERTYPE = 7i32; 2103 pub const D3DTEXF_CONVOLUTIONMONO: D3DTEXTUREFILTERTYPE = 8i32; 2104 pub const D3DTEXF_FORCE_DWORD: D3DTEXTUREFILTERTYPE = 2147483647i32; 2105 pub type D3DTEXTUREOP = i32; 2106 pub const D3DTOP_DISABLE: D3DTEXTUREOP = 1i32; 2107 pub const D3DTOP_SELECTARG1: D3DTEXTUREOP = 2i32; 2108 pub const D3DTOP_SELECTARG2: D3DTEXTUREOP = 3i32; 2109 pub const D3DTOP_MODULATE: D3DTEXTUREOP = 4i32; 2110 pub const D3DTOP_MODULATE2X: D3DTEXTUREOP = 5i32; 2111 pub const D3DTOP_MODULATE4X: D3DTEXTUREOP = 6i32; 2112 pub const D3DTOP_ADD: D3DTEXTUREOP = 7i32; 2113 pub const D3DTOP_ADDSIGNED: D3DTEXTUREOP = 8i32; 2114 pub const D3DTOP_ADDSIGNED2X: D3DTEXTUREOP = 9i32; 2115 pub const D3DTOP_SUBTRACT: D3DTEXTUREOP = 10i32; 2116 pub const D3DTOP_ADDSMOOTH: D3DTEXTUREOP = 11i32; 2117 pub const D3DTOP_BLENDDIFFUSEALPHA: D3DTEXTUREOP = 12i32; 2118 pub const D3DTOP_BLENDTEXTUREALPHA: D3DTEXTUREOP = 13i32; 2119 pub const D3DTOP_BLENDFACTORALPHA: D3DTEXTUREOP = 14i32; 2120 pub const D3DTOP_BLENDTEXTUREALPHAPM: D3DTEXTUREOP = 15i32; 2121 pub const D3DTOP_BLENDCURRENTALPHA: D3DTEXTUREOP = 16i32; 2122 pub const D3DTOP_PREMODULATE: D3DTEXTUREOP = 17i32; 2123 pub const D3DTOP_MODULATEALPHA_ADDCOLOR: D3DTEXTUREOP = 18i32; 2124 pub const D3DTOP_MODULATECOLOR_ADDALPHA: D3DTEXTUREOP = 19i32; 2125 pub const D3DTOP_MODULATEINVALPHA_ADDCOLOR: D3DTEXTUREOP = 20i32; 2126 pub const D3DTOP_MODULATEINVCOLOR_ADDALPHA: D3DTEXTUREOP = 21i32; 2127 pub const D3DTOP_BUMPENVMAP: D3DTEXTUREOP = 22i32; 2128 pub const D3DTOP_BUMPENVMAPLUMINANCE: D3DTEXTUREOP = 23i32; 2129 pub const D3DTOP_DOTPRODUCT3: D3DTEXTUREOP = 24i32; 2130 pub const D3DTOP_MULTIPLYADD: D3DTEXTUREOP = 25i32; 2131 pub const D3DTOP_LERP: D3DTEXTUREOP = 26i32; 2132 pub const D3DTOP_FORCE_DWORD: D3DTEXTUREOP = 2147483647i32; 2133 pub type D3DTEXTURESTAGESTATETYPE = i32; 2134 pub const D3DTSS_COLOROP: D3DTEXTURESTAGESTATETYPE = 1i32; 2135 pub const D3DTSS_COLORARG1: D3DTEXTURESTAGESTATETYPE = 2i32; 2136 pub const D3DTSS_COLORARG2: D3DTEXTURESTAGESTATETYPE = 3i32; 2137 pub const D3DTSS_ALPHAOP: D3DTEXTURESTAGESTATETYPE = 4i32; 2138 pub const D3DTSS_ALPHAARG1: D3DTEXTURESTAGESTATETYPE = 5i32; 2139 pub const D3DTSS_ALPHAARG2: D3DTEXTURESTAGESTATETYPE = 6i32; 2140 pub const D3DTSS_BUMPENVMAT00: D3DTEXTURESTAGESTATETYPE = 7i32; 2141 pub const D3DTSS_BUMPENVMAT01: D3DTEXTURESTAGESTATETYPE = 8i32; 2142 pub const D3DTSS_BUMPENVMAT10: D3DTEXTURESTAGESTATETYPE = 9i32; 2143 pub const D3DTSS_BUMPENVMAT11: D3DTEXTURESTAGESTATETYPE = 10i32; 2144 pub const D3DTSS_TEXCOORDINDEX: D3DTEXTURESTAGESTATETYPE = 11i32; 2145 pub const D3DTSS_BUMPENVLSCALE: D3DTEXTURESTAGESTATETYPE = 22i32; 2146 pub const D3DTSS_BUMPENVLOFFSET: D3DTEXTURESTAGESTATETYPE = 23i32; 2147 pub const D3DTSS_TEXTURETRANSFORMFLAGS: D3DTEXTURESTAGESTATETYPE = 24i32; 2148 pub const D3DTSS_COLORARG0: D3DTEXTURESTAGESTATETYPE = 26i32; 2149 pub const D3DTSS_ALPHAARG0: D3DTEXTURESTAGESTATETYPE = 27i32; 2150 pub const D3DTSS_RESULTARG: D3DTEXTURESTAGESTATETYPE = 28i32; 2151 pub const D3DTSS_CONSTANT: D3DTEXTURESTAGESTATETYPE = 32i32; 2152 pub const D3DTSS_FORCE_DWORD: D3DTEXTURESTAGESTATETYPE = 2147483647i32; 2153 pub type D3DTEXTURETRANSFORMFLAGS = i32; 2154 pub const D3DTTFF_DISABLE: D3DTEXTURETRANSFORMFLAGS = 0i32; 2155 pub const D3DTTFF_COUNT1: D3DTEXTURETRANSFORMFLAGS = 1i32; 2156 pub const D3DTTFF_COUNT2: D3DTEXTURETRANSFORMFLAGS = 2i32; 2157 pub const D3DTTFF_COUNT3: D3DTEXTURETRANSFORMFLAGS = 3i32; 2158 pub const D3DTTFF_COUNT4: D3DTEXTURETRANSFORMFLAGS = 4i32; 2159 pub const D3DTTFF_PROJECTED: D3DTEXTURETRANSFORMFLAGS = 256i32; 2160 pub const D3DTTFF_FORCE_DWORD: D3DTEXTURETRANSFORMFLAGS = 2147483647i32; 2161 pub type D3DTRANSFORMSTATETYPE = i32; 2162 pub const D3DTS_VIEW: D3DTRANSFORMSTATETYPE = 2i32; 2163 pub const D3DTS_PROJECTION: D3DTRANSFORMSTATETYPE = 3i32; 2164 pub const D3DTS_TEXTURE0: D3DTRANSFORMSTATETYPE = 16i32; 2165 pub const D3DTS_TEXTURE1: D3DTRANSFORMSTATETYPE = 17i32; 2166 pub const D3DTS_TEXTURE2: D3DTRANSFORMSTATETYPE = 18i32; 2167 pub const D3DTS_TEXTURE3: D3DTRANSFORMSTATETYPE = 19i32; 2168 pub const D3DTS_TEXTURE4: D3DTRANSFORMSTATETYPE = 20i32; 2169 pub const D3DTS_TEXTURE5: D3DTRANSFORMSTATETYPE = 21i32; 2170 pub const D3DTS_TEXTURE6: D3DTRANSFORMSTATETYPE = 22i32; 2171 pub const D3DTS_TEXTURE7: D3DTRANSFORMSTATETYPE = 23i32; 2172 pub const D3DTS_FORCE_DWORD: D3DTRANSFORMSTATETYPE = 2147483647i32; 2173 #[repr(C)] 2174 pub struct D3DTRIPATCH_INFO { 2175 pub StartVertexOffset: u32, 2176 pub NumVertices: u32, 2177 pub Basis: D3DBASISTYPE, 2178 pub Degree: D3DDEGREETYPE, 2179 } 2180 impl ::core::marker::Copy for D3DTRIPATCH_INFO {} 2181 impl ::core::clone::Clone for D3DTRIPATCH_INFO { clone(&self) -> Self2182 fn clone(&self) -> Self { 2183 *self 2184 } 2185 } 2186 pub const D3DTSS_TCI_SPHEREMAP: u32 = 262144u32; 2187 pub const D3DUSAGE_AUTOGENMIPMAP: i32 = 1024i32; 2188 pub const D3DUSAGE_DEPTHSTENCIL: i32 = 2i32; 2189 pub const D3DUSAGE_DMAP: i32 = 16384i32; 2190 pub const D3DUSAGE_DONOTCLIP: i32 = 32i32; 2191 pub const D3DUSAGE_DYNAMIC: i32 = 512i32; 2192 pub const D3DUSAGE_NONSECURE: i32 = 8388608i32; 2193 pub const D3DUSAGE_NPATCHES: i32 = 256i32; 2194 pub const D3DUSAGE_POINTS: i32 = 64i32; 2195 pub const D3DUSAGE_QUERY_FILTER: i32 = 131072i32; 2196 pub const D3DUSAGE_QUERY_LEGACYBUMPMAP: i32 = 32768i32; 2197 pub const D3DUSAGE_QUERY_POSTPIXELSHADER_BLENDING: i32 = 524288i32; 2198 pub const D3DUSAGE_QUERY_SRGBREAD: i32 = 65536i32; 2199 pub const D3DUSAGE_QUERY_SRGBWRITE: i32 = 262144i32; 2200 pub const D3DUSAGE_QUERY_VERTEXTEXTURE: i32 = 1048576i32; 2201 pub const D3DUSAGE_QUERY_WRAPANDMIP: i32 = 2097152i32; 2202 pub const D3DUSAGE_RENDERTARGET: i32 = 1i32; 2203 pub const D3DUSAGE_RESTRICTED_CONTENT: i32 = 2048i32; 2204 pub const D3DUSAGE_RESTRICT_SHARED_RESOURCE: i32 = 8192i32; 2205 pub const D3DUSAGE_RESTRICT_SHARED_RESOURCE_DRIVER: i32 = 4096i32; 2206 pub const D3DUSAGE_RTPATCHES: i32 = 128i32; 2207 pub const D3DUSAGE_SOFTWAREPROCESSING: i32 = 16i32; 2208 pub const D3DUSAGE_TEXTAPI: i32 = 268435456i32; 2209 pub const D3DUSAGE_WRITEONLY: i32 = 8i32; 2210 pub type D3DVERTEXBLENDFLAGS = i32; 2211 pub const D3DVBF_DISABLE: D3DVERTEXBLENDFLAGS = 0i32; 2212 pub const D3DVBF_1WEIGHTS: D3DVERTEXBLENDFLAGS = 1i32; 2213 pub const D3DVBF_2WEIGHTS: D3DVERTEXBLENDFLAGS = 2i32; 2214 pub const D3DVBF_3WEIGHTS: D3DVERTEXBLENDFLAGS = 3i32; 2215 pub const D3DVBF_TWEENING: D3DVERTEXBLENDFLAGS = 255i32; 2216 pub const D3DVBF_0WEIGHTS: D3DVERTEXBLENDFLAGS = 256i32; 2217 pub const D3DVBF_FORCE_DWORD: D3DVERTEXBLENDFLAGS = 2147483647i32; 2218 #[repr(C)] 2219 pub struct D3DVERTEXBUFFER_DESC { 2220 pub Format: D3DFORMAT, 2221 pub Type: D3DRESOURCETYPE, 2222 pub Usage: u32, 2223 pub Pool: D3DPOOL, 2224 pub Size: u32, 2225 pub FVF: u32, 2226 } 2227 impl ::core::marker::Copy for D3DVERTEXBUFFER_DESC {} 2228 impl ::core::clone::Clone for D3DVERTEXBUFFER_DESC { clone(&self) -> Self2229 fn clone(&self) -> Self { 2230 *self 2231 } 2232 } 2233 #[repr(C)] 2234 pub struct D3DVERTEXELEMENT9 { 2235 pub Stream: u16, 2236 pub Offset: u16, 2237 pub Type: u8, 2238 pub Method: u8, 2239 pub Usage: u8, 2240 pub UsageIndex: u8, 2241 } 2242 impl ::core::marker::Copy for D3DVERTEXELEMENT9 {} 2243 impl ::core::clone::Clone for D3DVERTEXELEMENT9 { clone(&self) -> Self2244 fn clone(&self) -> Self { 2245 *self 2246 } 2247 } 2248 pub const D3DVERTEXTEXTURESAMPLER0: u32 = 257u32; 2249 pub const D3DVERTEXTEXTURESAMPLER1: u32 = 258u32; 2250 pub const D3DVERTEXTEXTURESAMPLER2: u32 = 259u32; 2251 pub const D3DVERTEXTEXTURESAMPLER3: u32 = 260u32; 2252 #[repr(C)] 2253 pub struct D3DVIEWPORT9 { 2254 pub X: u32, 2255 pub Y: u32, 2256 pub Width: u32, 2257 pub Height: u32, 2258 pub MinZ: f32, 2259 pub MaxZ: f32, 2260 } 2261 impl ::core::marker::Copy for D3DVIEWPORT9 {} 2262 impl ::core::clone::Clone for D3DVIEWPORT9 { clone(&self) -> Self2263 fn clone(&self) -> Self { 2264 *self 2265 } 2266 } 2267 #[repr(C)] 2268 pub struct D3DVOLUME_DESC { 2269 pub Format: D3DFORMAT, 2270 pub Type: D3DRESOURCETYPE, 2271 pub Usage: u32, 2272 pub Pool: D3DPOOL, 2273 pub Width: u32, 2274 pub Height: u32, 2275 pub Depth: u32, 2276 } 2277 impl ::core::marker::Copy for D3DVOLUME_DESC {} 2278 impl ::core::clone::Clone for D3DVOLUME_DESC { clone(&self) -> Self2279 fn clone(&self) -> Self { 2280 *self 2281 } 2282 } 2283 pub const D3DVS20CAPS_PREDICATION: u32 = 1u32; 2284 pub const D3DVS20_MAX_DYNAMICFLOWCONTROLDEPTH: u32 = 24u32; 2285 pub const D3DVS20_MAX_NUMTEMPS: u32 = 32u32; 2286 pub const D3DVS20_MAX_STATICFLOWCONTROLDEPTH: u32 = 4u32; 2287 pub const D3DVS20_MIN_DYNAMICFLOWCONTROLDEPTH: u32 = 0u32; 2288 pub const D3DVS20_MIN_NUMTEMPS: u32 = 12u32; 2289 pub const D3DVS20_MIN_STATICFLOWCONTROLDEPTH: u32 = 1u32; 2290 #[repr(C)] 2291 pub struct D3DVSHADERCAPS2_0 { 2292 pub Caps: u32, 2293 pub DynamicFlowControlDepth: i32, 2294 pub NumTemps: i32, 2295 pub StaticFlowControlDepth: i32, 2296 } 2297 impl ::core::marker::Copy for D3DVSHADERCAPS2_0 {} 2298 impl ::core::clone::Clone for D3DVSHADERCAPS2_0 { clone(&self) -> Self2299 fn clone(&self) -> Self { 2300 *self 2301 } 2302 } 2303 pub const D3DVS_ADDRESSMODE_SHIFT: u32 = 13u32; 2304 pub type D3DVS_ADDRESSMODE_TYPE = i32; 2305 pub const D3DVS_ADDRMODE_ABSOLUTE: D3DVS_ADDRESSMODE_TYPE = 0i32; 2306 pub const D3DVS_ADDRMODE_RELATIVE: D3DVS_ADDRESSMODE_TYPE = 8192i32; 2307 pub const D3DVS_ADDRMODE_FORCE_DWORD: D3DVS_ADDRESSMODE_TYPE = 2147483647i32; 2308 pub type D3DVS_RASTOUT_OFFSETS = i32; 2309 pub const D3DSRO_POSITION: D3DVS_RASTOUT_OFFSETS = 0i32; 2310 pub const D3DSRO_FOG: D3DVS_RASTOUT_OFFSETS = 1i32; 2311 pub const D3DSRO_POINT_SIZE: D3DVS_RASTOUT_OFFSETS = 2i32; 2312 pub const D3DSRO_FORCE_DWORD: D3DVS_RASTOUT_OFFSETS = 2147483647i32; 2313 pub const D3DVS_SWIZZLE_MASK: u32 = 16711680u32; 2314 pub const D3DVS_SWIZZLE_SHIFT: u32 = 16u32; 2315 pub const D3DVTXPCAPS_NO_TEXGEN_NONLOCALVIEWER: i32 = 512i32; 2316 pub const D3DVTXPCAPS_TEXGEN_SPHEREMAP: i32 = 256i32; 2317 pub const D3DVTXPCAPS_TWEENING: i32 = 64i32; 2318 pub const D3DWRAP_W: i32 = 4i32; 2319 pub type D3DZBUFFERTYPE = i32; 2320 pub const D3DZB_FALSE: D3DZBUFFERTYPE = 0i32; 2321 pub const D3DZB_TRUE: D3DZBUFFERTYPE = 1i32; 2322 pub const D3DZB_USEW: D3DZBUFFERTYPE = 2i32; 2323 pub const D3DZB_FORCE_DWORD: D3DZBUFFERTYPE = 2147483647i32; 2324 pub const D3D_MAX_SIMULTANEOUS_RENDERTARGETS: u32 = 4u32; 2325 #[repr(C)] 2326 pub struct D3D_OMAC { 2327 pub Omac: [u8; 16], 2328 } 2329 impl ::core::marker::Copy for D3D_OMAC {} 2330 impl ::core::clone::Clone for D3D_OMAC { clone(&self) -> Self2331 fn clone(&self) -> Self { 2332 *self 2333 } 2334 } 2335 pub const D3D_OMAC_SIZE: u32 = 16u32; 2336 pub const D3D_SDK_VERSION: u32 = 32u32; 2337 pub type IDirect3D9 = *mut ::core::ffi::c_void; 2338 pub type IDirect3D9Ex = *mut ::core::ffi::c_void; 2339 pub type IDirect3DBaseTexture9 = *mut ::core::ffi::c_void; 2340 pub type IDirect3DCubeTexture9 = *mut ::core::ffi::c_void; 2341 pub type IDirect3DDevice9 = *mut ::core::ffi::c_void; 2342 pub type IDirect3DDevice9Ex = *mut ::core::ffi::c_void; 2343 pub type IDirect3DIndexBuffer9 = *mut ::core::ffi::c_void; 2344 pub type IDirect3DPixelShader9 = *mut ::core::ffi::c_void; 2345 pub type IDirect3DQuery9 = *mut ::core::ffi::c_void; 2346 pub type IDirect3DResource9 = *mut ::core::ffi::c_void; 2347 pub type IDirect3DStateBlock9 = *mut ::core::ffi::c_void; 2348 pub type IDirect3DSurface9 = *mut ::core::ffi::c_void; 2349 pub type IDirect3DSwapChain9 = *mut ::core::ffi::c_void; 2350 pub type IDirect3DSwapChain9Ex = *mut ::core::ffi::c_void; 2351 pub type IDirect3DTexture9 = *mut ::core::ffi::c_void; 2352 pub type IDirect3DVertexBuffer9 = *mut ::core::ffi::c_void; 2353 pub type IDirect3DVertexDeclaration9 = *mut ::core::ffi::c_void; 2354 pub type IDirect3DVertexShader9 = *mut ::core::ffi::c_void; 2355 pub type IDirect3DVolume9 = *mut ::core::ffi::c_void; 2356 pub type IDirect3DVolumeTexture9 = *mut ::core::ffi::c_void; 2357 pub const MAXD3DDECLLENGTH: u32 = 64u32; 2358 pub const MAXD3DDECLUSAGEINDEX: u32 = 15u32; 2359 pub const MAX_DEVICE_IDENTIFIER_STRING: u32 = 512u32; 2360 pub const _FACD3D: u32 = 2166u32; 2361