Microsoft DirectX 8.1 (C++)

IPropertySetter::CloneProps

The CloneProps method clones a set of properties from this property setter and adds them to a new property setter.

Syntax

HRESULT CloneProps(
    IPropertySetter **ppSetter,
    REFERENCE_TIME rtStart,
    REFERENCE_TIME rtStop
);

Parameters

ppSetter

[out] Address of a pointer to receive the IPropertySetter interface of the new property setter.

rtStart

[in] Start time of the range of values to clone, in 100-nanosecond units.

rtStop

[in] Reserved.

Return Value

Returns S_OK if successful. Otherwise, returns an HRESULT value indicating the cause of the error. Possible error codes include the following:

Value Description
E_INVALIDARG Invalid argument.
E_OUTOFMEMORY Insufficient memory.
E_POINTER NULL pointer argument.

Remarks

Only values that fall after the specified start time are cloned. The times on the cloned values are then adjusted relative to the start time. For example, if rtStart is 20000000 (2 seconds), then a value at time 30000000 (3 seconds) is cloned with time 10000000 (1 second). Finally, each cloned property is given an initial value equal to the value of the original property at the start time (correctly interpolated if necessary). In effect, the property data is split at the specified start time.

If the method succeeds, the IPropertySetter interface that it returns has an outstanding reference count. Be sure to release the interface when you are finished using it.

See Also