#pragma once #include #include #include #include namespace vcpkg::System { Optional get_environment_variable(ZStringView varname) noexcept; ExpectedS get_home_dir() noexcept; Optional get_registry_string(void* base_hkey, StringView subkey, StringView valuename); enum class CPUArchitecture { X86, X64, ARM, ARM64, }; Optional to_cpu_architecture(StringView arch); ZStringView to_zstring_view(CPUArchitecture arch) noexcept; CPUArchitecture get_host_processor(); std::vector get_supported_host_architectures(); const Optional& get_program_files_32_bit(); const Optional& get_program_files_platform_bitness(); int get_num_logical_cores(); Optional guess_visual_studio_prompt_target_architecture(); }