структура D3DDDI_LOCKASYNCFLAGS (d3dumddi.h)
Структура D3DDDI_LOCKASYNCFLAGS определяет способ блокировки ресурса.
Синтаксис
typedef struct _D3DDDI_LOCKASYNCFLAGS {
union {
struct {
UINT NoOverwrite : 1;
UINT Discard : 1;
UINT RangeValid : 1;
UINT AreaValid : 1;
UINT BoxValid : 1;
UINT NoExistingReferences : 1;
UINT NotifyOnly : 1;
UINT Reserved : 25;
};
UINT Value;
};
} D3DDDI_LOCKASYNCFLAGS;
Члены
NoOverwrite
Значение UINT, указывающее, могут ли к заблокированным ресурсам добавляться данные, но существующие данные в ресурсе нельзя изменить. Этот элемент используется только с блокировками буфера вершин Microsoft Direct3D.
Задание этого элемента эквивалентно установке первого бита 32-разрядного элемента Value (0x00000001).
Discard
Значение UINT, указывающее, изменяется ли весь заблокированный ресурс. Если это значение задано, так как существующее содержимое может быть удалено, содержимое не требует предварительной обработки.
Задание этого элемента эквивалентно установке второго бита 32-разрядного элемента Value (0x00000002).
RangeValid
Значение UINT, указывающее, является ли заблокированный ресурс линейным.
Задание этого элемента эквивалентно установке третьего бита 32-разрядного элемента Value (0x00000004).
AreaValid
Значение UINT, указывающее, является ли заблокированный ресурс поверхностью.
Задание этого элемента эквивалентно установке четвертого бита 32-разрядного элемента Value (0x00000008).
BoxValid
Значение UINT, указывающее, является ли заблокированный ресурс томом.
Задание этого элемента эквивалентно установке пятого бита 32-разрядного элемента Value (0x00000010).
NoExistingReferences
Значение UINT, указывающее, есть ли в среде выполнения Microsoft Direct3D ссылки на заблокированный ресурс в очереди. Если задано значение NoExistingReferences , драйвер определяет, что ссылки на ресурс из внутренней очереди недоступны. Затем драйвер может установить флаг битового поля NoExistingReferencesструктуры D3DDDICB_LOCK , когда драйвер вызывает функцию pfnLockCb для выполнения операции блокировки и отмены.
Задание этого элемента эквивалентно установке шестого бита 32-разрядного элемента Value (0x00000020).
NotifyOnly
Значение UINT, указывающее, предназначен ли вызов блокировки только для уведомления. Среда выполнения Direct3D устанавливает для NotifyOnlyзначение TRUE , когда она блокирует поверхности системной памяти, выделенные средой выполнения. В этом случае среда выполнения игнорирует указатель, возвращаемый драйвером в элементе pSurfDataструктуры D3DDDIARG_LOCKASYNC .
Задание этого элемента эквивалентно установке седьмого бита 32-разрядного элемента Value (0x00000040).
Reserved
Этот элемент зарезервирован и должен иметь нулевое значение. Установка значения 0 для этого элемента эквивалентна установке нулей для оставшихся 25 битов (0xFFFFFF80) элемента 32-разрядного значения .
Value
Элемент в объединении, который содержится в D3DDDI_LOCKASYNCFLAGS, который может содержать одно 32-разрядное значение, определяющее способ блокировки ресурса.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно в Windows Vista и более поздних версиях операционных систем Windows. |
Верхняя часть | d3dumddi.h (включая D3dumddi.h) |