IddCxSwapChainGetPhysicallyContiguousAddress function (iddcx.h)

IddCxSwapChainGetPhysicallyContiguousAddress retrieves the physical address of the specified swapchain's currently acquired surface.

Syntax

HRESULT IddCxSwapChainGetPhysicallyContiguousAddress(
  [in]  IDDCX_SWAPCHAIN  SwapChainObject,
  [out] PHYSICAL_ADDRESS *pSurfaceAddresss
);

Parameters

[in] SwapChainObject

The IDDCX_SWAPCHAIN object used to query the physical address of the currently acquired surface.

[out] pSurfaceAddresss

Pointer to a PHYSICAL_ADDRESS variable that is filled in with either the physical address of a surface or nullptr.

Return value

IddCxSwapChainGetPhysicallyContiguousAddress returns S_OK on success and indicates a valid physical pointer in pSurface. If the initial request to allocate primaries in physically contiguous memory could not be satisfied then this method will return E_NOINTERFACE. If a surface has not been currently acquired, or if pSurface is nullptr then this method will return E_INVALIDARG.

Remarks

IddCxSwapChainGetPhysicallyContiguousAddress looks up the currently acquired surface of the specified swapchain and first performs a wait for any pending render commands. Once the wait is successful, it retrieves the physical address of the surface if the initial request succeeded, and then performs a cache flush and invalidation on the range that contains the surface.

Requirements

Requirement Value
Minimum supported server Windows Server 2022
Header iddcx.h

See also

IDDCX_ADAPTER_FLAGS

IddCxSwapChainReleaseAndAcquireBuffer

IddCxSwapChainReleaseAndAcquireSystemBuffer