DXGK_TIMED_OPERATION_INTERFACE estructura (dispmprt.h)

La estructura DXGK_TIMED_OPERATION_INTERFACE contiene punteros a funciones de la interfaz de operación cronompleada, que implementa el controlador de puerto de visualización.

Sintaxis

typedef struct _DXGK_TIMED_OPERATION_INTERFACE {
  USHORT                 Size;
  USHORT                 Version;
  PVOID                  Context;
  PINTERFACE_REFERENCE   InterfaceReference;
  PINTERFACE_DEREFERENCE InterfaceDereference;
  NTSTATUS((DXGK_TIMED_OPERATION *Op, const LARGE_INTEGER *Timeout,BOOLEAN OsHandled)              * )TimedOperationStart;
  NTSTATUS((DXGK_TIMED_OPERATION *Op,KPROCESSOR_MODE WaitMode,BOOLEAN Alertable, const LARGE_INTEGER *Interval)              * )TimedOperationDelay;
  NTSTATUS((DXGK_TIMED_OPERATION *Op,PVOID Object,KWAIT_REASON WaitReason,KPROCESSOR_MODE WaitMode,BOOLEAN Alertable, const LARGE_INTEGER *Timeout)              * )TimedOperationWaitForSingleObject;
} DXGK_TIMED_OPERATION_INTERFACE, *PDXGK_TIMED_OPERATION_INTERFACE;

Miembros

Size

Tamaño, en bytes, de esta estructura.

Version

Número de versión de la interfaz de operación con tiempo. Las constantes de número de versión se definen en Dispmprt.h (por ejemplo, DXGK_TIMED_OPERATION_INTERFACE_VERSION_1).

Context

Puntero a un contexto proporcionado por el controlador de puerto de presentación.

InterfaceReference

Puntero a una función de referencia de interfaz implementada por el controlador de puerto de visualización.

InterfaceDereference

Puntero a una función de desreferencia de interfaz implementada por el controlador de puerto de visualización.

TimedOperationStart

La función TimedOperationStart inicia o reinicia una operación con tiempo.

El controlador debe preestablecer el miembro Size de la estructura DXGK_TIMED_OPERATION a la que apunta el parámetro Op para sizeof(DXGK_TIMED_OPERATION). A continuación se describen los parámetros de TimedOperationStart .

  • [out] Op es un puntero a una estructura de DXGK_TIMED_OPERATION que describe la operación con tiempo de inicio o reinicio.

  • [in] El tiempo de espera es un puntero a un valor de tiempo de espera, en unidades de 100 nanosegundos, que especifica el tiempo relativo asignado para que se complete la operación cronométrica.

  • [in] OsHandled es un valor booleano que especifica si el sistema operativo controla la condición de tiempo de espera. Un valor true indica que el controlador no tiene ninguna manera razonable de controlar la condición de tiempo de espera y permite al sistema operativo controlar la condición de tiempo de espera; FALSE indica que el controlador controla la condición de tiempo de espera.

TimedOperationDelay

La función TimedOperationDelay coloca el subproceso actual en un estado de espera alertable o nonalertable para un intervalo determinado con respecto al tiempo de espera de la operación con tiempo de espera especificado. A continuación se describen los parámetros de TimedOperationDelay .

  • [in/out] Op es un puntero a una estructura de DXGK_TIMED_OPERATION que describe la operación cronoplada que se va a retrasar. Esta operación cronometro se inició mediante una llamada a la función TimedOperationStart .

  • [in] WaitMode es un valor con tipo KPROCESSOR_MODE que especifica el modo de procesador en el que espera el controlador. El valor puede ser KernelMode o UserMode. Los controladores de nivel inferior de una pila deben especificar KernelMode.

  • [in] Alertable es un valor booleano que especifica si la espera es alertable. Un valor true indica que la espera es alertable; FALSE indica que la espera no es actualizable. Los controladores de nivel inferior de una pila deben especificar FALSE.

  • [in] Interval es un puntero a variable que contiene el tiempo relativo, en unidades de 100 nanosegundos, para el retraso. Se omite el signo del valor.

TimedOperationWaitForSingleObject

La función TimedOperationWaitForSingleObject coloca el subproceso actual en un estado de espera hasta que el objeto distribuidor especificado se establece en un estado señalado o opcionalmente hasta que se agota el tiempo de espera o hasta que expire el tiempo de espera de la operación cronomeada especificada. A continuación se describen los parámetros de TimedOperationWaitForSingleObject .

  • [in] Op es un puntero a una estructura de DXGK_TIMED_OPERATION que describe la operación con tiempo que se va a colocar en un estado de espera. Esta operación cronometro se inició mediante una llamada a la función TimedOperationStart .

  • Object es un puntero a un objeto distribuidor inicializado para el que el autor de la llamada proporciona el almacenamiento. El objeto dispatcher puede ser un evento, una exclusión mutua, un semáforo, un subproceso o un temporizador.

  • WaitReason es un valor con tipo KWAIT_REASON que especifica el motivo de la espera. Un controlador debe establecer este valor en Executive o, si el controlador está trabajando en nombre de un usuario y se ejecuta en el contexto de un subproceso de usuario, en UserRequest.

  • WaitMode es un valor con tipo KPROCESSOR_MODE que especifica el modo de procesador en el que espera el controlador. El valor puede ser KernelMode o UserMode. Los controladores intermedios y de nivel inferior deben especificar KernelMode. Si el objeto al que apunta el parámetro Object es una exclusión mutua, el autor de la llamada debe especificar KernelMode.

  • Alertable es un valor booleano que especifica si la espera es alertable. Un valor true indica que la espera es alertable; FALSE indica que la espera no es actualizable.

  • Timeout es un puntero a variable que contiene el tiempo relativo, en unidades de 100 nanosegundos, para que se complete la espera. Se omite el signo del valor.

Comentarios

El controlador de minipuerto de pantalla proporciona los miembros Size y Version de esta estructura y, a continuación, llama a DxgkCbQueryServices, que rellena los miembros restantes de esta estructura.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista
Encabezado dispmprt.h (incluir Dispmprt.h)

Consulte también

DXGK_TIMED_OPERATION

DxgkCbQueryServices