diff --git a/.gitignore b/.gitignore index ad66106d..abc2d212 100644 --- a/.gitignore +++ b/.gitignore @@ -376,4 +376,4 @@ FodyWeavers.xsd # Package artifacts /artifacts/ -/tests/integration/cmake/extracted/ \ No newline at end of file +/tests/integration/cmake/extracted/ diff --git a/CMakeLists.txt b/CMakeLists.txt index 92ea662b..6b9fd782 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -26,7 +26,8 @@ option(WISDOM_BUILD_SHARED "Build the dynamic lib." ON) option(WISDOM_BUILD_PLATFORM "Build unified platform extension library." ON) option(WISDOM_BUILD_DOCS "Build the documentation." OFF) option(WISDOM_USE_AGILITY_SDK "Download and use DirectX 12 Agility SDK." ON) -option(WISDOM_USE_CONAN "Use Conan to manage dependencies. Only for library builds." OFF) +option(WISDOM_USE_CONAN + "Use Conan to manage dependencies. Only for library builds." OFF) # DXC deployment options set(WISDOM_VULKAN_HEADER_PATH @@ -34,8 +35,8 @@ set(WISDOM_VULKAN_HEADER_PATH CACHE PATH "Path to custom Vulkan Headers (optional)") # Conan includes Vulkan Headers. -if (WISDOM_USE_CONAN) - set(WISDOM_VULKAN ON) +if(WISDOM_USE_CONAN) + set(WISDOM_VULKAN ON) endif() # Load all dependencies @@ -100,13 +101,16 @@ set(CPACK_PACKAGE_NAME ${PROJECT_NAME}) set(CPACK_PACKAGE_VERSION "${PROJECT_VERSION}") set(CPACK_PACKAGE_VENDOR "Agrael") set(CPACK_NUGET_PACKAGE_AUTHORS "Agrael") -set(CPACK_PACKAGE_DESCRIPTION "A Low-level thin multiplatform and extensible Graphics API layer over Vulkan and DX12") +set(CPACK_PACKAGE_DESCRIPTION + "A Low-level thin multiplatform and extensible Graphics API layer over Vulkan and DX12" +) set(CPACK_PACKAGE_HOMEPAGE_URL "https://agrael1.github.io/Wisdom/") set(CPACK_NUGET_PACKAGE_REPOSITORY_URL "https://github.com/Agrael1/Wisdom.git") set(CPACK_NUGET_PACKAGE_ICON "favicon.png") # pulled from installed files set(CPACK_NUGET_PACKAGE_REPOSITORY_TYPE git) set(CPACK_NUGET_PACKAGE_LICENSE_EXPRESSION "MIT") set(CPACK_NUGET_PACKAGE_README "README.md") # pulled from installed files -set(CPACK_PROJECT_CONFIG_FILE "${CMAKE_CURRENT_LIST_DIR}/cmake/install/cpack-options.cmake") +set(CPACK_PROJECT_CONFIG_FILE + "${CMAKE_CURRENT_LIST_DIR}/cmake/install/cpack-options.cmake") -include(CPack) \ No newline at end of file +include(CPack) diff --git a/cmake/deps.cmake b/cmake/deps.cmake index ddad3b00..bb22e82b 100644 --- a/cmake/deps.cmake +++ b/cmake/deps.cmake @@ -5,7 +5,7 @@ if(NOT WISDOM_USE_CONAN) set(CPM_DONT_UPDATE_MODULE_PATH ON) set(GET_CPM_FILE "${CMAKE_CURRENT_LIST_DIR}/deps/get_cpm.cmake") set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake) - + # Set CPM source cache if (NOT CPM_SOURCE_CACHE) set(CPM_SOURCE_CACHE "${CMAKE_CURRENT_BINARY_DIR}/_deps_cache") diff --git a/cmake/deps/deps_win.cmake b/cmake/deps/deps_win.cmake index f051a0e5..2f761521 100644 --- a/cmake/deps/deps_win.cmake +++ b/cmake/deps/deps_win.cmake @@ -25,8 +25,8 @@ else() D3D12MA_USING_DIRECTX_HEADERS=1 ) - # Guaranteed backwards compatibility. - # Using origin/main to ensure we get the latest headers, + # Guaranteed backwards compatibility. + # Using origin/main to ensure we get the latest headers, # which are compatible with the latest SDKs. CPMAddPackage( NAME dxheaders diff --git a/cmake/functions.cmake b/cmake/functions.cmake index 5ab99722..6b775ea1 100644 --- a/cmake/functions.cmake +++ b/cmake/functions.cmake @@ -14,7 +14,7 @@ if (WIN32) TLS_VERIFY ON TLS_VERSION 1.2 ) - + # Check download status list(GET download_status 0 status_code) if (NOT status_code EQUAL 0) @@ -24,13 +24,13 @@ if (WIN32) message(STATUS "File downloaded successfully to ${FILE_PATH}") endif () endfunction(_ww_load_nuget) - + # Find NuGet executable function(_ww_find_nuget) if (NOT WISDOM_WINDOWS) return() endif () - + # Check provided with WISDOM_NUGET_PATH if (WISDOM_NUGET_PATH) find_program( @@ -56,20 +56,20 @@ if (WIN32) NUGET_EXE NAMES nuget PATHS ${CMAKE_CURRENT_BINARY_DIR}/NuGet) - + if (NOT NUGET_EXE) _ww_load_nuget() set(NUGET_EXE "${CMAKE_CURRENT_BINARY_DIR}/NuGet/NuGet.exe" CACHE INTERNAL "Path to NuGet.exe") endif () endfunction(_ww_find_nuget) - + # Load a NuGet dependency function(_ww_load_nuget_dependency NUGET PLUGIN_NAME ALIAS OUT_DIR) if (${ALIAS}_DIR) message("${ALIAS}_DIR already set, skipping download.") return() endif () - + execute_process(COMMAND ${NUGET} install "${PLUGIN_NAME}" -OutputDirectory ${OUT_DIR}) file(GLOB PLUGIN_DIRS ${OUT_DIR}/${PLUGIN_NAME}.*) list(LENGTH PLUGIN_DIRS PLUGIN_DIRS_L) @@ -77,7 +77,7 @@ if (WIN32) #Sort directories by version in descending order, so the first dir is top version list(SORT PLUGIN_DIRS COMPARE NATURAL ORDER DESCENDING) list(GET PLUGIN_DIRS 0 PLUGIN_DIRX) - + #Remove older version MATH(EXPR PLUGIN_DIRS_L "${PLUGIN_DIRS_L}-1") foreach (I RANGE 1 ${PLUGIN_DIRS_L}) @@ -87,7 +87,7 @@ if (WIN32) else () list(GET PLUGIN_DIRS 0 PLUGIN_DIRX) endif () - + set(${ALIAS}_DIR ${PLUGIN_DIRX} CACHE STRING "${PLUGIN_NAME} PATH" FORCE) endfunction(_ww_load_nuget_dependency) endif() @@ -100,8 +100,8 @@ function(_ww_load_latest_dxc) endif () set(DXC_API_FILE "${CMAKE_CURRENT_BINARY_DIR}/dxc_latest_api.json") - file(DOWNLOAD - "https://api.github.com/repos/microsoft/DirectXShaderCompiler/releases/latest" + file(DOWNLOAD + "https://api.github.com/repos/microsoft/DirectXShaderCompiler/releases/latest" "${DXC_API_FILE}" STATUS api_status ) @@ -135,7 +135,7 @@ function(_ww_load_latest_dxc) set(DXC_LINK ${DXC_LINUX_LINK}) endif () - + # Download DXC using CPM include(FetchContent) FetchContent_Declare( @@ -440,9 +440,9 @@ function(wis_load_agility_sdk) message("Setting up DirectX 12 Agility...") _ww_load_nuget_dependency(${NUGET_EXE} "Microsoft.Direct3D.D3D12" DXA ${CMAKE_CURRENT_BINARY_DIR}) - + string(REGEX MATCH "([0-9]+)\\.([0-9]+)\\.([0-9]+)$" VERSION_MATCH ${DXA_DIR}) - + message("Agility version: ${CMAKE_MATCH_1}.${CMAKE_MATCH_2}.${CMAKE_MATCH_3}") set(DXA_VERSION ${CMAKE_MATCH_1}.${CMAKE_MATCH_2}.${CMAKE_MATCH_3} @@ -450,7 +450,7 @@ function(wis_load_agility_sdk) set(VERSION_MINOR ${CMAKE_MATCH_2} CACHE INTERNAL "") - + set(DXA_HEADERS ${DXA_DIR}/build/native/include) set(DXA_SRC ${DXA_DIR}/build/native/src) set(DXA_BIN ${DXA_DIR}/build/native/bin/x64) @@ -460,19 +460,19 @@ function(wis_load_agility_sdk) set(DXAGILITY_DEBUG_DLL ${DXA_BIN}/d3d12SDKLayers.dll CACHE INTERNAL "") - + add_library(DX12AgilityCore MODULE IMPORTED GLOBAL) set_property(TARGET DX12AgilityCore PROPERTY IMPORTED_LOCATION ${DXAGILITY_DLL}) - + add_library(DX12AgilitySDKLayers MODULE IMPORTED GLOBAL) set_property(TARGET DX12AgilitySDKLayers PROPERTY IMPORTED_LOCATION ${DXAGILITY_DEBUG_DLL}) - + # Header interface library add_library(DX12Agility STATIC) add_library(wis::DX12Agility ALIAS DX12Agility) - + target_include_directories( DX12Agility SYSTEM BEFORE PUBLIC $ $ @@ -489,7 +489,7 @@ function(wis_load_agility_sdk) LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) - + install( IMPORTED_RUNTIME_ARTIFACTS DX12AgilityCore @@ -500,9 +500,9 @@ function(wis_load_agility_sdk) LIBRARY DESTINATION ${CMAKE_INSTALL_BINDIR}) - + install(DIRECTORY ${DXA_HEADERS}/ DESTINATION include/d3dx12) - + set_target_properties(DX12Agility PROPERTIES DX12SDKVER ${VERSION_MINOR} DEBUG_POSTFIX d @@ -585,9 +585,8 @@ function(wis_install_agility_win32) if (wis_install_agility_win32_PATCH_EXE) wis_patch_agility_executable( - ${wis_install_agility_win32_TARGET} + ${wis_install_agility_win32_TARGET} ${CMAKE_CURRENT_BINARY_DIR}/export_agility.c ) endif() endfunction() - diff --git a/cmake/install/cpack-options.cmake b/cmake/install/cpack-options.cmake index 56c78d62..160a7b8d 100644 --- a/cmake/install/cpack-options.cmake +++ b/cmake/install/cpack-options.cmake @@ -5,4 +5,4 @@ if(CPACK_GENERATOR MATCHES "NuGet") elseif(CPACK_GENERATOR MATCHES "ZIP") message(STATUS "Wisdom CPack: ZIP generator detected. Proceeding with standard layout.") # No pre-build script needed! The CMake folders stay intact. -endif() \ No newline at end of file +endif() diff --git a/cmake/install/nuget-prepare.cmake b/cmake/install/nuget-prepare.cmake index 47de9f26..43cebf0c 100644 --- a/cmake/install/nuget-prepare.cmake +++ b/cmake/install/nuget-prepare.cmake @@ -25,4 +25,4 @@ file(GLOB _wisdom_static_libs "${STAGING_DIR}/lib/*.lib") foreach(_lib IN LISTS _wisdom_static_libs) get_filename_component(_lib_name "${_lib}" NAME) file(RENAME "${_lib}" "${NUGET_NATIVE_LIB_DIR}/${_lib_name}") -endforeach() \ No newline at end of file +endforeach() diff --git a/conanfile.py b/conanfile.py index e2ccc619..eff31720 100644 --- a/conanfile.py +++ b/conanfile.py @@ -1,10 +1,16 @@ import os + from conan import ConanFile -from conan.tools.cmake import CMake, cmake_layout, CMakeToolchain, CMakeDeps -from conan.tools.files import copy, load +from conan.tools.cmake import CMake +from conan.tools.cmake import cmake_layout +from conan.tools.cmake import CMakeDeps +from conan.tools.cmake import CMakeToolchain +from conan.tools.files import copy +from conan.tools.files import load class WisdomConan(ConanFile): + """ """ name = "wisdom" package_type = "library" @@ -27,8 +33,9 @@ class WisdomConan(ConanFile): # keep it for now, but remove when we are at CCI def set_version(self): + """ """ version_file_path = os.path.join(self.recipe_folder, "version/VERSION") - + try: self.version = load(self, version_file_path).strip() except Exception as e: @@ -36,12 +43,15 @@ def set_version(self): self.version = "0.0.0" def requirements(self): + """ """ # If windows platform support is enabled, we need to require the D3D12 Memory Allocator if self.settings.os == "Windows": - self.requires("d3d12-memory-allocator/[>=3.0.1 <4]", transitive_headers=True) + self.requires("d3d12-memory-allocator/[>=3.0.1 <4]", + transitive_headers=True) self.requires("vulkan-memory-allocator/3.3.0", transitive_headers=True) def export_sources(self): + """ """ copy( self, "*", @@ -63,17 +73,21 @@ def export_sources(self): ) def config_options(self): + """ """ if self.settings.os == "Windows": self.options.rm_safe("fPIC") def configure(self): + """ """ if self.options.shared: self.options.rm_safe("fPIC") def layout(self): + """ """ cmake_layout(self) def generate(self): + """ """ deps = CMakeDeps(self) deps.generate() @@ -86,7 +100,8 @@ def generate(self): tc.variables["WISDOM_BUILD_EXAMPLES"] = False tc.variables["WISDOM_BUILD_TESTS"] = False tc.variables["WISDOM_BUILD_DOCS"] = False - tc.variables["WISDOM_BUILD_STATIC"] = not self.options.get_safe("shared") + tc.variables["WISDOM_BUILD_STATIC"] = not self.options.get_safe( + "shared") tc.variables["WISDOM_BUILD_SHARED"] = self.options.get_safe("shared") tc.variables["WISDOM_BUILD_PLATFORM"] = self.options.build_platform tc.variables["WISDOM_USE_AGILITY_SDK"] = False @@ -100,52 +115,66 @@ def generate(self): tc.generate() def build(self): + """ """ cmake = CMake(self) cmake.configure() cmake.build() def package(self): + """ """ cmake = CMake(self) cmake.install() def package_info(self): + """ """ # The overarching file namespace (find_package(wisdom)) self.cpp_info.set_property("cmake_file_name", "Wisdom") build_modules = ["lib/cmake/wisdom/functions.cmake"] self.cpp_info.set_property("cmake_build_modules", build_modules) - # Targets: suffix = "d" if self.settings.build_type == "Debug" else "" if self.options.get_safe("shared"): # Core Shared - self.cpp_info.components["core"].set_property("cmake_target_name", "wis::wisdom-shared") + self.cpp_info.components["core"].set_property( + "cmake_target_name", "wis::wisdom-shared") self.cpp_info.components["core"].libs = [f"wisdom-shared{suffix}"] # Platform Shared if self.options.build_platform: - self.cpp_info.components["platform"].set_property("cmake_target_name", "wis::wisdom-platform-shared") + self.cpp_info.components["platform"].set_property( + "cmake_target_name", "wis::wisdom-platform-shared") self.cpp_info.components["platform"].requires = ["core"] - self.cpp_info.components["platform"].libs = [f"wisdom-platform-shared{suffix}"] + self.cpp_info.components["platform"].libs = [ + f"wisdom-platform-shared{suffix}" + ] else: # Core Static - self.cpp_info.components["core"].set_property("cmake_target_name", "wis::wisdom") - self.cpp_info.components["core"].libs = [f"wisdom{suffix}", f"vkma{suffix}"] + self.cpp_info.components["core"].set_property( + "cmake_target_name", "wis::wisdom") + self.cpp_info.components["core"].libs = [ + f"wisdom{suffix}", f"vkma{suffix}" + ] # Platform Static if self.options.build_platform: - self.cpp_info.components["platform"].set_property("cmake_target_name", "wis::wisdom-platform") + self.cpp_info.components["platform"].set_property( + "cmake_target_name", "wis::wisdom-platform") self.cpp_info.components["platform"].requires = ["core"] - self.cpp_info.components["platform"].libs = [f"wisdom-platform{suffix}"] + self.cpp_info.components["platform"].libs = [ + f"wisdom-platform{suffix}" + ] - self.cpp_info.components["core"].requires = ["vulkan-memory-allocator::vulkan-memory-allocator"] + self.cpp_info.components["core"].requires = [ + "vulkan-memory-allocator::vulkan-memory-allocator" + ] if self.settings.os == "Windows": self.cpp_info.components["core"].defines.extend([ "D3D12MA_USING_DIRECTX_HEADERS=1", "VK_USE_PLATFORM_WIN32_KHR=1", ]) - self.cpp_info.components["core"].requires.extend([ - "d3d12-memory-allocator::d3d12-memory-allocator" - ]) - self.cpp_info.components["core"].system_libs.extend(["dxgi", "DXGUID"]) \ No newline at end of file + self.cpp_info.components["core"].requires.extend( + ["d3d12-memory-allocator::d3d12-memory-allocator"]) + self.cpp_info.components["core"].system_libs.extend( + ["dxgi", "DXGUID"]) diff --git a/docs/wisdom/getting_started.h b/docs/wisdom/getting_started.h index f8cf5a60..f1620579 100644 --- a/docs/wisdom/getting_started.h +++ b/docs/wisdom/getting_started.h @@ -126,7 +126,9 @@ * - `WISDOM_BUILD_TESTS=ON/OFF` build tests * - `WISDOM_BUILD_DOCS=ON/OFF` build Doxygen documentation * - `WISDOM_DXC_PATH=` custom DXC location - * - `WISDOM_USE_AGILITY_SDK=OFF` download and build with Agility SDK instead of Windows SDK, this allows using latest DirectX 12 features on older Windows versions, but requires additional setup and dependencies. Default is `OFF`, which uses Windows SDK that comes with the system and DirectX-Headers. + * - `WISDOM_USE_AGILITY_SDK=OFF` download and build with Agility SDK instead of Windows SDK, this allows using latest + * DirectX 12 features on older Windows versions, but requires additional setup and dependencies. Default is `OFF`, + * which uses Windows SDK that comes with the system and DirectX-Headers. * - `WISDOM_VULKAN_HEADER_PATH=` custom Vulkan-Headers location * * @section nuget NuGet Package diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index 68d0a908..1bac2915 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -52,8 +52,8 @@ include(cmake/deps.cmake) add_custom_target( copy_assets COMMAND ${CMAKE_COMMAND} -E echo "Copying assets to example binaries..." - COMMAND ${CMAKE_COMMAND} -E copy_directory - ${CMAKE_CURRENT_SOURCE_DIR}/assets ${EXAMPLE_BIN_OUTPUT}/assets) + COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/assets + ${EXAMPLE_BIN_OUTPUT}/assets) add_example_suite(backend) add_example_suite(compute_particles_c) diff --git a/examples/backend/sdl_backend_c.c b/examples/backend/sdl_backend_c.c index fe878967..451e673f 100644 --- a/examples/backend/sdl_backend_c.c +++ b/examples/backend/sdl_backend_c.c @@ -52,8 +52,8 @@ WisSurface CreateSurface(const SDLPlatform* platform, SDL_Window* window) #if defined(SDL_PLATFORM_WIN32) case SDL_PLATFORM_EXTENSION_WIN32: { WisWin32Extension* win32_extension = (WisWin32Extension*)platform->platform_extension; - HWND hwnd = (HWND) - SDL_GetPointerProperty(SDL_GetWindowProperties(window), SDL_PROP_WINDOW_WIN32_HWND_POINTER, NULL); + HWND hwnd = (HWND + )SDL_GetPointerProperty(SDL_GetWindowProperties(window), SDL_PROP_WINDOW_WIN32_HWND_POINTER, NULL); if (hwnd) { WisWin32WindowDesc desc = { .hinstance = GetModuleHandle(NULL), @@ -69,8 +69,8 @@ WisSurface CreateSurface(const SDLPlatform* platform, SDL_Window* window) case SDL_PLATFORM_EXTENSION_X11: { void* xdisplay = (void*) SDL_GetPointerProperty(SDL_GetWindowProperties(window), SDL_PROP_WINDOW_X11_DISPLAY_POINTER, NULL); - uint64_t xwindow = (uint64_t) - SDL_GetNumberProperty(SDL_GetWindowProperties(window), SDL_PROP_WINDOW_X11_WINDOW_NUMBER, 0); + uint64_t xwindow = (uint64_t + )SDL_GetNumberProperty(SDL_GetWindowProperties(window), SDL_PROP_WINDOW_X11_WINDOW_NUMBER, 0); if (xdisplay && xwindow) { WisXlibWindowDesc desc = { .display = xdisplay, diff --git a/examples/compute_particles_c/entry_main.c b/examples/compute_particles_c/entry_main.c index e5992558..e2f7e8cb 100644 --- a/examples/compute_particles_c/entry_main.c +++ b/examples/compute_particles_c/entry_main.c @@ -1014,15 +1014,14 @@ void Render(BasicRenderer* renderer, const ResourceContainer* resources, const B .store_op = WisStoreOpStore, .clear_value = {0.5f, 1.0f, 1.0f, 1.0f}}}, .render_target_count = 1, - .depth_stencil = { - .target = wisViewHeapGetViewAddress(&renderer->dsv_heap, renderer->frame_index), - .load_op_depth = WisLoadOpClear, - .load_op_stencil = WisLoadOpDontCare, - .store_op_depth = WisStoreOpStore, - .store_op_stencil = WisStoreOpDontCare, - .flags = WisDepthStencilFlagsIgnoreStencil, - .clear_depth = 1.0f - }, + .depth_stencil = + {.target = wisViewHeapGetViewAddress(&renderer->dsv_heap, renderer->frame_index), + .load_op_depth = WisLoadOpClear, + .load_op_stencil = WisLoadOpDontCare, + .store_op_depth = WisStoreOpStore, + .store_op_stencil = WisStoreOpDontCare, + .flags = WisDepthStencilFlagsIgnoreStencil, + .clear_depth = 1.0f}, }; result = wisCommandListBegin(&frame->command_list); diff --git a/examples/hello_triangle/CMakeLists.txt b/examples/hello_triangle/CMakeLists.txt index 83b1dc30..c7aec17c 100644 --- a/examples/hello_triangle/CMakeLists.txt +++ b/examples/hello_triangle/CMakeLists.txt @@ -64,7 +64,9 @@ target_compile_definitions(${PROJECT_NAME}-cpp-headers PUBLIC ${ADD_DEFINITIONS}) add_dependencies(${PROJECT_NAME}-cpp-headers copy_sdl wis_test_compile_shaders) -if(POSTFIX STREQUAL "dx12" AND WISDOM_BUILD_STATIC AND WISDOM_USE_AGILITY_SDK) +if(POSTFIX STREQUAL "dx12" + AND WISDOM_BUILD_STATIC + AND WISDOM_USE_AGILITY_SDK) wis_install_agility_win32(TARGET ${PROJECT_NAME}-cpp) wis_install_agility_win32(TARGET ${PROJECT_NAME}-c) endif() diff --git a/generator/CMakeLists.txt b/generator/CMakeLists.txt index 77761ef7..432cf2c4 100644 --- a/generator/CMakeLists.txt +++ b/generator/CMakeLists.txt @@ -51,7 +51,8 @@ set_target_properties(${PROJECT_NAME} PROPERTIES CXX_STANDARD 20) target_precompile_headers(${PROJECT_NAME} PRIVATE "pch.hpp") # Also generate video extension API by running generator with "video" argument -add_custom_target(generate-video-api +add_custom_target( + generate-video-api COMMAND ${PROJECT_NAME} video WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/.. COMMENT "Generating Video extension API" diff --git a/generator/function.cpp b/generator/function.cpp index d2a0a4a4..3ecc1284 100644 --- a/generator/function.cpp +++ b/generator/function.cpp @@ -486,7 +486,11 @@ std::string Generator::MakeCPPFunctionImpl( : std::string(func.return_type.opt_name); // Prepare out parameter - body += std::format(" {} {}{{}};\n", GetMemberTypeString(func.return_type, backend), ret_value_name); + body += std::format( + " {} {}{{}};\n", + GetMemberTypeString(func.return_type, backend), + ret_value_name + ); body += std::format( " const WisResult wis_result = ::{}({}", diff --git a/generator/generator.cpp b/generator/generator.cpp index 057c04c8..1f454c7f 100644 --- a/generator/generator.cpp +++ b/generator/generator.cpp @@ -211,7 +211,8 @@ void Generator::WriteCAPI(std::filesystem::path dir) #include "wisdom_exports.h" )"; - auto api_macro = module.name == "Core" ? "WIS_INLINE WISDOM_API " : std::format("WIS_INLINE WISDOM_{}_API ", header_guard); + auto api_macro = module.name == "Core" ? "WIS_INLINE WISDOM_API " + : std::format("WIS_INLINE WISDOM_{}_API ", header_guard); // Write header // clang-format off @@ -1932,7 +1933,8 @@ std::string Generator::GetRefs(std::string_view for_type) return refs; } -std::string Generator::GetFunctionCallParameters(const WisFunction& func, Backend backend) { +std::string Generator::GetFunctionCallParameters(const WisFunction& func, Backend backend) +{ constexpr static std::string_view arg_prefix = ",\n "; std::string body; for (size_t i = 0; i < func.parameters.size(); ++i) { diff --git a/generator/generator.hpp b/generator/generator.hpp index ed81b818..8464737c 100644 --- a/generator/generator.hpp +++ b/generator/generator.hpp @@ -2,13 +2,13 @@ #include #include #include +#include #include #include #include #include #include #include -#include #include "types.hpp" diff --git a/generator/pch.hpp b/generator/pch.hpp index 60de6969..70d48f89 100644 --- a/generator/pch.hpp +++ b/generator/pch.hpp @@ -2,10 +2,10 @@ #include #include #include +#include #include #include #include #include #include #include -#include diff --git a/scripts/test-cmake.ps1 b/scripts/test-cmake.ps1 index dccde17f..f3b74a62 100644 --- a/scripts/test-cmake.ps1 +++ b/scripts/test-cmake.ps1 @@ -48,10 +48,10 @@ if ($NoRun) { Write-Host "Skipping execution of Test App due to -NoRun flag..." -ForegroundColor Cyan } else { # 6. Run the compiled executable - # NOTE: Because it's a dynamic build, Windows needs to find wisdom-shared.dll. + # NOTE: Because it's a dynamic build, Windows needs to find wisdom-shared.dll. # We temporarily add the extracted /bin folder to the environment PATH just for this run. $env:PATH = "$($ExtractedRoot.FullName)\bin;$env:PATH" - + Write-Host "Running Test App..." & (Join-Path $CmakeBuildDir "Release\TestApp.exe") Write-Host "Running Test App..." @@ -61,4 +61,4 @@ if ($NoRun) { } -Write-Host "ZIP packaging completely validated!" -ForegroundColor Green \ No newline at end of file +Write-Host "ZIP packaging completely validated!" -ForegroundColor Green diff --git a/scripts/test-conan.ps1 b/scripts/test-conan.ps1 index 214be91f..cea8a91a 100644 --- a/scripts/test-conan.ps1 +++ b/scripts/test-conan.ps1 @@ -7,4 +7,4 @@ $BaseDir = Join-Path $ScriptDir "\.." conan create $BaseDir --build=missing # 2. Test Shared -conan create $BaseDir -o "wisdom/*:shared=True" \ No newline at end of file +conan create $BaseDir -o "wisdom/*:shared=True" diff --git a/scripts/test-nuget.ps1 b/scripts/test-nuget.ps1 index 8f37591b..c0dff0e0 100644 --- a/scripts/test-nuget.ps1 +++ b/scripts/test-nuget.ps1 @@ -60,4 +60,4 @@ foreach ($Linkage in $Linkages) { } } -Write-Host "`nNuGet packaging completely validated for v$WisdomVersion!" -ForegroundColor Green \ No newline at end of file +Write-Host "`nNuGet packaging completely validated for v$WisdomVersion!" -ForegroundColor Green diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index b522b11b..0db81f93 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -5,4 +5,4 @@ if(WISDOM_BUILD_PLATFORM) add_subdirectory(platform) endif() -add_subdirectory(extensions) \ No newline at end of file +add_subdirectory(extensions) diff --git a/src/extensions/CMakeLists.txt b/src/extensions/CMakeLists.txt index 9c991e36..a99b6e2a 100644 --- a/src/extensions/CMakeLists.txt +++ b/src/extensions/CMakeLists.txt @@ -1,7 +1,4 @@ # Each extension will provide an option to build it -# Extensions -# option(WISDOM_BUILD_EXTENSION "Build the X extension." ON) -# if (WISDOM_BUILD_EXTENSION) -# add_subdirectory(extension) -# endif() \ No newline at end of file +# Extensions option(WISDOM_BUILD_EXTENSION "Build the X extension." ON) if +# (WISDOM_BUILD_EXTENSION) add_subdirectory(extension) endif() diff --git a/src/include/CMakeLists.txt b/src/include/CMakeLists.txt index dd653b21..7840f7a6 100644 --- a/src/include/CMakeLists.txt +++ b/src/include/CMakeLists.txt @@ -8,13 +8,7 @@ set(WISDOM_CORE_DEFINITIONS $:WISDOM_VULKAN=1>>) if(WISDOM_DX12) - list( - APPEND - WISDOM_CORE_LIBS - DXGI - DXGUID - d3d12 - GPUOpen::D3D12MemoryAllocator) + list(APPEND WISDOM_CORE_LIBS DXGI DXGUID d3d12 GPUOpen::D3D12MemoryAllocator) list( APPEND diff --git a/src/include/wisdom/bridge/span.hpp b/src/include/wisdom/bridge/span.hpp index 71587b12..12771f1d 100644 --- a/src/include/wisdom/bridge/span.hpp +++ b/src/include/wisdom/bridge/span.hpp @@ -76,8 +76,7 @@ struct contract_violation_error : std::logic_error { inline void contract_violation(const char* msg) { throw contract_violation_error(msg); } #elif defined(TCB_SPAN_TERMINATE_ON_CONTRACT_VIOLATION) -[[noreturn]] inline void contract_violation( - const char* /*unused*/ +[[noreturn]] inline void contract_violation(const char* /*unused*/ ) { std::terminate(); @@ -447,10 +446,8 @@ class span return {data() + (size() - count), count}; } - TCB_SPAN_CONSTEXPR11 span subspan( - size_type offset, - size_type count = dynamic_extent - ) const + TCB_SPAN_CONSTEXPR11 span subspan(size_type offset, size_type count = dynamic_extent) + const { TCB_SPAN_EXPECT(offset <= size() && (count == dynamic_extent || offset + count <= size())); return {data() + offset, count == dynamic_extent ? size() - offset : count}; diff --git a/src/include/wisdom/dx12/dx12_adapter_query.cpp b/src/include/wisdom/dx12/dx12_adapter_query.cpp index c3724275..7af53a06 100644 --- a/src/include/wisdom/dx12/dx12_adapter_query.cpp +++ b/src/include/wisdom/dx12/dx12_adapter_query.cpp @@ -39,11 +39,8 @@ WIS_EXTERN_C WISDOM_API size_t wisDX12AdapterQueryGetAdapterCount(const WisDX12A } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12AdapterQueryGetAdapterDesc( - const WisDX12AdapterQuery* self, - size_t index, - WisAdapterDesc* desc -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12AdapterQueryGetAdapterDesc(const WisDX12AdapterQuery* self, size_t index, WisAdapterDesc* desc) { WisResult res = wis::detail::dx_success; auto& impl = wis::from_handle_ref(self); diff --git a/src/include/wisdom/dx12/dx12_command_allocator.cpp b/src/include/wisdom/dx12/dx12_command_allocator.cpp index 1651629f..d147a785 100644 --- a/src/include/wisdom/dx12/dx12_command_allocator.cpp +++ b/src/include/wisdom/dx12/dx12_command_allocator.cpp @@ -30,10 +30,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12CommandAllocatorReset(const WisDX12Comm } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12CommandAllocatorCreateCommandList( - const WisDX12CommandAllocator* self, - WisDX12CommandList* list -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12CommandAllocatorCreateCommandList(const WisDX12CommandAllocator* self, WisDX12CommandList* list) { auto& [allocator, device, type] = wis::from_handle_ref(self); diff --git a/src/include/wisdom/dx12/dx12_command_list.cpp b/src/include/wisdom/dx12/dx12_command_list.cpp index 8e8b42ff..c8c1684e 100644 --- a/src/include/wisdom/dx12/dx12_command_list.cpp +++ b/src/include/wisdom/dx12/dx12_command_list.cpp @@ -350,10 +350,11 @@ WIS_EXTERN_C WISDOM_API void wisDX12CommandListBeginRenderPass( { .Type = wis::detail::DX12Convert(src.load_op), }, - .EndingAccess = { - .Type = src.resolve_desc ? D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_RESOLVE - : wis::detail::DX12Convert(src.store_op), - }, + .EndingAccess = + { + .Type = src.resolve_desc ? D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_RESOLVE + : wis::detail::DX12Convert(src.store_op), + }, }; if (src.load_op == WisLoadOpClear) { render_targets[i].BeginningAccess.Clear.ClearValue = { @@ -380,8 +381,7 @@ WIS_EXTERN_C WISDOM_API void wisDX12CommandListBeginRenderPass( // Encode the other parameters .pSubresourceParameters = static_cast< - const D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_SUBRESOURCE_PARAMETERS*>( - static_cast(dst) + const D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_SUBRESOURCE_PARAMETERS*>(static_cast(dst) ), .Format = static_cast(dst->format), .ResolveMode = wis::detail::DX12Convert(resolve.mode), @@ -423,11 +423,12 @@ WIS_EXTERN_C WISDOM_API void wisDX12CommandListBeginRenderPass( : src.resolve_depth_desc ? D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_RESOLVE : wis::detail::DX12Convert(src.store_op_depth), }, - .StencilEndingAccess = { - .Type = ignore_stencil ? D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_NO_ACCESS - : src.resolve_stencil_desc ? D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_RESOLVE - : wis::detail::DX12Convert(src.store_op_stencil), - }, + .StencilEndingAccess = + { + .Type = ignore_stencil ? D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_NO_ACCESS + : src.resolve_stencil_desc ? D3D12_RENDER_PASS_ENDING_ACCESS_TYPE_RESOLVE + : wis::detail::DX12Convert(src.store_op_stencil), + }, }; if (src.resolve_depth_desc) { @@ -449,8 +450,7 @@ WIS_EXTERN_C WISDOM_API void wisDX12CommandListBeginRenderPass( // Encode the other parameters .pSubresourceParameters = static_cast< - const D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_SUBRESOURCE_PARAMETERS*>( - static_cast(dst) + const D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_SUBRESOURCE_PARAMETERS*>(static_cast(dst) ), .Format = static_cast(dst->format), .ResolveMode = wis::detail::DX12Convert(resolve.mode), @@ -476,8 +476,7 @@ WIS_EXTERN_C WISDOM_API void wisDX12CommandListBeginRenderPass( .SubresourceCount = layer_count, // Encode the other parameters .pSubresourceParameters = static_cast< - const D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_SUBRESOURCE_PARAMETERS*>( - static_cast(dst) + const D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_SUBRESOURCE_PARAMETERS*>(static_cast(dst) ), .Format = static_cast(dst->format), .ResolveMode = wis::detail::DX12Convert(resolve.mode), @@ -501,8 +500,7 @@ WIS_EXTERN_C WISDOM_API void wisDX12CommandListBeginRenderPass( auto& dst = render_targets[i].EndingAccess.Resolve; auto* src_aux = wis::detail::DX12DecodeViewAddress(src.target); - auto* dst_aux = reinterpret_cast( - dst.pSubresourceParameters + auto* dst_aux = reinterpret_cast(dst.pSubresourceParameters ); wis::span subresource_params{ @@ -514,12 +512,13 @@ WIS_EXTERN_C WISDOM_API void wisDX12CommandListBeginRenderPass( subresource_params[j] = { .SrcSubresource = src_aux->base_subresource + j * src_aux->subresource_stride, .DstSubresource = dst_aux->base_subresource + j * dst_aux->subresource_stride, - .SrcRect = { - .left = 0, - .top = 0, - .right = static_cast(width), - .bottom = static_cast(height), - }, + .SrcRect = + { + .left = 0, + .top = 0, + .right = static_cast(width), + .bottom = static_cast(height), + }, }; } dst.pSubresourceParameters = subresource_params.data(); @@ -552,12 +551,13 @@ WIS_EXTERN_C WISDOM_API void wisDX12CommandListBeginRenderPass( .SrcSubresource = aux->base_subresource + j * aux->subresource_stride, .DstSubresource = (dst_depth_aux ? dst_depth_aux->base_subresource : 0) + j * (dst_depth_aux ? dst_depth_aux->subresource_stride : 0), - .SrcRect = { - .left = 0, - .top = 0, - .right = static_cast(width), - .bottom = static_cast(height), - }, + .SrcRect = + { + .left = 0, + .top = 0, + .right = static_cast(width), + .bottom = static_cast(height), + }, }; } depth_stencil.DepthEndingAccess.Resolve.pSubresourceParameters = subresource_params.data(); @@ -584,12 +584,13 @@ WIS_EXTERN_C WISDOM_API void wisDX12CommandListBeginRenderPass( .SrcSubresource = aux->base_stencil_subresource + j * aux->subresource_stride, .DstSubresource = (dst_stencil_aux ? dst_stencil_aux->base_stencil_subresource : 0) + j * (dst_stencil_aux ? dst_stencil_aux->subresource_stride : 0), - .SrcRect = { - .left = 0, - .top = 0, - .right = static_cast(width), - .bottom = static_cast(height), - }, + .SrcRect = + { + .left = 0, + .top = 0, + .right = static_cast(width), + .bottom = static_cast(height), + }, }; } depth_stencil.StencilEndingAccess.Resolve.pSubresourceParameters = subresource_params.data(); diff --git a/src/include/wisdom/dx12/dx12_command_queue.cpp b/src/include/wisdom/dx12/dx12_command_queue.cpp index d8912c6e..b5f7d687 100644 --- a/src/include/wisdom/dx12/dx12_command_queue.cpp +++ b/src/include/wisdom/dx12/dx12_command_queue.cpp @@ -20,11 +20,8 @@ WIS_EXTERN_C WISDOM_API void wisDX12DestroyCommandQueue(WisDX12CommandQueue* sel } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12CommandQueueSubmit( - const WisDX12CommandQueue* self, - const WisDX12CommandListView* lists, - size_t count -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12CommandQueueSubmit(const WisDX12CommandQueue* self, const WisDX12CommandListView* lists, size_t count) { auto& [queue] = wis::from_handle_ref(self); queue->ExecuteCommandLists(static_cast(count), reinterpret_cast(lists)); @@ -32,11 +29,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12CommandQueueSubmit( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12CommandQueueSignalFence( - const WisDX12CommandQueue* self, - WisDX12FenceView fence, - uint64_t value -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12CommandQueueSignalFence(const WisDX12CommandQueue* self, WisDX12FenceView fence, uint64_t value) { auto& [queue] = wis::from_handle_ref(self); auto hr = queue->Signal(std::bit_cast(fence), value); @@ -48,11 +42,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12CommandQueueSignalFence( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12CommandQueueWaitFence( - const WisDX12CommandQueue* self, - WisDX12FenceView fence, - uint64_t value -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12CommandQueueWaitFence(const WisDX12CommandQueue* self, WisDX12FenceView fence, uint64_t value) { auto& [queue] = wis::from_handle_ref(self); auto hr = queue->Wait(std::bit_cast(fence), value); diff --git a/src/include/wisdom/dx12/dx12_descriptor_heap.cpp b/src/include/wisdom/dx12/dx12_descriptor_heap.cpp index 4d149e42..aac4e712 100644 --- a/src/include/wisdom/dx12/dx12_descriptor_heap.cpp +++ b/src/include/wisdom/dx12/dx12_descriptor_heap.cpp @@ -304,12 +304,13 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12DescriptorHeapWriteStructuredBuffer( .Format = DXGI_FORMAT_UNKNOWN, // must be UNKNOWN for structured buffers .ViewDimension = D3D12_SRV_DIMENSION_BUFFER, .Shader4ComponentMapping = D3D12_DEFAULT_SHADER_4_COMPONENT_MAPPING, - .Buffer = { - .FirstElement = data->array_offset, - .NumElements = data->structure_count, - .StructureByteStride = data->stride_bytes, - .Flags = D3D12_BUFFER_SRV_FLAG_NONE, - }, + .Buffer = + { + .FirstElement = data->array_offset, + .NumElements = data->structure_count, + .StructureByteStride = data->stride_bytes, + .Flags = D3D12_BUFFER_SRV_FLAG_NONE, + }, }; heap.device->CreateShaderResourceView( resource, @@ -333,12 +334,13 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12DescriptorHeapWriteRWStructuredBuffer( D3D12_UNORDERED_ACCESS_VIEW_DESC uav_desc{ .Format = DXGI_FORMAT_UNKNOWN, // must be UNKNOWN for structured buffers .ViewDimension = D3D12_UAV_DIMENSION_BUFFER, - .Buffer = { - .FirstElement = data->array_offset, - .NumElements = data->structure_count, - .StructureByteStride = data->stride_bytes, - .Flags = D3D12_BUFFER_UAV_FLAG_NONE, - }, + .Buffer = + { + .FirstElement = data->array_offset, + .NumElements = data->structure_count, + .StructureByteStride = data->stride_bytes, + .Flags = D3D12_BUFFER_UAV_FLAG_NONE, + }, }; heap.device->CreateUnorderedAccessView( resource, @@ -350,11 +352,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12DescriptorHeapWriteRWStructuredBuffer( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12DescriptorHeapWriteSampler( - const WisDX12DescriptorHeap* self, - const WisSamplerDesc* sampler, - uint32_t index -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12DescriptorHeapWriteSampler(const WisDX12DescriptorHeap* self, const WisSamplerDesc* sampler, uint32_t index) { auto& heap = wis::from_handle_ref(self); @@ -440,11 +439,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12DescriptorHeapWriteRWTexture( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12DescriptorHeapWriteAccelerationStructure( - const WisDX12DescriptorHeap* self, - uint64_t address, - uint32_t index -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12DescriptorHeapWriteAccelerationStructure(const WisDX12DescriptorHeap* self, uint64_t address, uint32_t index) { auto& heap = wis::from_handle_ref(self); D3D12_SHADER_RESOURCE_VIEW_DESC desc{ diff --git a/src/include/wisdom/dx12/dx12_device.cpp b/src/include/wisdom/dx12/dx12_device.cpp index 8a190fb0..bf5eb8e7 100644 --- a/src/include/wisdom/dx12/dx12_device.cpp +++ b/src/include/wisdom/dx12/dx12_device.cpp @@ -34,11 +34,8 @@ WIS_EXTERN_C WISDOM_API void wisDX12DestroyDevice(WisDX12Device* self) } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceCreateCommandQueue( - const WisDX12Device* self, - WisCommandQueueType type, - WisDX12CommandQueue* queue -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12DeviceCreateCommandQueue(const WisDX12Device* self, WisCommandQueueType type, WisDX12CommandQueue* queue) { auto& device = wis::from_handle_ref(self); @@ -70,11 +67,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceCreateCommandQueue( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceCreateCommandAllocator( - const WisDX12Device* self, - WisCommandQueueType type, - WisDX12CommandAllocator* list -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12DeviceCreateCommandAllocator(const WisDX12Device* self, WisCommandQueueType type, WisDX12CommandAllocator* list) { WisResult result = wis::detail::dx_success; auto& device = wis::from_handle_ref(self); @@ -99,11 +93,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceCreateCommandAllocator( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceCreateFence( - const WisDX12Device* self, - uint64_t initial_value, - WisDX12Fence* fence -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12DeviceCreateFence(const WisDX12Device* self, uint64_t initial_value, WisDX12Fence* fence) { WisResult result = wis::detail::dx_success; auto& device = wis::from_handle_ref(self); @@ -132,10 +123,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceCreateFence( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceGetResourceAllocator( - const WisDX12Device* self, - WisDX12ResourceAllocator* allocator -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12DeviceGetResourceAllocator(const WisDX12Device* self, WisDX12ResourceAllocator* allocator) { auto& device = wis::from_handle_ref(self); @@ -271,8 +260,7 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceCreateRootSignature( // Check limits if (push_constant_size + 2 * desc->push_descriptor_count + desc->descriptor_table_count > max_root_parameters) { - return wis::detail::make_result( - E_INVALIDARG + return wis::detail::make_result(E_INVALIDARG ); } @@ -302,9 +290,9 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceCreateRootSignature( auto& src = desc->push_descriptors[i]; if (!wis::detail::DX12IsPushable(src.type)) { - return wis::detail::make_result< - wis::detail::Func(), - "Descriptor type is not pushable to DX12 root signature">(E_INVALIDARG); + return wis::detail:: + make_result(E_INVALIDARG + ); } root_parameters_span[i] = { @@ -372,13 +360,14 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceCreateRootSignature( D3D12_VERSIONED_ROOT_SIGNATURE_DESC rsig_desc{ .Version = D3D_ROOT_SIGNATURE_VERSION_1_2, - .Desc_1_2 = { - .NumParameters = static_cast(num_root_parameters), - .pParameters = root_parameters, - .NumStaticSamplers = 0, - .pStaticSamplers = nullptr, - .Flags = D3D12_ROOT_SIGNATURE_FLAG_ALLOW_INPUT_ASSEMBLER_INPUT_LAYOUT, - }, + .Desc_1_2 = + { + .NumParameters = static_cast(num_root_parameters), + .pParameters = root_parameters, + .NumStaticSamplers = 0, + .pStaticSamplers = nullptr, + .Flags = D3D12_ROOT_SIGNATURE_FLAG_ALLOW_INPUT_ASSEMBLER_INPUT_LAYOUT, + }, }; wis::com_ptr signature; @@ -582,12 +571,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceCreatePipelineCache( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceCreateShader( - const WisDX12Device* self, - const uint8_t* data, - size_t size, - WisDX12Shader* shader -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12DeviceCreateShader(const WisDX12Device* self, const uint8_t* data, size_t size, WisDX12Shader* shader) { if (!data || size == 0) { return wis::detail::make_result(E_INVALIDARG); @@ -599,8 +584,7 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceCreateShader( operator new(wis::aligned_size(size, 8ull) + sizeof(wis::detail::DX12ShaderHeader), std::nothrow) )}; if (!shader_header) { - return wis::detail::make_result( - E_OUTOFMEMORY + return wis::detail::make_result(E_OUTOFMEMORY ); } @@ -1032,11 +1016,10 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceCreateGraphicsPipeline( rehash_input.multiview_mask = desc->render_attachments.view_mask; // Hash pso stream - wis::span pso_stream_bytes{ - // start after bytecodes - reinterpret_cast(&stream.flags), - // end at the end of the struct - reinterpret_cast(&stream + 1) + wis::span pso_stream_bytes{// start after bytecodes + reinterpret_cast(&stream.flags), + // end at the end of the struct + reinterpret_cast(&stream + 1) }; XXH128_hash_t stream_hash = XXH3_128bits(pso_stream_bytes.data(), pso_stream_bytes.size()); rehash_input.pso_hash[0] = stream_hash.low64; @@ -1115,11 +1098,8 @@ WIS_EXTERN_C WISDOM_API bool wisDX12DeviceGetFormatPresentationSupport( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceGetSurfaceParameters( - const WisDX12Device* self, - WisDX12SurfaceView surface, - WisSurfaceParameters* params -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12DeviceGetSurfaceParameters(const WisDX12Device* self, WisDX12SurfaceView surface, WisSurfaceParameters* params) { auto& impl = wis::from_handle_ref(self); *params = { @@ -1227,11 +1207,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceCreateSwapchain( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12DeviceGetFormatProperties( - const WisDX12Device* self, - WisDataFormat format, - WisFormatProperties* properties -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12DeviceGetFormatProperties(const WisDX12Device* self, WisDataFormat format, WisFormatProperties* properties) { auto& impl = wis::from_handle_ref(self); D3D12_FEATURE_DATA_FORMAT_SUPPORT formatSupport = {.Format = wis::detail::DX12Convert(format)}; diff --git a/src/include/wisdom/dx12/dx12_instance.cpp b/src/include/wisdom/dx12/dx12_instance.cpp index 8b456940..1e2df1bd 100644 --- a/src/include/wisdom/dx12/dx12_instance.cpp +++ b/src/include/wisdom/dx12/dx12_instance.cpp @@ -80,11 +80,8 @@ WIS_EXTERN_C WISDOM_API void wisDX12DestroyInstance(WisDX12Instance* self) } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12InstanceQueryAdapters( - const WisDX12Instance* self, - WisAdapterPreference preference, - WisDX12AdapterQuery* query -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12InstanceQueryAdapters(const WisDX12Instance* self, WisAdapterPreference preference, WisDX12AdapterQuery* query) { const auto& instance_impl = wis::from_handle_ref(self); wis::com_ptr factory_ref{instance_impl.factory}; // hold a reference diff --git a/src/include/wisdom/dx12/dx12_pipeline_cache.cpp b/src/include/wisdom/dx12/dx12_pipeline_cache.cpp index 2ceab33e..06abe6c5 100644 --- a/src/include/wisdom/dx12/dx12_pipeline_cache.cpp +++ b/src/include/wisdom/dx12/dx12_pipeline_cache.cpp @@ -20,11 +20,8 @@ WIS_EXTERN_C WISDOM_API void wisDX12DestroyPipelineCache(WisDX12PipelineCache* s } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12PipelineCacheSerialize( - const WisDX12PipelineCache* self, - uint8_t* data, - size_t data_size -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12PipelineCacheSerialize(const WisDX12PipelineCache* self, uint8_t* data, size_t data_size) { auto& [cache, xx] = wis::from_handle_ref(self); auto hr = cache->Serialize(data, data_size); diff --git a/src/include/wisdom/dx12/dx12_swapchain.cpp b/src/include/wisdom/dx12/dx12_swapchain.cpp index b865487d..4fdd87cc 100644 --- a/src/include/wisdom/dx12/dx12_swapchain.cpp +++ b/src/include/wisdom/dx12/dx12_swapchain.cpp @@ -16,12 +16,8 @@ WIS_EXTERN_C WISDOM_API void wisDX12DestroySwapchain(WisDX12Swapchain* self) } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12SwapchainPresent( - const WisDX12Swapchain* self, - WisPresentFlags flags, - const WisRect* rects, - size_t rect_count -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12SwapchainPresent(const WisDX12Swapchain* self, WisPresentFlags flags, const WisRect* rects, size_t rect_count) { auto& swapchain = wis::from_handle_ref(self); UINT dx_flags = swapchain.vsync ? 0 : swapchain.flags & DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING; @@ -68,10 +64,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12SwapchainGetCurrentIndex(const WisDX12S } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12SwapchainUpdate( - const WisDX12Swapchain* self, - const WisSwapchainUpdateDesc* desc -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12SwapchainUpdate(const WisDX12Swapchain* self, const WisSwapchainUpdateDesc* desc) { auto& swapchain = wis::from_handle_ref(self); @@ -104,11 +98,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisDX12SwapchainUpdate( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisDX12SwapchainGetTextures( - const WisDX12Swapchain* self, - WisDX12Texture* buffers, - size_t buffer_count -) +WIS_EXTERN_C WISDOM_API WisResult +wisDX12SwapchainGetTextures(const WisDX12Swapchain* self, WisDX12Texture* buffers, size_t buffer_count) { auto& impl = wis::from_handle_ref(self); if (buffer_count < impl.backbuffer_count) { diff --git a/src/include/wisdom/generated/c_api.h b/src/include/wisdom/generated/c_api.h index 8de7f22c..27a008d6 100644 --- a/src/include/wisdom/generated/c_api.h +++ b/src/include/wisdom/generated/c_api.h @@ -3198,11 +3198,8 @@ WIS_INLINE WISDOM_API WisResult wisDX12CreateInstance( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12InstanceQueryAdapters( - const WisDX12Instance* self, - WisAdapterPreference preference, - WisDX12AdapterQuery* query -); +WIS_INLINE WISDOM_API WisResult +wisDX12InstanceQueryAdapters(const WisDX12Instance* self, WisAdapterPreference preference, WisDX12AdapterQuery* query); /** * @brief Provided by Wisdom 0.7.0. Returns the number of adapters present on the system at the time of the query. @@ -3221,11 +3218,8 @@ WIS_INLINE WISDOM_API size_t wisDX12AdapterQueryGetAdapterCount(const WisDX12Ada * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12AdapterQueryGetAdapterDesc( - const WisDX12AdapterQuery* self, - size_t index, - WisAdapterDesc* desc -); +WIS_INLINE WISDOM_API WisResult +wisDX12AdapterQueryGetAdapterDesc(const WisDX12AdapterQuery* self, size_t index, WisAdapterDesc* desc); /** * @brief Provided by Wisdom 0.7.0. Checks if the adapter at given index supports presentation to given surface. @@ -3268,11 +3262,8 @@ WIS_INLINE WISDOM_API WisResult wisDX12AdapterQueryCreateDevice( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12DeviceCreateCommandQueue( - const WisDX12Device* self, - WisCommandQueueType type, - WisDX12CommandQueue* queue -); +WIS_INLINE WISDOM_API WisResult +wisDX12DeviceCreateCommandQueue(const WisDX12Device* self, WisCommandQueueType type, WisDX12CommandQueue* queue); /** * @brief Provided by Wisdom 0.7.0. Creates a command allocator to allocate command lists with. @@ -3296,11 +3287,8 @@ WIS_INLINE WISDOM_API WisResult wisDX12DeviceCreateCommandAllocator( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12DeviceCreateFence( - const WisDX12Device* self, - uint64_t initial_value, - WisDX12Fence* fence -); +WIS_INLINE WISDOM_API WisResult +wisDX12DeviceCreateFence(const WisDX12Device* self, uint64_t initial_value, WisDX12Fence* fence); /** * @brief Provided by Wisdom 0.7.0. Creates a resource allocator for managing GPU resources. @@ -3309,10 +3297,8 @@ WIS_INLINE WISDOM_API WisResult wisDX12DeviceCreateFence( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12DeviceGetResourceAllocator( - const WisDX12Device* self, - WisDX12ResourceAllocator* allocator -); +WIS_INLINE WISDOM_API WisResult +wisDX12DeviceGetResourceAllocator(const WisDX12Device* self, WisDX12ResourceAllocator* allocator); /** * @brief Provided by Wisdom 0.7.0. Creates a pipeline layout with given descriptor. @@ -3416,12 +3402,8 @@ WIS_INLINE WISDOM_API WisResult wisDX12DeviceCreatePipelineCache( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12DeviceCreateShader( - const WisDX12Device* self, - const uint8_t* data, - size_t size, - WisDX12Shader* shader -); +WIS_INLINE WISDOM_API WisResult +wisDX12DeviceCreateShader(const WisDX12Device* self, const uint8_t* data, size_t size, WisDX12Shader* shader); /** * @brief Provided by Wisdom 0.7.0. Creates a compute pipeline state object with given descriptor. @@ -3474,11 +3456,8 @@ WIS_INLINE WISDOM_API bool wisDX12DeviceGetFormatPresentationSupport( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12DeviceGetSurfaceParameters( - const WisDX12Device* self, - WisDX12SurfaceView surface, - WisSurfaceParameters* params -); +WIS_INLINE WISDOM_API WisResult +wisDX12DeviceGetSurfaceParameters(const WisDX12Device* self, WisDX12SurfaceView surface, WisSurfaceParameters* params); /** * @brief Provided by Wisdom 0.7.0. Creates a swapchain for given surface with given descriptor. @@ -3507,11 +3486,8 @@ WIS_INLINE WISDOM_API WisResult wisDX12DeviceCreateSwapchain( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12DeviceGetFormatProperties( - const WisDX12Device* self, - WisDataFormat format, - WisFormatProperties* properties -); +WIS_INLINE WISDOM_API WisResult +wisDX12DeviceGetFormatProperties(const WisDX12Device* self, WisDataFormat format, WisFormatProperties* properties); /** * @brief Provided by Wisdom 0.7.0. Get the current value of the fence. @@ -3548,11 +3524,8 @@ WIS_INLINE WISDOM_API WisResult wisDX12FenceSignal(const WisDX12Fence* self, uin * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12CommandQueueSubmit( - const WisDX12CommandQueue* self, - const WisDX12CommandListView* lists, - size_t list_count -); +WIS_INLINE WISDOM_API WisResult +wisDX12CommandQueueSubmit(const WisDX12CommandQueue* self, const WisDX12CommandListView* lists, size_t list_count); /** * @brief Provided by Wisdom 0.7.0. Enqueue the signal to the queue, that gets executed after all the work has been @@ -3563,11 +3536,8 @@ WIS_INLINE WISDOM_API WisResult wisDX12CommandQueueSubmit( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12CommandQueueSignalFence( - const WisDX12CommandQueue* self, - WisDX12FenceView fence, - uint64_t value -); +WIS_INLINE WISDOM_API WisResult +wisDX12CommandQueueSignalFence(const WisDX12CommandQueue* self, WisDX12FenceView fence, uint64_t value); /** * @brief Provided by Wisdom 0.7.0. Enqueues wait operation to the command queue. Queue then waits for the fence to be @@ -3578,11 +3548,8 @@ WIS_INLINE WISDOM_API WisResult wisDX12CommandQueueSignalFence( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12CommandQueueWaitFence( - const WisDX12CommandQueue* self, - WisDX12FenceView fence, - uint64_t value -); +WIS_INLINE WISDOM_API WisResult +wisDX12CommandQueueWaitFence(const WisDX12CommandQueue* self, WisDX12FenceView fence, uint64_t value); /** * @brief Provided by Wisdom 0.7.0. Creates a buffer with given descriptor. @@ -3707,11 +3674,8 @@ WIS_INLINE WISDOM_API WisResult wisDX12DescriptorHeapWriteRWStructuredBuffer( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12DescriptorHeapWriteSampler( - const WisDX12DescriptorHeap* self, - const WisSamplerDesc* sampler, - uint32_t index -); +WIS_INLINE WISDOM_API WisResult +wisDX12DescriptorHeapWriteSampler(const WisDX12DescriptorHeap* self, const WisSamplerDesc* sampler, uint32_t index); /** * @brief Provided by Wisdom 0.7.0. Writes a descriptor to the descriptor heap. @@ -3753,11 +3717,8 @@ WIS_INLINE WISDOM_API WisResult wisDX12DescriptorHeapWriteRWTexture( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12DescriptorHeapWriteAccelerationStructure( - const WisDX12DescriptorHeap* self, - uint64_t address, - uint32_t index -); +WIS_INLINE WISDOM_API WisResult +wisDX12DescriptorHeapWriteAccelerationStructure(const WisDX12DescriptorHeap* self, uint64_t address, uint32_t index); /** * @brief Provided by Wisdom 0.7.0. Copies descriptors from one heap to another. @@ -3877,10 +3838,8 @@ WIS_INLINE WISDOM_API WisResult wisDX12CommandAllocatorReset(const WisDX12Comman * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12CommandAllocatorCreateCommandList( - const WisDX12CommandAllocator* self, - WisDX12CommandList* list -); +WIS_INLINE WISDOM_API WisResult +wisDX12CommandAllocatorCreateCommandList(const WisDX12CommandAllocator* self, WisDX12CommandList* list); /** * @brief Provided by Wisdom 0.7.0. Opens the command list, so commands can be recorded to it. @@ -4279,11 +4238,8 @@ WIS_INLINE WISDOM_API void wisDX12CommandListSetBlendFactors( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12PipelineCacheSerialize( - const WisDX12PipelineCache* self, - uint8_t* data, - size_t data_size -); +WIS_INLINE WISDOM_API WisResult +wisDX12PipelineCacheSerialize(const WisDX12PipelineCache* self, uint8_t* data, size_t data_size); /** * @brief Provided by Wisdom 0.7.0. Gets the size of the data in the pipeline cache. @@ -4302,12 +4258,8 @@ WIS_INLINE WISDOM_API size_t wisDX12PipelineCacheGetSerializedSize(const WisDX12 * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12SwapchainPresent( - const WisDX12Swapchain* self, - WisPresentFlags flags, - const WisRect* rects, - size_t rect_count -); +WIS_INLINE WISDOM_API WisResult +wisDX12SwapchainPresent(const WisDX12Swapchain* self, WisPresentFlags flags, const WisRect* rects, size_t rect_count); /** * @brief Provided by Wisdom 0.7.0. Gets the index of the current backbuffer. In case of lazy indexing it may wait for @@ -4327,10 +4279,8 @@ WIS_INLINE WISDOM_API WisResult wisDX12SwapchainGetCurrentIndex(const WisDX12Swa * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12SwapchainUpdate( - const WisDX12Swapchain* self, - const WisSwapchainUpdateDesc* desc -); +WIS_INLINE WISDOM_API WisResult +wisDX12SwapchainUpdate(const WisDX12Swapchain* self, const WisSwapchainUpdateDesc* desc); /** * @brief Provided by Wisdom 0.7.0. Gets the swapchain buffers. The textures are in `WisTextureStateCommon`. @@ -4341,11 +4291,8 @@ WIS_INLINE WISDOM_API WisResult wisDX12SwapchainUpdate( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisDX12SwapchainGetTextures( - const WisDX12Swapchain* self, - WisDX12Texture* buffers, - size_t buffer_count -); +WIS_INLINE WISDOM_API WisResult +wisDX12SwapchainGetTextures(const WisDX12Swapchain* self, WisDX12Texture* buffers, size_t buffer_count); #endif // WISDOM_DX12 @@ -4909,11 +4856,8 @@ WIS_INLINE WISDOM_API WisResult wisVKCreateInstance( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKInstanceQueryAdapters( - const WisVKInstance* self, - WisAdapterPreference preference, - WisVKAdapterQuery* query -); +WIS_INLINE WISDOM_API WisResult +wisVKInstanceQueryAdapters(const WisVKInstance* self, WisAdapterPreference preference, WisVKAdapterQuery* query); /** * @brief Provided by Wisdom 0.7.0. Returns the number of adapters present on the system at the time of the query. @@ -4932,11 +4876,8 @@ WIS_INLINE WISDOM_API size_t wisVKAdapterQueryGetAdapterCount(const WisVKAdapter * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKAdapterQueryGetAdapterDesc( - const WisVKAdapterQuery* self, - size_t index, - WisAdapterDesc* desc -); +WIS_INLINE WISDOM_API WisResult +wisVKAdapterQueryGetAdapterDesc(const WisVKAdapterQuery* self, size_t index, WisAdapterDesc* desc); /** * @brief Provided by Wisdom 0.7.0. Checks if the adapter at given index supports presentation to given surface. @@ -4979,11 +4920,8 @@ WIS_INLINE WISDOM_API WisResult wisVKAdapterQueryCreateDevice( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKDeviceCreateCommandQueue( - const WisVKDevice* self, - WisCommandQueueType type, - WisVKCommandQueue* queue -); +WIS_INLINE WISDOM_API WisResult +wisVKDeviceCreateCommandQueue(const WisVKDevice* self, WisCommandQueueType type, WisVKCommandQueue* queue); /** * @brief Provided by Wisdom 0.7.0. Creates a command allocator to allocate command lists with. @@ -4993,11 +4931,8 @@ WIS_INLINE WISDOM_API WisResult wisVKDeviceCreateCommandQueue( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKDeviceCreateCommandAllocator( - const WisVKDevice* self, - WisCommandQueueType type, - WisVKCommandAllocator* allocator -); +WIS_INLINE WISDOM_API WisResult +wisVKDeviceCreateCommandAllocator(const WisVKDevice* self, WisCommandQueueType type, WisVKCommandAllocator* allocator); /** * @brief Provided by Wisdom 0.7.0. Creates a fence for GPU-CPU and GPU-GPU synchronization. @@ -5007,11 +4942,8 @@ WIS_INLINE WISDOM_API WisResult wisVKDeviceCreateCommandAllocator( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKDeviceCreateFence( - const WisVKDevice* self, - uint64_t initial_value, - WisVKFence* fence -); +WIS_INLINE WISDOM_API WisResult +wisVKDeviceCreateFence(const WisVKDevice* self, uint64_t initial_value, WisVKFence* fence); /** * @brief Provided by Wisdom 0.7.0. Creates a resource allocator for managing GPU resources. @@ -5020,10 +4952,8 @@ WIS_INLINE WISDOM_API WisResult wisVKDeviceCreateFence( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKDeviceGetResourceAllocator( - const WisVKDevice* self, - WisVKResourceAllocator* allocator -); +WIS_INLINE WISDOM_API WisResult +wisVKDeviceGetResourceAllocator(const WisVKDevice* self, WisVKResourceAllocator* allocator); /** * @brief Provided by Wisdom 0.7.0. Creates a pipeline layout with given descriptor. @@ -5033,11 +4963,8 @@ WIS_INLINE WISDOM_API WisResult wisVKDeviceGetResourceAllocator( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKDeviceCreateRootSignature( - const WisVKDevice* self, - const WisRootSignatureDesc* desc, - WisVKRootSignature* layout -); +WIS_INLINE WISDOM_API WisResult +wisVKDeviceCreateRootSignature(const WisVKDevice* self, const WisRootSignatureDesc* desc, WisVKRootSignature* layout); /** * @brief Provided by Wisdom 0.7.0. Creates a descriptor storage with given description. @@ -5047,11 +4974,8 @@ WIS_INLINE WISDOM_API WisResult wisVKDeviceCreateRootSignature( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKDeviceCreateDescriptorHeap( - const WisVKDevice* self, - const WisDescriptorHeapDesc* desc, - WisVKDescriptorHeap* heap -); +WIS_INLINE WISDOM_API WisResult +wisVKDeviceCreateDescriptorHeap(const WisVKDevice* self, const WisDescriptorHeapDesc* desc, WisVKDescriptorHeap* heap); /** * @brief Provided by Wisdom 0.7.0. Creates a view storage with given descriptor. @@ -5127,12 +5051,8 @@ WIS_INLINE WISDOM_API WisResult wisVKDeviceCreatePipelineCache( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKDeviceCreateShader( - const WisVKDevice* self, - const uint8_t* data, - size_t size, - WisVKShader* shader -); +WIS_INLINE WISDOM_API WisResult +wisVKDeviceCreateShader(const WisVKDevice* self, const uint8_t* data, size_t size, WisVKShader* shader); /** * @brief Provided by Wisdom 0.7.0. Creates a compute pipeline state object with given descriptor. @@ -5185,11 +5105,8 @@ WIS_INLINE WISDOM_API bool wisVKDeviceGetFormatPresentationSupport( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKDeviceGetSurfaceParameters( - const WisVKDevice* self, - WisVKSurfaceView surface, - WisSurfaceParameters* params -); +WIS_INLINE WISDOM_API WisResult +wisVKDeviceGetSurfaceParameters(const WisVKDevice* self, WisVKSurfaceView surface, WisSurfaceParameters* params); /** * @brief Provided by Wisdom 0.7.0. Creates a swapchain for given surface with given descriptor. @@ -5218,11 +5135,8 @@ WIS_INLINE WISDOM_API WisResult wisVKDeviceCreateSwapchain( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKDeviceGetFormatProperties( - const WisVKDevice* self, - WisDataFormat format, - WisFormatProperties* properties -); +WIS_INLINE WISDOM_API WisResult +wisVKDeviceGetFormatProperties(const WisVKDevice* self, WisDataFormat format, WisFormatProperties* properties); /** * @brief Provided by Wisdom 0.7.0. Get the current value of the fence. @@ -5259,11 +5173,8 @@ WIS_INLINE WISDOM_API WisResult wisVKFenceSignal(const WisVKFence* self, uint64_ * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKCommandQueueSubmit( - const WisVKCommandQueue* self, - const WisVKCommandListView* lists, - size_t list_count -); +WIS_INLINE WISDOM_API WisResult +wisVKCommandQueueSubmit(const WisVKCommandQueue* self, const WisVKCommandListView* lists, size_t list_count); /** * @brief Provided by Wisdom 0.7.0. Enqueue the signal to the queue, that gets executed after all the work has been @@ -5274,11 +5185,8 @@ WIS_INLINE WISDOM_API WisResult wisVKCommandQueueSubmit( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKCommandQueueSignalFence( - const WisVKCommandQueue* self, - WisVKFenceView fence, - uint64_t value -); +WIS_INLINE WISDOM_API WisResult +wisVKCommandQueueSignalFence(const WisVKCommandQueue* self, WisVKFenceView fence, uint64_t value); /** * @brief Provided by Wisdom 0.7.0. Enqueues wait operation to the command queue. Queue then waits for the fence to be @@ -5289,11 +5197,8 @@ WIS_INLINE WISDOM_API WisResult wisVKCommandQueueSignalFence( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKCommandQueueWaitFence( - const WisVKCommandQueue* self, - WisVKFenceView fence, - uint64_t value -); +WIS_INLINE WISDOM_API WisResult +wisVKCommandQueueWaitFence(const WisVKCommandQueue* self, WisVKFenceView fence, uint64_t value); /** * @brief Provided by Wisdom 0.7.0. Creates a buffer with given descriptor. @@ -5303,11 +5208,8 @@ WIS_INLINE WISDOM_API WisResult wisVKCommandQueueWaitFence( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKResourceAllocatorCreateBuffer( - const WisVKResourceAllocator* self, - const WisBufferDesc* desc, - WisVKBuffer* buffer -); +WIS_INLINE WISDOM_API WisResult +wisVKResourceAllocatorCreateBuffer(const WisVKResourceAllocator* self, const WisBufferDesc* desc, WisVKBuffer* buffer); /** * @brief Provided by Wisdom 0.7.0. Creates a texture with given descriptor. @@ -5349,11 +5251,8 @@ WIS_INLINE WISDOM_API uint64_t wisVKBufferGetGPUAddress(const WisVKBuffer* self) * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKTextureWriteSubresource( - const WisVKTexture* self, - const void* source_data, - const WisTextureRegion* target_region -); +WIS_INLINE WISDOM_API WisResult +wisVKTextureWriteSubresource(const WisVKTexture* self, const void* source_data, const WisTextureRegion* target_region); /** * @brief Provided by Wisdom 0.7.0. Returns the CPU descriptor handle for the descriptor heap. @@ -5418,11 +5317,8 @@ WIS_INLINE WISDOM_API WisResult wisVKDescriptorHeapWriteRWStructuredBuffer( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKDescriptorHeapWriteSampler( - const WisVKDescriptorHeap* self, - const WisSamplerDesc* sampler, - uint32_t index -); +WIS_INLINE WISDOM_API WisResult +wisVKDescriptorHeapWriteSampler(const WisVKDescriptorHeap* self, const WisSamplerDesc* sampler, uint32_t index); /** * @brief Provided by Wisdom 0.7.0. Writes a descriptor to the descriptor heap. @@ -5464,11 +5360,8 @@ WIS_INLINE WISDOM_API WisResult wisVKDescriptorHeapWriteRWTexture( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKDescriptorHeapWriteAccelerationStructure( - const WisVKDescriptorHeap* self, - uint64_t address, - uint32_t index -); +WIS_INLINE WISDOM_API WisResult +wisVKDescriptorHeapWriteAccelerationStructure(const WisVKDescriptorHeap* self, uint64_t address, uint32_t index); /** * @brief Provided by Wisdom 0.7.0. Copies descriptors from one heap to another. @@ -5588,10 +5481,8 @@ WIS_INLINE WISDOM_API WisResult wisVKCommandAllocatorReset(const WisVKCommandAll * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKCommandAllocatorCreateCommandList( - const WisVKCommandAllocator* self, - WisVKCommandList* list -); +WIS_INLINE WISDOM_API WisResult +wisVKCommandAllocatorCreateCommandList(const WisVKCommandAllocator* self, WisVKCommandList* list); /** * @brief Provided by Wisdom 0.7.0. Opens the command list, so commands can be recorded to it. @@ -5984,11 +5875,8 @@ WIS_INLINE WISDOM_API void wisVKCommandListSetBlendFactors( * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKPipelineCacheSerialize( - const WisVKPipelineCache* self, - uint8_t* data, - size_t data_size -); +WIS_INLINE WISDOM_API WisResult +wisVKPipelineCacheSerialize(const WisVKPipelineCache* self, uint8_t* data, size_t data_size); /** * @brief Provided by Wisdom 0.7.0. Gets the size of the data in the pipeline cache. @@ -6007,12 +5895,8 @@ WIS_INLINE WISDOM_API size_t wisVKPipelineCacheGetSerializedSize(const WisVKPipe * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKSwapchainPresent( - const WisVKSwapchain* self, - WisPresentFlags flags, - const WisRect* rects, - size_t rect_count -); +WIS_INLINE WISDOM_API WisResult +wisVKSwapchainPresent(const WisVKSwapchain* self, WisPresentFlags flags, const WisRect* rects, size_t rect_count); /** * @brief Provided by Wisdom 0.7.0. Gets the index of the current backbuffer. In case of lazy indexing it may wait for @@ -6043,11 +5927,8 @@ WIS_INLINE WISDOM_API WisResult wisVKSwapchainUpdate(const WisVKSwapchain* self, * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_API WisResult wisVKSwapchainGetTextures( - const WisVKSwapchain* self, - WisVKTexture* buffers, - size_t buffer_count -); +WIS_INLINE WISDOM_API WisResult +wisVKSwapchainGetTextures(const WisVKSwapchain* self, WisVKTexture* buffers, size_t buffer_count); #endif // WISDOM_VULKAN diff --git a/src/include/wisdom/generated/cpp_api.hpp b/src/include/wisdom/generated/cpp_api.hpp index ef70e682..ba95d003 100644 --- a/src/include/wisdom/generated/cpp_api.hpp +++ b/src/include/wisdom/generated/cpp_api.hpp @@ -3379,11 +3379,8 @@ class DX12DescriptorHeap * @return Result denoting the outcome of operation. * * */ - inline wis::Result WriteTexture( - wis::DX12TextureView texture, - const wis::TextureBinding& data, - std::uint32_t index - ) const noexcept + inline wis::Result WriteTexture(wis::DX12TextureView texture, const wis::TextureBinding& data, std::uint32_t index) + const noexcept { const WisResult wis_result = ::wisDX12DescriptorHeapWriteTexture( &_impl_storage, @@ -3494,10 +3491,8 @@ class DX12ResourceAllocator * @return buffer points to wis::Buffer, which is initialized on success. * * */ - WIS_NODISCARD inline wis::DX12Buffer CreateBuffer( - const wis::BufferDesc& desc, - wis::Result& out_result - ) const noexcept + WIS_NODISCARD inline wis::DX12Buffer CreateBuffer(const wis::BufferDesc& desc, wis::Result& out_result) + const noexcept { wis::DX12Buffer buffer{}; const WisResult wis_result = ::wisDX12ResourceAllocatorCreateBuffer( @@ -3519,10 +3514,8 @@ class DX12ResourceAllocator * @return texture points to wis::Texture, which is initialized on success. * * */ - WIS_NODISCARD inline wis::DX12Texture CreateTexture( - const wis::TextureDesc& desc, - wis::Result& out_result - ) const noexcept + WIS_NODISCARD inline wis::DX12Texture CreateTexture(const wis::TextureDesc& desc, wis::Result& out_result) + const noexcept { wis::DX12Texture texture{}; const WisResult wis_result = ::wisDX12ResourceAllocatorCreateTexture( @@ -3791,11 +3784,8 @@ class DX12CommandList * @param group_count_z specifies number of groups to dispatch in Z dimension; default is 1. * * */ - inline void Dispatch( - std::uint32_t group_count_x, - std::uint32_t group_count_y, - std::uint32_t group_count_z - ) const noexcept + inline void Dispatch(std::uint32_t group_count_x, std::uint32_t group_count_y, std::uint32_t group_count_z) + const noexcept { ::wisDX12CommandListDispatch(&_impl_storage, group_count_x, group_count_y, group_count_z); } @@ -4024,12 +4014,8 @@ class DX12CommandList * @param blend_factor_a specifies blend factor for alpha channel to set. * * */ - inline void SetBlendFactors( - float blend_factor_r, - float blend_factor_g, - float blend_factor_b, - float blend_factor_a - ) const noexcept + inline void SetBlendFactors(float blend_factor_r, float blend_factor_g, float blend_factor_b, float blend_factor_a) + const noexcept { ::wisDX12CommandListSetBlendFactors( &_impl_storage, @@ -4163,10 +4149,8 @@ class DX12Device : public wis::impl::Implements data, - wis::Result& out_result - ) const noexcept + WIS_NODISCARD inline wis::DX12Shader CreateShader(wis::span data, wis::Result& out_result) + const noexcept { wis::DX12Shader shader{}; const WisResult wis_result = ::wisDX12DeviceCreateShader( @@ -4472,13 +4454,10 @@ class DX12Device : public wis::impl::Implements(format)) + return (::wisDX12DeviceGetFormatPresentationSupport(&_impl_storage, surface, static_cast(format)) ); } /** @@ -4545,10 +4524,8 @@ class DX12Device : public wis::impl::Implements data, - wis::Result& out_result - ) const noexcept + WIS_NODISCARD inline wis::VKShader CreateShader(wis::span data, wis::Result& out_result) + const noexcept { wis::VKShader shader{}; const WisResult wis_result = ::wisVKDeviceCreateShader( @@ -6527,10 +6483,8 @@ class VKDevice : public wis::impl::Implements(format))); } @@ -6598,10 +6552,8 @@ class VKDevice : public wis::impl::Implements +#include #include #include #include #include -#include #include namespace wis::impl { diff --git a/src/include/wisdom/vulkan/detail/vk_ext1.hpp b/src/include/wisdom/vulkan/detail/vk_ext1.hpp index 1eb64ad5..443490af 100644 --- a/src/include/wisdom/vulkan/detail/vk_ext1.hpp +++ b/src/include/wisdom/vulkan/detail/vk_ext1.hpp @@ -190,8 +190,7 @@ struct DeviceExtension1 : VKDeviceExtensionImpl { static_cast(descriptor_heap_properties.minSamplerHeapReservedRangeWithEmbedded), features.sampler_desc_size ); - features.descriptor_heap_alignment = static_cast( - descriptor_heap_properties.resourceHeapAlignment + features.descriptor_heap_alignment = static_cast(descriptor_heap_properties.resourceHeapAlignment ); features.sampler_heap_alignment = static_cast(descriptor_heap_properties.samplerHeapAlignment); features.max_descriptor_heap_size = descriptor_heap_properties.maxResourceHeapSize; diff --git a/src/include/wisdom/vulkan/vk_adapter_query.cpp b/src/include/wisdom/vulkan/vk_adapter_query.cpp index 45c1877c..829e96ef 100644 --- a/src/include/wisdom/vulkan/vk_adapter_query.cpp +++ b/src/include/wisdom/vulkan/vk_adapter_query.cpp @@ -132,19 +132,15 @@ inline std::array VKGetSortedQueueFamilies( // Scenario B: We found a shared G+C queue, but now we found a DISTINCT Compute queue. // Overwrite the previous choice! This is how you get Async Compute. - else if ( - (props_span[current].queueFamilyProperties.queueFlags & VK_QUEUE_GRAPHICS_BIT) - && !(flags & VK_QUEUE_GRAPHICS_BIT) - ) { + else if ((props_span[current].queueFamilyProperties.queueFlags & VK_QUEUE_GRAPHICS_BIT) + && !(flags & VK_QUEUE_GRAPHICS_BIT)) { qcom[WisCommandQueueTypeCompute] = i; } // Scenario C: We have found another G+C, but it is different from WisCommandQueueTypeGraphics (probably // impossible) - else if ( - (props_span[current].queueFamilyProperties.queueFlags & VK_QUEUE_GRAPHICS_BIT) - && qcom[WisCommandQueueTypeGraphics] != i - ) { + else if ((props_span[current].queueFamilyProperties.queueFlags & VK_QUEUE_GRAPHICS_BIT) + && qcom[WisCommandQueueTypeGraphics] != i) { qcom[WisCommandQueueTypeCompute] = i; } } @@ -462,11 +458,8 @@ WIS_EXTERN_C WISDOM_API size_t wisVKAdapterQueryGetAdapterCount(const WisVKAdapt } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKAdapterQueryGetAdapterDesc( - const WisVKAdapterQuery* self, - size_t index, - WisAdapterDesc* desc -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKAdapterQueryGetAdapterDesc(const WisVKAdapterQuery* self, size_t index, WisAdapterDesc* desc) { const auto& impl = *wis::from_handle(self); if (index >= impl.adapter_count) { @@ -707,8 +700,7 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKAdapterQueryCreateDevice( } control_block_size += sizeof(std::binary_semaphore) * semaphore_count; - std::unique_ptr header_storage{ - static_cast(operator new(control_block_size, std::nothrow)) + std::unique_ptr header_storage{static_cast(operator new(control_block_size, std::nothrow)) }; if (!header_storage) { return wis::detail::make_result( diff --git a/src/include/wisdom/vulkan/vk_command_allocator.cpp b/src/include/wisdom/vulkan/vk_command_allocator.cpp index bac742b3..593164f5 100644 --- a/src/include/wisdom/vulkan/vk_command_allocator.cpp +++ b/src/include/wisdom/vulkan/vk_command_allocator.cpp @@ -35,10 +35,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKCommandAllocatorReset(const WisVKCommandA } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKCommandAllocatorCreateCommandList( - const WisVKCommandAllocator* self, - WisVKCommandList* list -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKCommandAllocatorCreateCommandList(const WisVKCommandAllocator* self, WisVKCommandList* list) { auto& impl = wis::from_handle_ref(self); auto& header = impl.command_pool_header->header; diff --git a/src/include/wisdom/vulkan/vk_command_queue.cpp b/src/include/wisdom/vulkan/vk_command_queue.cpp index 1e34aa16..f071115e 100644 --- a/src/include/wisdom/vulkan/vk_command_queue.cpp +++ b/src/include/wisdom/vulkan/vk_command_queue.cpp @@ -21,11 +21,8 @@ WIS_EXTERN_C WISDOM_API void wisVKDestroyCommandQueue(WisVKCommandQueue* self) } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKCommandQueueSubmit( - const WisVKCommandQueue* self, - const WisVKCommandListView* lists, - size_t count -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKCommandQueueSubmit(const WisVKCommandQueue* self, const WisVKCommandListView* lists, size_t count) { auto& impl = wis::from_handle_ref(self); @@ -46,11 +43,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKCommandQueueSubmit( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKCommandQueueSignalFence( - const WisVKCommandQueue* self, - WisVKFenceView fence, - uint64_t value -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKCommandQueueSignalFence(const WisVKCommandQueue* self, WisVKFenceView fence, uint64_t value) { auto& impl = wis::from_handle_ref(self); VkQueue queue = impl.queue; @@ -75,11 +69,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKCommandQueueSignalFence( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKCommandQueueWaitFence( - const WisVKCommandQueue* self, - WisVKFenceView fence, - uint64_t value -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKCommandQueueWaitFence(const WisVKCommandQueue* self, WisVKFenceView fence, uint64_t value) { auto& impl = wis::from_handle_ref(self); VkQueue queue = impl.queue; diff --git a/src/include/wisdom/vulkan/vk_descriptor_heap.cpp b/src/include/wisdom/vulkan/vk_descriptor_heap.cpp index fbcb5f35..ca54117a 100644 --- a/src/include/wisdom/vulkan/vk_descriptor_heap.cpp +++ b/src/include/wisdom/vulkan/vk_descriptor_heap.cpp @@ -33,12 +33,13 @@ inline VkImageViewCreateInfo VKGetSRVDesc(const WisTextureBinding& binding) noex .pNext = nullptr, .flags = 0, .format = wis::detail::VKConvert(binding.format), - .components = { - .r = wis::detail::VKConvert(binding.component_mapping.r), - .g = wis::detail::VKConvert(binding.component_mapping.g), - .b = wis::detail::VKConvert(binding.component_mapping.b), - .a = wis::detail::VKConvert(binding.component_mapping.a), - }, + .components = + { + .r = wis::detail::VKConvert(binding.component_mapping.r), + .g = wis::detail::VKConvert(binding.component_mapping.g), + .b = wis::detail::VKConvert(binding.component_mapping.b), + .a = wis::detail::VKConvert(binding.component_mapping.a), + }, }; auto aspect_flags = VKGetAspectFlags(binding); @@ -447,11 +448,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDescriptorHeapWriteRWStructuredBuffer( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKDescriptorHeapWriteSampler( - const WisVKDescriptorHeap* self, - const WisSamplerDesc* sampler, - uint32_t index -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKDescriptorHeapWriteSampler(const WisVKDescriptorHeap* self, const WisSamplerDesc* sampler, uint32_t index) { auto& heap = wis::from_handle_ref(self); auto& table = heap.device_header->header.device_table; @@ -581,11 +579,8 @@ WISDOM_API WisResult wisVKDescriptorHeapWriteRWTexture( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKDescriptorHeapWriteAccelerationStructure( - const WisVKDescriptorHeap* self, - uint64_t address, - uint32_t index -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKDescriptorHeapWriteAccelerationStructure(const WisVKDescriptorHeap* self, uint64_t address, uint32_t index) { auto& heap = wis::from_handle_ref(self); auto& table = heap.device_header->header.device_table; diff --git a/src/include/wisdom/vulkan/vk_device.cpp b/src/include/wisdom/vulkan/vk_device.cpp index ca464944..b9474ace 100644 --- a/src/include/wisdom/vulkan/vk_device.cpp +++ b/src/include/wisdom/vulkan/vk_device.cpp @@ -37,8 +37,7 @@ constexpr VkSpirvResourceTypeFlagsEXT GetResourceTypeFlags(const WisDescriptorTy } } -inline std::array GetMapCountPerShaderType( - const WisRootSignatureDesc& desc +inline std::array GetMapCountPerShaderType(const WisRootSignatureDesc& desc ) noexcept { std::array counts{}; @@ -118,11 +117,8 @@ WIS_EXTERN_C WISDOM_API void wisVKDestroyDevice(WisVKDevice* self) } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateCommandQueue( - const WisVKDevice* self, - WisCommandQueueType type, - WisVKCommandQueue* queue -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKDeviceCreateCommandQueue(const WisVKDevice* self, WisCommandQueueType type, WisVKCommandQueue* queue) { WisResult res = wis::detail::vk_success; auto& device = *wis::from_handle(self); @@ -170,11 +166,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateCommandQueue( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateCommandAllocator( - const WisVKDevice* self, - WisCommandQueueType type, - WisVKCommandAllocator* allocator -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKDeviceCreateCommandAllocator(const WisVKDevice* self, WisCommandQueueType type, WisVKCommandAllocator* allocator) { auto& device = *wis::from_handle(self); auto& table = device.device_header->header.device_table; @@ -231,11 +224,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateCommandAllocator( return wis::detail::vk_success; } -WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateFence( - const WisVKDevice* self, - uint64_t initial_value, - WisVKFence* fence -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKDeviceCreateFence(const WisVKDevice* self, uint64_t initial_value, WisVKFence* fence) { WisResult res = wis::detail::vk_success; auto& device = *wis::from_handle(self); @@ -269,10 +259,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateFence( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceGetResourceAllocator( - const WisVKDevice* self, - WisVKResourceAllocator* allocator -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKDeviceGetResourceAllocator(const WisVKDevice* self, WisVKResourceAllocator* allocator) { auto& device = *wis::from_handle(self); @@ -287,11 +275,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceGetResourceAllocator( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateDescriptorHeap( - const WisVKDevice* self, - const WisDescriptorHeapDesc* desc, - WisVKDescriptorHeap* heap -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKDeviceCreateDescriptorHeap(const WisVKDevice* self, const WisDescriptorHeapDesc* desc, WisVKDescriptorHeap* heap) { auto& device = *wis::from_handle(self); auto& header = device.device_header->header; @@ -449,11 +434,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateViewHeap( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateRootSignature( - const WisVKDevice* self, - const WisRootSignatureDesc* desc, - WisVKRootSignature* layout -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKDeviceCreateRootSignature(const WisVKDevice* self, const WisRootSignatureDesc* desc, WisVKRootSignature* layout) { auto& device = *wis::from_handle(self); auto& header = device.device_header->header; @@ -494,8 +476,7 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateRootSignature( // 2. Count the number of VkDescriptorSetAndBindingMappingEXT structures // Hard part is to pack the tables into a contiguous arrays for each shader type uint32_t total_table_count = 0; - std::array table_counts_per_shader = wis::detail::GetMapCountPerShaderType( - *desc + std::array table_counts_per_shader = wis::detail::GetMapCountPerShaderType(*desc ); std::array local_offsets_per_shader = wis::detail::GetMappingOffsetPerShaderType( @@ -532,17 +513,14 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateRootSignature( } rootsig_header->shader_mapping_offset[i] = local_offsets_per_shader[i].offset - - (local_offsets_per_shader[i].even - ? 0 - : table_counts_per_shader[0]); // If even, "all" maps are after + - (local_offsets_per_shader[i].even ? 0 : table_counts_per_shader[0] + ); // If even, "all" maps are after // this stage, if odd, "all" maps // are before this stage - rootsig_header - ->shader_mapping_sizes[i] = table_counts_per_shader[i] - + (local_offsets_per_shader[i].even - ? 0 - : table_counts_per_shader[0]); // If even, this stage maps + "all" + rootsig_header->shader_mapping_sizes[i] = table_counts_per_shader[i] + + (local_offsets_per_shader[i].even ? 0 : table_counts_per_shader[0] + ); // If even, this stage maps + "all" // maps, if odd, only this stage maps if (!all_offset) { @@ -628,23 +606,21 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateRootSignature( } heap_byte_offset = local_offset + local_count * heap_stride; - auto& mapping = mappings[local_offsets_per_shader[visibility].offset++] = { - .sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_AND_BINDING_MAPPING_EXT, - .pNext = nullptr, - .descriptorSet = entry.bind_space, - .firstBinding = entry.bind_register, - .bindingCount = local_count, - .resourceMask = wis::detail::GetResourceTypeFlags(entry.type), - .source = VK_DESCRIPTOR_MAPPING_SOURCE_HEAP_WITH_PUSH_INDEX_EXT, - .sourceData = { - .pushIndex = { - .heapOffset = local_offset, - .pushOffset = push_address_offset, - .heapIndexStride = 1, - .heapArrayStride = heap_stride, - } - } - }; + auto& mapping = mappings[local_offsets_per_shader[visibility].offset++] = + {.sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_AND_BINDING_MAPPING_EXT, + .pNext = nullptr, + .descriptorSet = entry.bind_space, + .firstBinding = entry.bind_register, + .bindingCount = local_count, + .resourceMask = wis::detail::GetResourceTypeFlags(entry.type), + .source = VK_DESCRIPTOR_MAPPING_SOURCE_HEAP_WITH_PUSH_INDEX_EXT, + .sourceData = + {.pushIndex = { + .heapOffset = local_offset, + .pushOffset = push_address_offset, + .heapIndexStride = 1, + .heapArrayStride = heap_stride, + }}}; } root_param_offsets[root_param_index++] = push_address_offset; @@ -870,12 +846,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreatePipelineCache( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateShader( - const WisVKDevice* self, - const uint8_t* data, - size_t size, - WisVKShader* shader -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKDeviceCreateShader(const WisVKDevice* self, const uint8_t* data, size_t size, WisVKShader* shader) { auto& device = *wis::from_handle(self); auto& table = device.device_header->header.device_table; @@ -894,19 +866,15 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateShader( return wis::detail::make_result(vr); } - auto& shader_impl = *new ( - shader + auto& shader_impl = *new (shader ) wis::impl::VKShaderImpl{.shader_module = shader_handle, .device_header = device.device_header}; device.device_header->AddRef(); return wis::detail::vk_success; } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateComputePipeline( - const WisVKDevice* self, - const WisVKComputePipelineDesc* desc, - WisVKPipeline* pipeline -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKDeviceCreateComputePipeline(const WisVKDevice* self, const WisVKComputePipelineDesc* desc, WisVKPipeline* pipeline) { auto& device = *wis::from_handle(self); auto& table = device.device_header->header.device_table; @@ -953,8 +921,7 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateComputePipeline( return wis::detail::make_result(vr); } - auto& pipeline_impl = *new ( - pipeline + auto& pipeline_impl = *new (pipeline ) wis::impl::VKPipelineImpl{.pipeline = pipeline_handle, .device_header = device.device_header}; pipeline_impl.device_header->AddRef(); return wis::detail::vk_success; @@ -1411,8 +1378,7 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateGraphicsPipeline( return wis::detail::make_result(vr); } - auto& pipeline_impl = *new ( - pipeline + auto& pipeline_impl = *new (pipeline ) wis::impl::VKPipelineImpl{.pipeline = pipeline_handle, .device_header = device.device_header}; device.device_header->AddRef(); @@ -1420,11 +1386,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateGraphicsPipeline( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceGetSurfaceParameters( - const WisVKDevice* self, - WisVKSurfaceView surface, - WisSurfaceParameters* params -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKDeviceGetSurfaceParameters(const WisVKDevice* self, WisVKSurfaceView surface, WisSurfaceParameters* params) { auto& device = wis::from_handle_ref(self); auto atable = device.device_header->header.shared_header->header.adapter_table; @@ -1577,8 +1540,7 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateSwapchain( if (format_it == format_span.end()) { return wis::detail::make_result< wis::detail::Func(), - "The requested format is not supported for presentation on the given surface">( - VK_ERROR_FORMAT_NOT_SUPPORTED + "The requested format is not supported for presentation on the given surface">(VK_ERROR_FORMAT_NOT_SUPPORTED ); } @@ -1640,9 +1602,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateSwapchain( } else if ((tearing = std::ranges::count(modes, VK_PRESENT_MODE_FIFO_RELAXED_KHR) > 0)) { present_mode = VK_PRESENT_MODE_FIFO_RELAXED_KHR; } - } else if ( - std::ranges::count(modes, VK_PRESENT_MODE_MAILBOX_KHR) > 0 && !(desc->flags & WisSwapchainFlagsStereo) - ) { + } else if (std::ranges::count(modes, VK_PRESENT_MODE_MAILBOX_KHR) > 0 + && !(desc->flags & WisSwapchainFlagsStereo)) { present_mode = VK_PRESENT_MODE_MAILBOX_KHR; } } @@ -1848,11 +1809,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceCreateSwapchain( } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKDeviceGetFormatProperties( - const WisVKDevice* self, - WisDataFormat format, - WisFormatProperties* properties -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKDeviceGetFormatProperties(const WisVKDevice* self, WisDataFormat format, WisFormatProperties* properties) { auto& device = wis::from_handle_ref(self); auto atable = device.device_header->header.shared_header->header.adapter_table; diff --git a/src/include/wisdom/vulkan/vk_extensions.cpp b/src/include/wisdom/vulkan/vk_extensions.cpp index 80463666..240f1bb3 100644 --- a/src/include/wisdom/vulkan/vk_extensions.cpp +++ b/src/include/wisdom/vulkan/vk_extensions.cpp @@ -246,8 +246,7 @@ const VkExtensionProperties* wis::VKDeviceExtensionCollector::GetExtensionProper return nullptr; } -wis::VKDeviceExtensionCollector::InitBuffer wis::VKDeviceExtensionCollector::GetInitBuffer( - WisResult& out_res +wis::VKDeviceExtensionCollector::InitBuffer wis::VKDeviceExtensionCollector::GetInitBuffer(WisResult& out_res ) const noexcept { InitBuffer result; diff --git a/src/include/wisdom/vulkan/vk_impl.cpp b/src/include/wisdom/vulkan/vk_impl.cpp index 02d25915..84bd85b6 100644 --- a/src/include/wisdom/vulkan/vk_impl.cpp +++ b/src/include/wisdom/vulkan/vk_impl.cpp @@ -76,11 +76,8 @@ WIS_EXTERN_C WISDOM_API void wisVKDestroyTexture(WisVKTexture* self) } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKTextureWriteSubresource( - const WisVKTexture* self, - const void* source_data, - const WisTextureRegion* target_region -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKTextureWriteSubresource(const WisVKTexture* self, const void* source_data, const WisTextureRegion* target_region) { auto& impl = wis::from_handle_ref(self); auto& header = impl.device_header->header; diff --git a/src/include/wisdom/vulkan/vk_instance.cpp b/src/include/wisdom/vulkan/vk_instance.cpp index 47c1c495..0d5ffc35 100644 --- a/src/include/wisdom/vulkan/vk_instance.cpp +++ b/src/include/wisdom/vulkan/vk_instance.cpp @@ -244,11 +244,8 @@ WIS_EXTERN_C WISDOM_API void wisVKDestroyInstance(WisVKInstance* self) } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKInstanceQueryAdapters( - const WisVKInstance* self, - WisAdapterPreference preference, - WisVKAdapterQuery* query -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKInstanceQueryAdapters(const WisVKInstance* self, WisAdapterPreference preference, WisVKAdapterQuery* query) { // Query can come as partially constructed from C side auto& instance_impl = wis::from_handle_ref(self); diff --git a/src/include/wisdom/vulkan/vk_pipeline_cache.cpp b/src/include/wisdom/vulkan/vk_pipeline_cache.cpp index 1366545a..29c09cfb 100644 --- a/src/include/wisdom/vulkan/vk_pipeline_cache.cpp +++ b/src/include/wisdom/vulkan/vk_pipeline_cache.cpp @@ -23,11 +23,8 @@ WIS_EXTERN_C WISDOM_API void wisVKDestroyPipelineCache(WisVKPipelineCache* self) } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKPipelineCacheSerialize( - const WisVKPipelineCache* self, - uint8_t* data, - size_t data_size -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKPipelineCacheSerialize(const WisVKPipelineCache* self, uint8_t* data, size_t data_size) { auto& impl = wis::from_handle_ref(self); auto& table = impl.device_header->header.device_table; diff --git a/src/include/wisdom/vulkan/vk_resource_allocator.cpp b/src/include/wisdom/vulkan/vk_resource_allocator.cpp index 4a3502c1..75a2bb7b 100644 --- a/src/include/wisdom/vulkan/vk_resource_allocator.cpp +++ b/src/include/wisdom/vulkan/vk_resource_allocator.cpp @@ -102,11 +102,8 @@ WIS_EXTERN_C WISDOM_API void wisVKDestroyResourceAllocator(WisVKResourceAllocato } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKResourceAllocatorCreateBuffer( - const WisVKResourceAllocator* self, - const WisBufferDesc* desc, - WisVKBuffer* buffer -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKResourceAllocatorCreateBuffer(const WisVKResourceAllocator* self, const WisBufferDesc* desc, WisVKBuffer* buffer) { auto& allocator = wis::from_handle_ref(self); @@ -252,13 +249,14 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKResourceAllocatorCreateTexture( .image = image_handle, .oldLayout = VK_IMAGE_LAYOUT_UNDEFINED, .newLayout = VK_IMAGE_LAYOUT_GENERAL, - .subresourceRange = { - .aspectMask = wis::detail::VKAspectFlags(image_info.format), - .baseMipLevel = 0, - .levelCount = image_info.mipLevels, - .baseArrayLayer = 0, - .layerCount = image_info.arrayLayers, - }, + .subresourceRange = + { + .aspectMask = wis::detail::VKAspectFlags(image_info.format), + .baseMipLevel = 0, + .levelCount = image_info.mipLevels, + .baseArrayLayer = 0, + .layerCount = image_info.arrayLayers, + }, }; vr = table.vkTransitionImageLayoutEXT(header.device, 1, &transition_info); diff --git a/src/include/wisdom/vulkan/vk_swapchain.cpp b/src/include/wisdom/vulkan/vk_swapchain.cpp index 551d5b72..bc8d2b1b 100644 --- a/src/include/wisdom/vulkan/vk_swapchain.cpp +++ b/src/include/wisdom/vulkan/vk_swapchain.cpp @@ -79,12 +79,8 @@ WIS_EXTERN_C WISDOM_API void wisVKDestroySwapchain(WisVKSwapchain* self) } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKSwapchainPresent( - const WisVKSwapchain* self, - WisPresentFlags flags, - const WisRect* rects, - size_t rect_count -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKSwapchainPresent(const WisVKSwapchain* self, WisPresentFlags flags, const WisRect* rects, size_t rect_count) { auto& impl = wis::from_handle_ref(self); @@ -162,8 +158,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKSwapchainUpdate(const WisVKSwapchain* sel VkFormat new_format = wis::detail::VKConvert(desc->format); bool size_changed = desc->width != 0 && desc->height != 0 - && (desc->width != create_info.imageExtent.width - || desc->height != create_info.imageExtent.height); + && (desc->width != create_info.imageExtent.width || desc->height != create_info.imageExtent.height + ); bool format_changed = desc->format != WisDataFormatUnknown && new_format != create_info.imageFormat; bool count_changed = desc->image_count != 0 && desc->image_count != create_info.minImageCount; bool vsync_changed = desc->vsync != (create_info.presentMode == VK_PRESENT_MODE_FIFO_KHR); @@ -177,10 +173,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKSwapchainUpdate(const WisVKSwapchain* sel } else if (std::ranges::find(modes, VK_PRESENT_MODE_FIFO_RELAXED_KHR) != std::end(modes)) { present_mode = VK_PRESENT_MODE_FIFO_RELAXED_KHR; } - } else if ( - std::ranges::find(modes, VK_PRESENT_MODE_MAILBOX_KHR) != std::end(modes) - && (create_info.imageArrayLayers == 1) - ) { + } else if (std::ranges::find(modes, VK_PRESENT_MODE_MAILBOX_KHR) != std::end(modes) + && (create_info.imageArrayLayers == 1)) { present_mode = VK_PRESENT_MODE_MAILBOX_KHR; } } @@ -301,11 +295,8 @@ WIS_EXTERN_C WISDOM_API WisResult wisVKSwapchainUpdate(const WisVKSwapchain* sel } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_API WisResult wisVKSwapchainGetTextures( - const WisVKSwapchain* self, - WisVKTexture* buffers, - size_t buffer_count -) +WIS_EXTERN_C WISDOM_API WisResult +wisVKSwapchainGetTextures(const WisVKSwapchain* self, WisVKTexture* buffers, size_t buffer_count) { auto& impl = wis::from_handle_ref(self); diff --git a/src/platform/CMakeLists.txt b/src/platform/CMakeLists.txt index c42171aa..51ed2d10 100644 --- a/src/platform/CMakeLists.txt +++ b/src/platform/CMakeLists.txt @@ -26,8 +26,8 @@ target_include_directories( $) target_link_libraries(wisdom-platform-headers INTERFACE wis::wisdom-headers) -target_compile_definitions( - wisdom-platform-headers INTERFACE WISDOM_PLATFORM_STATIC=1) +target_compile_definitions(wisdom-platform-headers + INTERFACE WISDOM_PLATFORM_STATIC=1) install( TARGETS wisdom-platform-headers @@ -49,9 +49,8 @@ if(WISDOM_BUILD_STATIC) wisdom-platform PUBLIC $ $) - set_target_properties( - wisdom-platform PROPERTIES CXX_STANDARD 20 - DEBUG_POSTFIX d) + set_target_properties(wisdom-platform PROPERTIES CXX_STANDARD 20 DEBUG_POSTFIX + d) install( TARGETS wisdom-platform diff --git a/src/platform/wisdom_platform/dx12/dx12_platform_uwp.cpp b/src/platform/wisdom_platform/dx12/dx12_platform_uwp.cpp index e62fadd0..9ebb4fc7 100644 --- a/src/platform/wisdom_platform/dx12/dx12_platform_uwp.cpp +++ b/src/platform/wisdom_platform/dx12/dx12_platform_uwp.cpp @@ -39,11 +39,8 @@ WIS_EXTERN_C WISDOM_PLATFORM_API void wisDX12DestroyUWPExtension(WisDX12UWPExten } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_PLATFORM_API WisResult wisDX12UWPExtensionCreateSurface( - WisDX12UWPExtension* self, - const WisUWPWindowDesc* info, - WisDX12Surface* surface -) +WIS_EXTERN_C WISDOM_PLATFORM_API WisResult +wisDX12UWPExtensionCreateSurface(WisDX12UWPExtension* self, const WisUWPWindowDesc* info, WisDX12Surface* surface) { new (surface) wis::impl::DX12SurfaceImpl{ .surface = info->core_window, diff --git a/src/platform/wisdom_platform/dx12/dx12_platform_win32.cpp b/src/platform/wisdom_platform/dx12/dx12_platform_win32.cpp index 4491fbd8..81b77710 100644 --- a/src/platform/wisdom_platform/dx12/dx12_platform_win32.cpp +++ b/src/platform/wisdom_platform/dx12/dx12_platform_win32.cpp @@ -39,11 +39,8 @@ WIS_EXTERN_C WISDOM_PLATFORM_API void wisDX12DestroyWin32Extension(WisDX12Win32E } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_PLATFORM_API WisResult wisDX12Win32ExtensionCreateSurface( - WisDX12Win32Extension* self, - const WisWin32WindowDesc* info, - WisDX12Surface* surface -) +WIS_EXTERN_C WISDOM_PLATFORM_API WisResult +wisDX12Win32ExtensionCreateSurface(WisDX12Win32Extension* self, const WisWin32WindowDesc* info, WisDX12Surface* surface) { new (surface) wis::impl::DX12SurfaceImpl{ .surface = info->hwnd, diff --git a/src/platform/wisdom_platform/generated/c_api.h b/src/platform/wisdom_platform/generated/c_api.h index 2c39cb17..e1757104 100644 --- a/src/platform/wisdom_platform/generated/c_api.h +++ b/src/platform/wisdom_platform/generated/c_api.h @@ -132,11 +132,8 @@ WIS_INLINE WISDOM_PLATFORM_API bool wisDX12Win32ExtensionSupported(WisDX12Win32E * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_PLATFORM_API WisResult wisDX12UWPExtensionCreateSurface( - WisDX12UWPExtension* self, - const WisUWPWindowDesc* info, - WisDX12Surface* surface -); +WIS_INLINE WISDOM_PLATFORM_API WisResult +wisDX12UWPExtensionCreateSurface(WisDX12UWPExtension* self, const WisUWPWindowDesc* info, WisDX12Surface* surface); #endif // WISDOM_DX12 @@ -229,11 +226,8 @@ WIS_INLINE WISDOM_PLATFORM_API void wisVKInitWin32Extension(WisVKWin32Extension* * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_PLATFORM_API WisResult wisVKXlibExtensionCreateSurface( - WisVKXlibExtension* self, - const WisXlibWindowDesc* info, - WisVKSurface* surface -); +WIS_INLINE WISDOM_PLATFORM_API WisResult +wisVKXlibExtensionCreateSurface(WisVKXlibExtension* self, const WisXlibWindowDesc* info, WisVKSurface* surface); /** * @brief Provided by Wisdom 0.7.0. Checks if the Xlib surface extension is supported on the current platform. @@ -251,11 +245,8 @@ WIS_INLINE WISDOM_PLATFORM_API bool wisVKXlibExtensionSupported(WisVKXlibExtensi * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_PLATFORM_API WisResult wisVKXCBExtensionCreateSurface( - WisVKXCBExtension* self, - const WisXCBWindowDesc* info, - WisVKSurface* surface -); +WIS_INLINE WISDOM_PLATFORM_API WisResult +wisVKXCBExtensionCreateSurface(WisVKXCBExtension* self, const WisXCBWindowDesc* info, WisVKSurface* surface); /** * @brief Provided by Wisdom 0.7.0. Checks if the XCB surface extension is supported on the current platform. @@ -295,11 +286,8 @@ WIS_INLINE WISDOM_PLATFORM_API bool wisVKWaylandExtensionSupported(WisVKWaylandE * @return Result denoting the outcome of operation. * * */ -WIS_INLINE WISDOM_PLATFORM_API WisResult wisVKWin32ExtensionCreateSurface( - WisVKWin32Extension* self, - const WisWin32WindowDesc* info, - WisVKSurface* surface -); +WIS_INLINE WISDOM_PLATFORM_API WisResult +wisVKWin32ExtensionCreateSurface(WisVKWin32Extension* self, const WisWin32WindowDesc* info, WisVKSurface* surface); /** * @brief Provided by Wisdom 0.7.0. Checks if the Win32 surface extension is supported on the current platform. Always diff --git a/src/platform/wisdom_platform/vulkan/vk_platform_wayland.cpp b/src/platform/wisdom_platform/vulkan/vk_platform_wayland.cpp index a2db30fa..7c88e638 100644 --- a/src/platform/wisdom_platform/vulkan/vk_platform_wayland.cpp +++ b/src/platform/wisdom_platform/vulkan/vk_platform_wayland.cpp @@ -54,11 +54,8 @@ WIS_EXTERN_C WISDOM_PLATFORM_API void wisVKDestroyWaylandExtension(WisVKWaylandE } //---------------------------------------------------------------------------------------------------------------------- -WIS_EXTERN_C WISDOM_PLATFORM_API WisResult wisVKWaylandExtensionCreateSurface( - WisVKWaylandExtension* self, - const WisWaylandWindowDesc* info, - WisVKSurface* surface -) +WIS_EXTERN_C WISDOM_PLATFORM_API WisResult +wisVKWaylandExtensionCreateSurface(WisVKWaylandExtension* self, const WisWaylandWindowDesc* info, WisVKSurface* surface) { auto& impl = wis::from_handle_ref(self); auto vkCreateWaylandSurfaceKHR = reinterpret_cast(impl.vkCreateWaylandSurfaceKHR); diff --git a/src/platform/wisdom_platform/vulkan/vk_platform_win32.cpp b/src/platform/wisdom_platform/vulkan/vk_platform_win32.cpp index c1f3b059..d56332ed 100644 --- a/src/platform/wisdom_platform/vulkan/vk_platform_win32.cpp +++ b/src/platform/wisdom_platform/vulkan/vk_platform_win32.cpp @@ -80,11 +80,8 @@ WIS_EXTERN_C WISDOM_PLATFORM_API void wisVKDestroyWin32Extension(WisVKWin32Exten } //---------------------------------------------------------------------------------------------------------------------- -WISDOM_PLATFORM_API WisResult wisVKWin32ExtensionCreateSurface( - WisVKWin32Extension* self, - const WisWin32WindowDesc* info, - WisVKSurface* surface -) +WISDOM_PLATFORM_API WisResult +wisVKWin32ExtensionCreateSurface(WisVKWin32Extension* self, const WisWin32WindowDesc* info, WisVKSurface* surface) { auto& impl = wis::from_handle_ref(self); auto vkCreateWin32SurfaceKHR = reinterpret_cast(impl.vkCreateWin32SurfaceKHR); diff --git a/src/platform/wisdom_platform/vulkan/vk_platform_xcb.cpp b/src/platform/wisdom_platform/vulkan/vk_platform_xcb.cpp index f8080746..18e5a05a 100644 --- a/src/platform/wisdom_platform/vulkan/vk_platform_xcb.cpp +++ b/src/platform/wisdom_platform/vulkan/vk_platform_xcb.cpp @@ -58,11 +58,8 @@ WIS_EXTERN_C WISDOM_PLATFORM_API void wisVKDestroyXCBExtension(WisVKXCBExtension } //---------------------------------------------------------------------------------------------------------------------- -WISDOM_PLATFORM_API WisResult wisVKXCBExtensionCreateSurface( - WisVKXCBExtension* self, - const WisXCBWindowDesc* info, - WisVKSurface* surface -) +WISDOM_PLATFORM_API WisResult +wisVKXCBExtensionCreateSurface(WisVKXCBExtension* self, const WisXCBWindowDesc* info, WisVKSurface* surface) { auto& impl = wis::from_handle_ref(self); auto vkCreateXcbSurfaceKHR = reinterpret_cast(impl.vkCreateXcbSurfaceKHR); diff --git a/src/platform/wisdom_platform/vulkan/vk_platform_xlib.cpp b/src/platform/wisdom_platform/vulkan/vk_platform_xlib.cpp index c896e8ff..9b8ebc73 100644 --- a/src/platform/wisdom_platform/vulkan/vk_platform_xlib.cpp +++ b/src/platform/wisdom_platform/vulkan/vk_platform_xlib.cpp @@ -59,11 +59,8 @@ WIS_EXTERN_C WISDOM_PLATFORM_API void wisVKDestroyXlibExtension(WisVKXlibExtensi } //---------------------------------------------------------------------------------------------------------------------- -WISDOM_PLATFORM_API WisResult wisVKXlibExtensionCreateSurface( - WisVKXlibExtension* self, - const WisXlibWindowDesc* info, - WisVKSurface* surface -) +WISDOM_PLATFORM_API WisResult +wisVKXlibExtensionCreateSurface(WisVKXlibExtension* self, const WisXlibWindowDesc* info, WisVKSurface* surface) { auto& impl = wis::from_handle_ref(self); auto vkCreateXlibSurfaceKHR = reinterpret_cast(impl.vkCreateXlibSurfaceKHR); diff --git a/test_package/CMakeLists.txt b/test_package/CMakeLists.txt index 96bbfd8d..19ca3121 100644 --- a/test_package/CMakeLists.txt +++ b/test_package/CMakeLists.txt @@ -5,7 +5,7 @@ find_package(Wisdom REQUIRED) add_executable(test_app main.cpp) if(WISDOM_IS_SHARED) - target_link_libraries(test_app PRIVATE wis::wisdom-shared) + target_link_libraries(test_app PRIVATE wis::wisdom-shared) else() - target_link_libraries(test_app PRIVATE wis::wisdom) + target_link_libraries(test_app PRIVATE wis::wisdom) endif() diff --git a/test_package/CMakeUserPresets.json b/test_package/CMakeUserPresets.json index eafe1786..15916667 100644 --- a/test_package/CMakeUserPresets.json +++ b/test_package/CMakeUserPresets.json @@ -1,9 +1,7 @@ { - "version": 4, - "vendor": { - "conan": {} - }, - "include": [ - "build/msvc-195-x86_64-20-release/generators/CMakePresets.json" - ] -} \ No newline at end of file + "version": 4, + "vendor": { + "conan": {} + }, + "include": ["build/msvc-195-x86_64-20-release/generators/CMakePresets.json"] +} diff --git a/test_package/conanfile.py b/test_package/conanfile.py index 9cf9befc..e5432794 100644 --- a/test_package/conanfile.py +++ b/test_package/conanfile.py @@ -1,19 +1,27 @@ import os + from conan import ConanFile -from conan.tools.cmake import CMake, cmake_layout, CMakeToolchain from conan.tools.build import can_run +from conan.tools.cmake import CMake +from conan.tools.cmake import cmake_layout +from conan.tools.cmake import CMakeToolchain + class WisdomTestConan(ConanFile): + """ """ settings = "os", "compiler", "build_type", "arch" generators = "CMakeDeps" def requirements(self): + """ """ self.requires(self.tested_reference_str) def layout(self): + """ """ cmake_layout(self) def generate(self): + """ """ tc = CMakeToolchain(self) # Check if the wisdom package we are testing was built as shared is_shared = self.dependencies["wisdom"].options.shared @@ -22,11 +30,13 @@ def generate(self): tc.generate() def build(self): + """ """ cmake = CMake(self) cmake.configure() cmake.build() def test(self): + """ """ if can_run(self): cmd = os.path.join(self.cpp.build.bindir, "test_app") - self.run(cmd, env="conanrun") \ No newline at end of file + self.run(cmd, env="conanrun") diff --git a/test_package/main.cpp b/test_package/main.cpp index a15ed5c9..eb58a56a 100644 --- a/test_package/main.cpp +++ b/test_package/main.cpp @@ -1,9 +1,9 @@ #include int main() -{ - wis::Result result{}; - wis::DebugDesc debug_desc{true}; - wis::Instance instance = wis::CreateInstance(&debug_desc, {}, result); - return 0; -} \ No newline at end of file +{ + wis::Result result{}; + wis::DebugDesc debug_desc{true}; + wis::Instance instance = wis::CreateInstance(&debug_desc, {}, result); + return 0; +} diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index ca11c3bd..f9de6d2e 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -6,9 +6,13 @@ function(wis_add_test TARGET SOURCES IMPL) add_executable(${TEST_TARGET} ${SOURCES}) if(WISDOM_BUILD_STATIC) # Link against static library if built - target_link_libraries(${TEST_TARGET} PUBLIC wis::wisdom wis::wisdom-platform Catch2::Catch2WithMain) + target_link_libraries( + ${TEST_TARGET} PUBLIC wis::wisdom wis::wisdom-platform + Catch2::Catch2WithMain) else() - target_link_libraries(${TEST_TARGET} PUBLIC wis::wisdom-headers wis::wisdom-platform-headers Catch2::Catch2WithMain) + target_link_libraries( + ${TEST_TARGET} PUBLIC wis::wisdom-headers wis::wisdom-platform-headers + Catch2::Catch2WithMain) endif() set_target_properties( diff --git a/tests/basic/CMakeLists.txt b/tests/basic/CMakeLists.txt index 44554a0a..28ed3dd0 100644 --- a/tests/basic/CMakeLists.txt +++ b/tests/basic/CMakeLists.txt @@ -8,4 +8,4 @@ if(WISDOM_VULKAN) wis_add_test(test-basic "${TEST_SOURCES}" "vk") endif() -target_sources(test-basic-vk PRIVATE "platform_check.cpp") \ No newline at end of file +target_sources(test-basic-vk PRIVATE "platform_check.cpp") diff --git a/tests/basic/platform_check.cpp b/tests/basic/platform_check.cpp index 03ea3325..8e0905dc 100644 --- a/tests/basic/platform_check.cpp +++ b/tests/basic/platform_check.cpp @@ -28,7 +28,7 @@ TEST_CASE("check_platform_support") ); // Expect partial success - REQUIRE(result.status >= 0); + REQUIRE(result.status >= 0); #ifdef WISDOM_WINDOWS printf("XCB supported: %s\n", wisXCBExtensionSupported(&xcb_extension) ? "Yes" : "No"); @@ -43,7 +43,6 @@ TEST_CASE("check_platform_support") bool wayland_supported = wisWaylandExtensionSupported(&wayland_extension); bool win32_supported = wisWin32ExtensionSupported(&win32_extension); - printf("XCB supported: %s\n", xcb_supported ? "Yes" : "No"); printf("Xlib supported: %s\n", xlib_supported ? "Yes" : "No"); printf("Wayland supported: %s\n", wayland_supported ? "Yes" : "No"); diff --git a/tests/integration/cmake/CMakeLists.txt b/tests/integration/cmake/CMakeLists.txt index d91a906f..efc6b77b 100644 --- a/tests/integration/cmake/CMakeLists.txt +++ b/tests/integration/cmake/CMakeLists.txt @@ -13,4 +13,4 @@ target_link_libraries(TestAppShared PRIVATE wis::wisdom-shared) target_link_libraries(TestApp PRIVATE wis::wisdom) target_link_libraries(TestAppHeaders PRIVATE wis::wisdom-headers) -set_target_properties(TestAppHeaders PROPERTIES CXX_STANDARD 20) \ No newline at end of file +set_target_properties(TestAppHeaders PROPERTIES CXX_STANDARD 20) diff --git a/tests/integration/nuget/nuget.config b/tests/integration/nuget/nuget.config index 0b8ca762..df933c33 100644 --- a/tests/integration/nuget/nuget.config +++ b/tests/integration/nuget/nuget.config @@ -4,4 +4,4 @@ - \ No newline at end of file + diff --git a/tests/integration/nuget/test.vcxproj b/tests/integration/nuget/test.vcxproj index e5504098..fb395801 100644 --- a/tests/integration/nuget/test.vcxproj +++ b/tests/integration/nuget/test.vcxproj @@ -23,7 +23,7 @@ Unicode - + @@ -45,4 +45,4 @@ - \ No newline at end of file + diff --git a/xml/enums.xml b/xml/enums.xml index c8156fa3..a9814d88 100644 --- a/xml/enums.xml +++ b/xml/enums.xml @@ -533,13 +533,13 @@ A two-plane format with a single 8-bit Y plane followed by an interleaved UV pla - + - + diff --git a/xml/spec_template.xml b/xml/spec_template.xml index 814616c8..6b56aa36 100644 --- a/xml/spec_template.xml +++ b/xml/spec_template.xml @@ -3,24 +3,24 @@ - + - + - + - + - + - \ No newline at end of file +