|Microsoft DirectX 9.0|
Quartz.dll provides objects that you can use in your Visual Basic-based applications to manage filters and pins. There is an implicit hierarchy among these objects; that is, you must often access the properties of one object to obtain another object. In the following example, an object that appears indented below another indicates that you obtain that lower-level object from a property or method of the higher-level object.
Filter graph object (FilgraphManager) Filter collection (RegFilterCollection, FilterCollection properties) Filter Info object (IFilterInfo or IRegFilterInfo in filter collection) Pin collection (Pins property) Pin Info object (IPinInfo item in pins collection)
The top-level object in the hierarchy is the filter graph object, or the FilgraphManager object, which represents the entire filter graph. You can access two properties of the FilGraphObject object to obtain collections of filter objects. The FilgraphManager.RegFilterCollection property represents the filters registered with the system. The FilgraphManager.FilterCollection property represents the filters that are part of the filter graph.
As with other collections accessible to Visual Basic, you can access individual items in the collections by using the Visual Basic for each...next statement. The number of items in the collection is indicated by the Count property of the collection.
The filter collection contains IFilterInfo objects. Each IFilterInfo object has a Pins property that represents a collection of pins defined for that filter.
The pins collection contains IPinInfo objects. Each IPinInfo object includes detailed information about that pin, including its media type and its connection to another pin.
To examine a specific pin on a filter in the filter graph, use the following procedure.