Поделиться через


функция обратного вызова EVT_ACX_MUTE_RETRIEVE_STATE (acxelements.h)

Функция обратного вызова EVT_ACX_MUTE_RETRIEVE_STATE реализуется драйвером и вызывается при запросе состояния указанного канала на узле отключения звука.

Синтаксис

EVT_ACX_MUTE_RETRIEVE_STATE EvtAcxMuteRetrieveState;

NTSTATUS EvtAcxMuteRetrieveState(
  ACXMUTE Mute,
  ULONG Channel,
  ULONG *State
)
{...}

Параметры

Mute

Существующий инициализированный объект ACXMUTE. Дополнительные сведения об объектах ACX см. в разделе Сводка по объектам ACX.

Channel

Объект ULONG, ссылающийся на канал на указанном узле отключения звука. Если это значение равно -1, оно ссылается на канал master, который представляет состояние всех каналов на узле отключения звука.

State

Значение ULONG, указывающее состояние указанного канала на узле отключения звука (т. е. указывает, отключен ли канал). Значение 0 (FALSE) указывает, что канал не отключен. Значение 1 (TRUE) указывает, что канал отключен.

Возвращаемое значение

Возвращает значение STATUS_SUCCESS , если вызов был успешным. В противном случае возвращается соответствующий код ошибки. Дополнительные сведения см. в разделе Использование значений NTSTATUS.

Remarks

Пример

Ниже приведен пример использования.

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_RETRIEVE_STATE         CodecR_EvtMuteRetrieveState;

NTAPI
CodecR_EvtMuteRetrieveState(
    _In_  ACXMUTE   Mute,
    _In_  ULONG     Channel,
    _Out_ ULONG *   State
    )
{
    PCODEC_MUTE_ELEMENT_CONTEXT muteCtx;

    PAGED_CODE();

    muteCtx = GetCodecMuteElementContext(Mute);
    ASSERT(muteCtx);

    // use first channel for all channels setting.
    if (Channel != ALL_CHANNELS_ID)
    {
        *State = muteCtx->MuteState[Channel];
    }
    else
    {
        *State = muteCtx->MuteState[0];
    }

    return STATUS_SUCCESS;
}

Требования ACX

Минимальная версия ACX: 1.0

Дополнительные сведения о версиях ACX см. в статье Обзор версий ACX.

Требования

Требование Значение
Заголовок acxelements.h
IRQL PASSIVE_LEVEL

См. также раздел