DD_BLTDATA 結構 (ddrawint.h)
DD_BLTDATA 結構包含與執行位區塊傳輸之驅動程序相關的資訊。
語法
typedef struct _DD_BLTDATA {
PDD_DIRECTDRAW_GLOBAL lpDD;
PDD_SURFACE_LOCAL lpDDDestSurface;
RECTL rDest;
PDD_SURFACE_LOCAL lpDDSrcSurface;
RECTL rSrc;
DWORD dwFlags;
DWORD dwROPFlags;
DDBLTFX bltFX;
HRESULT ddRVal;
VOID *Blt;
BOOL IsClipped;
RECTL rOrigDest;
RECTL rOrigSrc;
DWORD dwRectCnt;
LPRECT prDestRects;
DWORD dwAFlags;
DDARGB ddargbScaleFactors;
} *PDD_BLTDATA, DD_BLTDATA;
成員
lpDD
指向描述驅動程式裝置 的DD_DIRECTDRAW_GLOBAL 結構。
lpDDDestSurface
指向 DD_SURFACE_LOCAL結構, 該結構會描述要Blit的介面。
rDest
lpDDSrcSurface
指向描述來源介面的DD_SURFACE_LOCAL結構。
rSrc
dwFlags
指出一組旗標,指定要執行的blit作業類型,以及驅動程式應該使用的有效數據相關聯的結構成員。 此成員是下列任一旗標的位 OR:
旗標 | 意義 |
---|---|
DDBLT_ASYNC | 按照收到的順序,透過 FIFO 以異步方式執行此 Blit。 如果硬體 FIFO 中沒有任何空間存在,驅動程式應該會失敗呼叫並立即傳回。 |
DDBLT_COLORFILL | 使用 Microsoft DirectDraw SDK 檔中定義的 DDBLTFX 結構中的 dwFillColor 成員 (,) 做為在目的地介面上填滿目的地矩形的 RGB 色彩。 |
DDBLT_DDFX | 使用 DirectDraw SDK 檔案中定義之 DDBLTFX 結構的 dwDDFX 成員 () ,以判斷要用於 blit 的效果。 |
DDBLT_DDROPS | 此旗標保留供系統使用,驅動程式應忽略。 驅動程式也應該忽略 DDBLTFX 結構的 dwDDROPS 成員。 |
DDBLT_EXTENDED_FLAGS |
|
DDBLT_EXTENDED_LINEAR_CONTENT |
|
DDBLT_EXTENDED_PRESENTATION_STRETCHFACTOR |
|
DDBLT_KEYDESTOVERRIDE | 使用 DDBLTFX 結構中的 dckDestColorkey 成員, (DirectDraw SDK 檔案中定義) 做為目的地介面的色彩索引鍵。 如果未設定覆寫, 則 dckDestColorkey 不包含色彩索引鍵。 驅動程式應該測試介面本身。 |
DDBLT_KEYSRCOVERRIDE | 使用 DDBLTFX 結構中的 dckSrcColorkey 成員, (在 DirectDraw SDK 檔中定義) 做為來源介面的色彩索引鍵。 如果未設定覆寫, 則 dckDestColorkey 不包含色彩索引鍵。 驅動程式應該測試介面本身。 |
DDBLT_LAST_PRESENTATION |
|
DDBLT_PRESENTATION |
|
DDBLT_ROP | 使用 DDBLTFX 結構中的 dwROP 成員, (DirectDraw SDK 檔中定義,) 此 blit 的點陣作業。 目前,唯一傳遞至驅動程式的 ROP 是 SRCCOPY。 此 ROP 與 Win32 API 中定義的相同。 如需詳細資訊,請參閱 Microsoft Windows SDK 檔。 |
DDBLT_ROTATIONANGLE | Windows 2000 和更新版本不支援此旗標,驅動程式應忽略此旗標。 |
DDBLT_WAIT | 如果blitter處於忙碌狀態,請勿立即傳回DDERR_WASSTILLDRAWING訊息,直到可以設定blit或發生另一個錯誤為止。 |
dwROPFlags
Windows 2000 和更新版本未使用,驅動程式應該忽略。
bltFX
#########
#######
ddRVal
指定驅動程式寫入 DdBlt 回呼傳回值的位置。 DD_OK的傳回碼表示成功。 如需詳細資訊,請參閱 DirectDraw 的傳回值。
Blt
由 DirectDraw API 使用,且不應該由驅動程式填入。
IsClipped
指出這是否為裁剪的blit。 在 Windows 2000 和更新版本上,此成員一律為 FALSE,表示 blit 已取消裁剪。
rOrigDest
Windows 2000 和更新版本未使用。 指定可定義未調整目的地矩形的 RECTL 結構。 只有當 IsClipped 為 TRUE 時,此成員才有效。
rOrigSrc
Windows 2000 和更新版本未使用。 指定可定義未調整來源矩形的 RECTL 結構。 只有當 IsClipped 為 TRUE 時,此成員才有效。
dwRectCnt
Windows 2000 和更新版本未使用。指定 prDestRects 指向的目標矩形數目。 只有當 IsClipped 為 TRUE 時,此成員才有效。
prDestRects
Windows 2000 和更新版本未使用。 指向描述目的地矩形的 RECTL 結構陣列。 只有當 IsClipped 為 TRUE 時,此成員才有效。
dwAFlags
未使用,且驅動程式應忽略。
ddargbScaleFactors
AlphaBlt) (ARGB 縮放比例
備註
如需DDBLT_PRESENTATION和DDBLT_LAST_PRESENTATION旗標的詳細資訊,請參閱 簡報。
規格需求
需求 | 值 |
---|---|
標頭 | ddrawint.h (包括 Winddi.h) |