D3DDDIARG_LOCKASYNC結構 (d3dumddi.h)

D3DDDIARG_LOCKASYNC結構描述要鎖定的資源或資源內的介面。

語法

typedef struct _D3DDDIARG_LOCKASYNC {
  [in]  HANDLE                 hResource;
  [in]  UINT                   SubResourceIndex;
  [in]  D3DDDI_LOCKASYNCFLAGS  Flags;
  union {
    [in]  D3DDDIRANGE Range;
    [in]  RECT        Area;
    [in]  D3DDDIBOX   Box;
  };
  [out] HANDLE                 hCookie;
  [out] VOID                   *pSurfData;
  [out] UINT                   Pitch;
  [out] UINT                   SlicePitch;
        D3DGPU_VIRTUAL_ADDRESS GpuVirtualAddress;
} D3DDDIARG_LOCKASYNC;

成員

[in] hResource

要鎖定之資源的句柄。

[in] SubResourceIndex

hResource 指定的資源中以零起始的索引。 此索引表示要鎖定的子資源或表面。

[in] Flags

D3DDDI_LOCKASYNCFLAGS結構,表示在位字段旗標中如何鎖定資源。

注意 某些旗標與其他旗標互斥。 如需詳細資訊,請參閱接下來的<備註>一節。
 

[in] Range

D3DDDIRANGE結構,描述要鎖定之線性資源的子範圍,如果 RangeValid 位欄位旗標是在 Flags 指定的D3DDDI_LOCKASYNCFLAGS結構中設定的。

[in] Area

如果 AreaValid 位字段旗標是在 Flags 指定的D3DDDI_LOCKASYNCFLAGS結構中設定,則為描述要鎖定之表面子目錄的 RECT 結構。

[in] Box

D3DDDIBOX結構,描述要鎖定之磁碟區的子卷,如果 BoxValid 位欄位旗標是在 Flags 所指定D3DDDI_LOCKASYNCFLAGS結構中設定的。

[out] hCookie

表示已重新命名資源的句柄。 只有在 Flags 指定的D3DDDI_LOCKASYNCFLAGS結構中設定 Discard 位字段旗標時,此句柄才有效。

[out] pSurfData

鎖定之資源的記憶體區域指標。 使用者模式顯示驅動程式的 LockAsync 函式會傳回 Microsoft Direct3D 執行時間的這個指標。

[out] Pitch

鎖定表面的間距,以位元組為單位。 使用者模式顯示驅動程式的 LockAsync 函式會將這個音調值傳回至 Direct3D 執行時間。

[out] SlicePitch

鎖定表面的配量間距,以位元組為單位。 使用者模式顯示驅動程式的 LockAsync 函式會將此配量傾斜值傳回至 Direct3D 運行時間。

GpuVirtualAddress

這個成員是保留的,而且應該設定為零。

此成員從 Windows 7 開始可供使用。

備註

Flags 成員所指定之D3DDDI_LOCKASYNCFLAGS結構的成員必須遵守下列規則:

  • NoOverwrite 位字段旗標不得同時設定為捨棄位字段旗標。
  • 隨時只能設定其中一個 RangeValidAreaValidBoxValid 位字段旗標。

規格需求

需求
最低支援的用戶端 可在 Windows Vista 和更新版本的 Windows 作業系統中使用。
標頭 d3dumddi.h (包含 D3dumddi.h)

另請參閱

D3DDDI_LOCKASYNCFLAGS

LockAsync

矩形