IResourceManager Interface
Microsoft DirectShow 9.0 |
IResourceManager Interface
The IResourceManager interface resolves contentions for system resources.
The filter graph manager exposes this interface. Filters can use this interface to request resources that other objects are likely to use. For example, audio renderers use this interface to resolve contentions for the wave-output device, to enable sound to follow focus.
Applications will typically not use this interface.
An object can use this interface to resolve possible contentions between existing resources. The object registers the resource with the interface and then requests it whenever needed. The object should notify the filter graph manager whenever the user focus changes. The filter graph manager can then switch contended resources to the objects that have the focus of the user.
An object that uses this interface must implement the IResourceConsumer interface. IResourceConsumer provides a callback mechanism for the filter graph manager to notify the object when a resource becomes available, or when the object should release a resource that it acquired.
In addition to the methods inherited from IUnknown, the IResourceConsumer interface exposes the following methods.
Method | Description |
Register | Registers a single named resource with the resource manager. |
RegisterGroup | Registers a named resource group with the resource manager. |
RequestResource | Requests the use of a given registered resource. |
NotifyAcquire | Notifies the resource manager that an attempt to acquire a resource has completed. |
NotifyRelease | Notifies the resource manager that a resource consumer has released a resource. |
CancelRequest | Cancels the request for a resource. |
SetFocus | Notifies the resource manager that a specified object has been given the focus of the user. |
ReleaseFocus | Sets the focus object to NULL in the resource manager if the object of the current focus object is the one specified in this method. |
Requirements
Header: Declared in Strmif.h; include Dshow.h.
Library: Use Strmiids.lib.