Monado OpenXR Runtime
|
Split out from client_d3d12_swapchain to ensure that it is standard layout, std::vector for instance is not standard layout. More...
Public Member Functions | |
client_d3d12_swapchain_data (enum u_logging_level log_level) | |
Data Fields | |
std::vector< wil::unique_handle > | handles |
The shared handles for all our images. More... | |
std::vector< wil::com_ptr< ID3D12Resource > > | images |
Images. More... | |
std::vector< wil::com_ptr< ID3D12Resource > > | app_images |
Images used by the application. More... | |
std::vector< wil::com_ptr< ID3D12CommandList > > | commandsToApp |
Command list per-image to put the resource in a state for acquire (appResourceState) from compositorResourceState. More... | |
std::vector< wil::com_ptr< ID3D12CommandList > > | commandsToCompositor |
Command list per-image to put the resource in a state for composition (compositorResourceState) from appResourceState. More... | |
D3D12_RESOURCE_STATES | appResourceState = D3D12_RESOURCE_STATE_RENDER_TARGET |
State we hand over the image in, and expect it back in. More... | |
D3D12_RESOURCE_STATES | compositorResourceState = D3D12_RESOURCE_STATE_COMMON |
State the compositor wants the image in before use. More... | |
std::vector< D3D12_RESOURCE_STATES > | state |
std::vector< wil::unique_handle > | comp_handles |
Optional app to compositor copy mechanism, used as a workaround for d3d12 -> Vulkan interop issues. More... | |
std::vector< wil::com_ptr< ID3D12Resource > > | comp_images |
Images used by the compositor. More... | |
std::vector< wil::com_ptr< ID3D12CommandList > > | comp_copy_commands |
Command list per-image to copy from app image to compositor image. More... | |
Split out from client_d3d12_swapchain to ensure that it is standard layout, std::vector for instance is not standard layout.
std::vector<wil::com_ptr<ID3D12Resource> > client_d3d12_swapchain_data::app_images |
Images used by the application.
D3D12_RESOURCE_STATES client_d3d12_swapchain_data::appResourceState = D3D12_RESOURCE_STATE_RENDER_TARGET |
State we hand over the image in, and expect it back in.
std::vector<wil::com_ptr<ID3D12CommandList> > client_d3d12_swapchain_data::commandsToApp |
Command list per-image to put the resource in a state for acquire (appResourceState) from compositorResourceState.
std::vector<wil::com_ptr<ID3D12CommandList> > client_d3d12_swapchain_data::commandsToCompositor |
Command list per-image to put the resource in a state for composition (compositorResourceState) from appResourceState.
std::vector<wil::com_ptr<ID3D12CommandList> > client_d3d12_swapchain_data::comp_copy_commands |
Command list per-image to copy from app image to compositor image.
std::vector<wil::unique_handle> client_d3d12_swapchain_data::comp_handles |
Optional app to compositor copy mechanism, used as a workaround for d3d12 -> Vulkan interop issues.
Shared handles for compositor images
std::vector<wil::com_ptr<ID3D12Resource> > client_d3d12_swapchain_data::comp_images |
Images used by the compositor.
D3D12_RESOURCE_STATES client_d3d12_swapchain_data::compositorResourceState = D3D12_RESOURCE_STATE_COMMON |
State the compositor wants the image in before use.
std::vector<wil::unique_handle> client_d3d12_swapchain_data::handles |
The shared handles for all our images.
std::vector<wil::com_ptr<ID3D12Resource> > client_d3d12_swapchain_data::images |
Images.