Метод CBaseAllocator.SetNotify
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует, чтобы новый код использовал MediaPlayer, IMFMediaEngine и аудио- и видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, использующий устаревшие API, чтобы по возможности использовать новые API.]
[SetNotify может быть изменен или недоступен в последующих версиях.]
Метод SetNotify
задает или удаляет обратный вызов для распределителя. Распределитель вызывает метод обратного вызова при каждом вызове метода IMemAllocator::ReleaseBuffer распределителя.
Синтаксис
HRESULT SetNotify(
IMemAllocatorNotifyCallbackTemp *pNotify
);
Параметры
-
pNotify
-
Указатель на интерфейс IMemAllocatorNotifyCallbackTemp , который будет использоваться для обратного вызова. Вызывающий объект должен реализовать интерфейс . Используйте значение NULL , чтобы удалить обратный вызов.
Возвращаемое значение
Возвращает S_OK.
Комментарии
Этот метод реализует метод IMemAllocatorCallbackTemp::SetNotify . Распределитель не предоставляет интерфейс IMemAllocatorCallbackTemp , если только флаг fEnableReleaseCallback не имеет значение TRUE в конструкторе CBaseAllocator .
Этот метод задает переменную-член CBaseAllocator::m_pNotify равным pNotify и увеличивает количество ссылок в интерфейсе. Если m_pNotify не равно NULL, метод ReleaseBuffer распределителя вызывает метод IMemAllocatorNotifyCallbackTemp::NotifyRelease. Сведения о реализации обратного вызова см. в разделе Примечания этого метода.
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|