EVT_ACX_MUTE_ASSIGN_STATE función de devolución de llamada (acxelements.h)
El controlador implementa la función de devolución de llamada EVT_ACX_MUTE_ASSIGN_STATE y se llama cuando se establece el estado de un canal especificado en un nodo de exclusión. El estado del canal se puede establecer en 0 (FALSE) o 1 (TRUE), donde 0 indica que el canal no está silenciado y 1 indica que el canal está silenciado.
Sintaxis
EVT_ACX_MUTE_ASSIGN_STATE EvtAcxMuteAssignState;
NTSTATUS EvtAcxMuteAssignState(
ACXMUTE Mute,
ULONG Channel,
ULONG State
)
{...}
Parámetros
Mute
Objeto ACXMUTE existente, inicializado. Para obtener más información sobre los objetos ACX, vea Resumen de objetos ACX.
Channel
Una ULONG que hace referencia a un canal en el nodo silenciado especificado. Si este valor es -1, hace referencia al canal maestro que representa el estado de todos los canales del nodo silenciado.
State
ULONG que indica el estado del canal especificado en el nodo silenciado (es decir, si el canal está silenciado o no). Un valor de 0 (FALSE) indica que el canal no está silenciado. Un valor de 1 (TRUE) indica que el canal está silenciado. Si el valor del canal es -1 (haciendo referencia al canal maestro), todos los canales de este nodo silenciado se establecerán en este estado.
Valor devuelto
Devuelve STATUS_SUCCESS
si la llamada se realizó correctamente. De lo contrario, devuelve un código de error adecuado. Para obtener más información, vea Uso de valores NTSTATUS.
Comentarios
Ejemplo
A continuación se muestra un ejemplo de uso.
typedef struct _CODEC_MUTE_ELEMENT_CONTEXT {
BOOL MuteState[MAX_CHANNELS];
} CODEC_MUTE_ELEMENT_CONTEXT, *PCODEC_MUTE_ELEMENT_CONTEXT;
WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(CODEC_MUTE_ELEMENT_CONTEXT, GetCodecMuteElementContext)
EVT_ACX_MUTE_ASSIGN_STATE CodecR_EvtMuteAssignState;
NTSTATUS
NTAPI
CodecR_EvtMuteAssignState(
_In_ ACXMUTE Mute,
_In_ ULONG Channel,
_In_ ULONG State
)
{
PCODEC_MUTE_ELEMENT_CONTEXT muteCtx;
ULONG i;
PAGED_CODE();
muteCtx = GetCodecMuteElementContext(Mute);
ASSERT(muteCtx);
// use first channel for all channels setting.
if (Channel != ALL_CHANNELS_ID)
{
muteCtx->MuteState[Channel] = State;
}
else
{
for (i = 0; i < MAX_CHANNELS; ++i)
{
muteCtx->MuteState[i] = State;
}
}
return STATUS_SUCCESS;
}
Requisitos de ACX
Versión mínima de ACX: 1.0
Para obtener más información sobre las versiones de ACX, consulte Introducción a la versión de ACX.
Requisitos
Requisito | Valor |
---|---|
Header | acxelements.h |
IRQL | PASSIVE_LEVEL |