функция обратного вызова EVT_ACX_MUTE_ASSIGN_STATE (acxelements.h)
Функция обратного вызова EVT_ACX_MUTE_ASSIGN_STATE реализуется драйвером и вызывается при установке состояния указанного канала на узле отключения звука. Состояние канала может иметь значение 0 (FALSE) или 1 (TRUE), где 0 указывает, что канал не отключен, а 1 указывает, что канал отключен.
Синтаксис
EVT_ACX_MUTE_ASSIGN_STATE EvtAcxMuteAssignState;
NTSTATUS EvtAcxMuteAssignState(
ACXMUTE Mute,
ULONG Channel,
ULONG State
)
{...}
Параметры
Mute
Существующий, инициализированный объект ACXMUTE. Дополнительные сведения о объектах ACX см. в сводке по объектам ACX.
Channel
ULONG, ссылающийся на канал на указанном узле выключения. Если это значение равно -1, он ссылается на главный канал, представляющий состояние для всех каналов на узле выключения.
State
ULONG, указывающий состояние указанного канала на узле выключения (т. е. отключен ли канал). Значение 0 (FALSE) указывает, что канал не отключен. Значение 1 (TRUE) указывает, что канал отключен. Если значение канала -1 (ссылающееся на главный канал), все каналы на этом узле отключены.
Возвращаемое значение
Возвращает STATUS_SUCCESS
, если вызов выполнен успешно. В противном случае возвращается соответствующий код ошибки. Дополнительные сведения см. в использовании значений NTSTATUS.
Замечания
Пример
Ниже показан пример использования.
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;
}
Требования к ACX
минимальная версия ACX: 1.0
Дополнительные сведения о версиях ACX см. в обзоре версий ACX.
Требования
Требование | Ценность |
---|---|
заголовка | acxelements.h |
IRQL | PASSIVE_LEVEL |