| 400 | } |
| 401 | |
| 402 | PlatformTools* GameCooker::GetTools(BuildPlatform platform) |
| 403 | { |
| 404 | PROFILE_MEM(Editor); |
| 405 | PlatformTools* result = nullptr; |
| 406 | if (!Tools.TryGet(platform, result)) |
| 407 | { |
| 408 | switch (platform) |
| 409 | { |
| 410 | #if PLATFORM_TOOLS_WINDOWS |
| 411 | case BuildPlatform::Windows32: |
| 412 | result = New<WindowsPlatformTools>(ArchitectureType::x86); |
| 413 | break; |
| 414 | case BuildPlatform::Windows64: |
| 415 | result = New<WindowsPlatformTools>(ArchitectureType::x64); |
| 416 | break; |
| 417 | case BuildPlatform::WindowsARM64: |
| 418 | result = New<WindowsPlatformTools>(ArchitectureType::ARM64); |
| 419 | break; |
| 420 | #endif |
| 421 | #if PLATFORM_TOOLS_UWP |
| 422 | case BuildPlatform::UWPx86: |
| 423 | result = New<UWPPlatformTools>(ArchitectureType::x86); |
| 424 | break; |
| 425 | case BuildPlatform::UWPx64: |
| 426 | result = New<UWPPlatformTools>(ArchitectureType::x64); |
| 427 | break; |
| 428 | #endif |
| 429 | #if PLATFORM_TOOLS_XBOX_ONE |
| 430 | case BuildPlatform::XboxOne: |
| 431 | result = New<XboxOnePlatformTools>(); |
| 432 | break; |
| 433 | #endif |
| 434 | #if PLATFORM_TOOLS_LINUX |
| 435 | case BuildPlatform::LinuxX64: |
| 436 | result = New<LinuxPlatformTools>(); |
| 437 | break; |
| 438 | #endif |
| 439 | #if PLATFORM_TOOLS_PS4 |
| 440 | case BuildPlatform::PS4: |
| 441 | result = New<PS4PlatformTools>(); |
| 442 | break; |
| 443 | #endif |
| 444 | #if PLATFORM_TOOLS_XBOX_SCARLETT |
| 445 | case BuildPlatform::XboxScarlett: |
| 446 | result = New<XboxScarlettPlatformTools>(); |
| 447 | break; |
| 448 | #endif |
| 449 | #if PLATFORM_TOOLS_ANDROID |
| 450 | case BuildPlatform::AndroidARM64: |
| 451 | result = New<AndroidPlatformTools>(ArchitectureType::ARM64); |
| 452 | break; |
| 453 | #endif |
| 454 | #if PLATFORM_TOOLS_SWITCH |
| 455 | case BuildPlatform::Switch: |
| 456 | result = New<SwitchPlatformTools>(); |
| 457 | break; |
| 458 | #endif |
| 459 | #if PLATFORM_TOOLS_PS5 |