структура 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 структуру, описывающую поверхность, на которой выполняется перерез.
rDest
lpDDSrcSurface
Указывает на структуру DD_SURFACE_LOCAL, описывающую исходную поверхность.
rSrc
dwFlags
Указывает набор флагов, указывающих тип выполняемой операции прорези и то, какие члены связанной структуры имеют допустимые данные, которые должен использовать драйвер. Этот элемент является побитовой или любого из следующих флагов:
Flag | Значение |
---|---|
DDBLT_ASYNC | Выполните это асинхронное выполнение через FIFO в полученном порядке. Если в оборудовании FIFO нет места, драйвер должен завершить вызов и немедленно вернуться. |
DDBLT_COLORFILL | Используйте элемент dwFillColor в структуре DDBLTFX (определенной в документации по пакету SDK Microsoft DirectDraw) в качестве цвета RGB для заполнения прямоугольника назначения на целевой поверхности. |
DDBLT_DDFX | Используйте член dwDDFX в структуре DDBLTFX (определенной в документации по пакету SDK DirectDraw), чтобы определить эффекты, которые следует использовать для заливки. |
DDBLT_DDROPS | Этот флаг зарезервирован для использования системой и должен игнорироваться драйвером. Драйвер также должен игнорировать член dwDDROPS структуры DDBLTFX. |
DDBLT_EXTENDED_FLAGS |
|
DDBLT_EXTENDED_LINEAR_CONTENT |
|
DDBLT_EXTENDED_PRESENTATION_STRETCHFACTOR |
|
DDBLT_KEYDESTOVERRIDE | Используйте элемент dckDestColorkey в структуре DDBLTFX (определенной в документации по пакету SDK DirectDraw) в качестве ключа цвета для области назначения. Если переопределение не задано, dckDestColorkey не содержит ключ цвета. Драйвер должен протестировать саму поверхность. |
DDBLT_KEYSRCOVERRIDE | Используйте элемент dckSrcColorkey в структуре DDBLTFX (определенной в документации по пакету SDK DirectDraw) в качестве ключа цвета для исходной поверхности. Если переопределение не задано, dckDestColorkey не содержит ключ цвета. Драйвер должен протестировать саму поверхность. |
DDBLT_LAST_PRESENTATION |
|
DDBLT_PRESENTATION |
|
DDBLT_ROP | Используйте член dwROP в структуре DDBLTFX (определенной в документации по пакету SDK DirectDraw) для растровой операции для этой щели. В настоящее время драйверу передается только ROP SRCCOPY. Эта ROP аналогична той, которая определена в API Win32. Дополнительные сведения см. в документации по Microsoft Windows SDK. |
DDBLT_ROTATIONANGLE | Этот флаг не поддерживается в Windows 2000 и более поздних версиях и должен игнорироваться драйвером. |
DDBLT_WAIT | Не возвращайте сразу с сообщением DDERR_WASSTILLDRAWING, если blitter занят. Дождитесь, пока не удастся настроить блиц или возникнет другая ошибка. |
dwROPFlags
Не используется в Windows 2000 и более поздних версиях и должен игнорироваться драйвером.
bltFX
#########
#######
ddRVal
Указывает расположение, в которое драйвер записывает возвращаемое значение обратного вызова DdBlt . Код возврата DD_OK указывает на успешное выполнение. Дополнительные сведения см. в разделе Возвращаемые значения для DirectDraw.
Blt
Используется API DirectDraw и не должен заполняться драйвером.
IsClipped
Указывает, является ли это обрезанным разрезом. В Windows 2000 и более поздних версиях этот элемент всегда имеет значение FALSE, указывая, что щель не скольгнута.
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
Коэффициенты масштабирования ARGB (AlphaBlt)
Комментарии
Дополнительные сведения о флагах DDBLT_PRESENTATION и DDBLT_LAST_PRESENTATION см. в разделе Presentation.
Требования
Требование | Значение |
---|---|
Заголовок | ddrawint.h (включая Winddi.h) |