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


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

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

Синтаксис

EVT_ACX_PEAKMETER_RETRIEVE_LEVEL EvtAcxPeakmeterRetrieveLevel;

NTSTATUS EvtAcxPeakmeterRetrieveLevel(
  ACXPEAKMETER PeakMeter,
  ULONG Channel,
  LONG *Level
)
{...}

Параметры

PeakMeter

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

Channel

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

Level

Значение LONG, указывающее максимальный уровень звукового сигнала, который произошел для указанного канала на узле пикметра с момента последнего сброса узла пикметра.

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

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

Замечания

Пример

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

typedef struct _CODEC_PEAKMETER_ELEMENT_CONTEXT {
    LONG            PeakMeterLevel[MAX_CHANNELS];
} CODEC_PEAKMETER_ELEMENT_CONTEXT, *PCODEC_PEAKMETER_ELEMENT_CONTEXT;

WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(CODEC_PEAKMETER_ELEMENT_CONTEXT, GetCodecPeakMeterElementContext)

EVT_ACX_PEAKMETER_RETRIEVE_LEVEL    CodecR_EvtPeakMeterRetrieveLevelCallback;

NTSTATUS
NTAPI
CodecR_EvtPeakMeterRetrieveLevelCallback(
    _In_    ACXPEAKMETER    PeakMeter,
    _In_    ULONG           Channel,
    _Out_   LONG *          PeakMeterLevel
    )
{
    PAGED_CODE();

    ASSERT(PeakMeter);
    PCODEC_PEAKMETER_ELEMENT_CONTEXT peakmeterCtx = GetCodecPeakMeterElementContext(PeakMeter);
    ASSERT(peakmeterCtx);

    if (Channel == ALL_CHANNELS_ID)
    {
        Channel = 0;
    }

    *PeakMeterLevel = peakmeterCtx->PeakMeterLevel[Channel];

    return STATUS_SUCCESS;
}

Требования к ACX

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

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

Требования

Требование Ценность
заголовка acxelements.h
IRQL PASSIVE_LEVEL

См. также