Compartir a través de


estructura D3DKMT_CREATE_DOORBELL (d3dkmthk.h)

La estructura D3DKMT_CREATE_DOORBELL contiene parámetros para D3DKMTCreateDoorbell.

Sintaxis

typedef struct _D3DKMT_CREATE_DOORBELL {
  D3DKMT_HANDLE                hHwQueue;
  D3DKMT_HANDLE                hRingBuffer;
  D3DKMT_HANDLE                hRingBufferControl;
  D3DKMT_CREATE_DOORBELL_FLAGS Flags;
  UINT                         PrivateDriverDataSize;
  void                         D3DKMT_PTR(
    VOID              *unnamedParam1,
    PrivateDriverData unnamedParam2
  );
  void                         D3DKMT_PTR(
    VOID                      *unnamedParam1,
    DoorbellCPUVirtualAddress unnamedParam2
  );
  void                         D3DKMT_PTR(
    VOID                               *unnamedParam1,
    DoorbellSecondaryCPUVirtualAddress unnamedParam2
  );
  void                         D3DKMT_PTR(
    VOID                            *unnamedParam1,
    DoorbellStatusCPUVirtualAddress unnamedParam2
  );
  void                         D3DKMT_PTR(
    VOID                                                 *unnamedParam1,
    HwQueueProgressFenceLastQueuedValueCPUVirtualAddress unnamedParam2
  );
  D3DKMT_HANDLE                hDoorbell;
} D3DKMT_CREATE_DOORBELL;

Miembros

hHwQueue

[in] Identificador UMD del objeto de cola de hardware creado en una llamada anterior a D3DKMTCreateHwQueue. Este identificador identifica la cola de hardware para la que se debe asignar un timbre.

hRingBuffer

[in] Identificador umD para una asignación de búfer de anillo que umD creó anteriormente. La asignación debe ser visible para GPU y ya residente. Dxgkrnl pasa la dirección virtual de GPU (VA) y el tamaño de esta asignación a KMD en una llamada dxgkDdiCreateDoorbell correspondiente. La marca ResizeRingBufferOperation es una sugerencia de UMD a KMD que se vuelve a crear un timbre para esta cola de hardware con un búfer de anillo nuevo y cambiado de tamaño.

hRingBufferControl

[in/optional] Identificador umD para una asignación de control de búfer de anillo creada anteriormente por UMD. UMD y KMD pueden usar esta asignación como área de control para almacenar las ubicaciones de puntero de lectura y escritura del búfer de anillo si es necesario. La asignación debe ser visible para GPU y ya residente cuando UMD llama a D3DKMTCreateDoorbell. Dxgkrnl pasa a lo largo del VA de GPU y el tamaño de esta asignación a KMD en una llamada a DxgkDdiCreateDoorbell correspondiente.

Flags

[in/optional] Campo de bits de D3DKMT_CREATE_DOORBELL_FLAGS valores que especifican las marcas de creación del timbre.

PrivateDriverDataSize

[in] Tamaño de los datos del controlador privado a los que pPrivateDriverData apunta, en bytes.

void D3DKMT_PTR( VOID *unnamedParam1, PrivateDriverData unnamedParam2)

void D3DKMT_PTR( VOID *unnamedParam1, DoorbellCPUVirtualAddress unnamedParam2)

void D3DKMT_PTR( VOID *unnamedParam1, DoorbellSecondaryCPUVirtualAddress unnamedParam2)

void D3DKMT_PTR( VOID *unnamedParam1, DoorbellStatusCPUVirtualAddress unnamedParam2)

void D3DKMT_PTR( VOID *unnamedParam1, HwQueueProgressFenceLastQueuedValueCPUVirtualAddress unnamedParam2)

hDoorbell

[out] Identificador en tiempo de ejecución para el objeto de timbre de puerta recién creado.

Comentarios

Para obtener más información, consulte Envío de trabajo en modo de usuario.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 11, versión 24H2 (WDDM 3.2)
Encabezado d3dkmthk.h

Consulte también

D3DKMT_CREATE_DOORBELL_FLAGS

D3DKMTConnectDoorbell

D3DKMTCreateAllocation

D3DKMTCreateDoorbell

DxgkDdiConnectDoorbell

DxgkDdiCreateDoorbell