Partager via


Méthode IAudioDeviceModulesClient ::SetAudioDeviceModulesManager (audioenginebaseapo.h)

Appelé par le système pour passer une instance d’AudioDeviceModulesManager aux objets de traitement audio (APO) qui implémentent l’interface IAudioDeviceModulesClient.

Syntaxe

HRESULT SetAudioDeviceModulesManager(
  IUnknown *pAudioDeviceModulesManager
);

Paramètres

pAudioDeviceModulesManager

Interface IUnknown représentant IAudioDeviceModulesManager.

Valeur retournée

An HRESULT.

Remarques

L’exemple de code suivant illustre une implémentation de IAudioDeviceModulesClient.

STDMETHODIMP CTestModuleAPO::SetAudioDeviceModulesManager(_In_ IUnknown* pAudioDeviceModulesManager) 
{
    HRESULT hr = S_OK;
    CComQIPtr<Windows::Media::Devices::IAudioDeviceModulesManager> spModuleManager = pAudioDeviceModulesManager;
    ComPtr<IVectorView<AudioDeviceModule *>> spModules;

    // Cache the audio modules manager for later use within the apo
    m_AudioModulesManager = pAudioDeviceModulesManager;

    // Search the audio modules for a known module
    hr = m_pAudioDeviceModulesMgr->FindAllById(KNOWN_MODULE_ID, &spModules);

    if (SUCCEEDED(hr))
    {
        // do something with the module(s) returned or cache them for later usage
        m_KnownModules = spModules;
    }

    return hr;
}

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10 Build 20348
En-tête audioenginebaseapo.h