Property Management Interfaces

Windows Movie Maker 6.0 passes all the parameters in a transform's XML initialization file to the transform using a set of wrapper interfaces. These are a nested set of interfaces that mimic the nested parameters in the XML file. The values in the wrapped collection can be read and modified during run time, but the changes will not propagate to the physical XML file.

Each parameter element in the XML file is wrapped by an object that exposes two interfaces: ITransformProperty, which describes that parameter, and ITransformProperties, which is a collection of any child parameter elements. Each ITransformProperty element also hosts zero or more ITransformPropertyPoint interface elements, corresponding to the property's Point elements.

A top-level ITransformProperties interface that contains all properties for the transform is passed to the transform when it is instantiated. The transform can examine all the parameters by calling ITransformProperties::get_PropertyCount to get a count of child parameters, then retrieving each by calling ITransformProperties::get_PropertyByIndex. Information about each property can be retrieved by the appropriate ITransformProperty method. To see if the property hosts child properties, query ITransformProperty for ITransformProperties, and get a count of child objects.

To see how a transform obtains the top-level ITransformProperties collection, see Creating Custom Transforms Using COM and DirectX.

Windows Movie Maker provides the following interfaces to manage properties.

Interface Description
ITransformProperties The top-level collection interface, containing zero or more properties.
ITransformProperty A description of a single property, containing zero or more property points.
ITransformPropertyPoint A description of an associated time and value for the property.
ITransformPropertiesConfig Manages the creation, addition, and deletion of properties in the collection.

 

Windows Movie Maker APIs