CBaseAllocator.SetNotify method
[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]
[SetNotify may be altered or unavailable in subsequent versions.]
The SetNotify
method sets or removes a callback on the allocator. The allocator calls the callback method whenever the allocator's IMemAllocator::ReleaseBuffer method is called.
Syntax
HRESULT SetNotify(
IMemAllocatorNotifyCallbackTemp *pNotify
);
Parameters
-
pNotify
-
Pointer to the IMemAllocatorNotifyCallbackTemp interface that will be used for the callback. The caller must implement the interface. Use the value NULL to remove the callback.
Return value
Returns S_OK.
Remarks
This method implements the IMemAllocatorCallbackTemp::SetNotify method. The allocator does not expose the IMemAllocatorCallbackTemp interface unless the fEnableReleaseCallback flag is set to TRUE in the CBaseAllocator constructor.
This method sets the CBaseAllocator::m_pNotify member variable equal to pNotify and increments the reference count on the interface. If m_pNotify is non-NULL, the allocator's ReleaseBuffer method calls IMemAllocatorNotifyCallbackTemp::NotifyRelease. See the Remarks section in that method for information about implementing the callback.
Requirements
Requirement | Value |
---|---|
Header |
|
Library |
|