DirectDrawCreateClipper

HRESULT DirectDrawCreateClipper(DWORD dwFlags,

LPDIRECTDRAWCLIPPER FAR *lplpDDClipper,

IUnknown FAR *pUnkOuter);

Creates an instance of a DirectDrawClipper object not associated with a DirectDraw object.

·Returns DD_OK if successful, or one of the following error values otherwise:

DDERR_INVALIDPARAMS

DDERR_OUTOFMEMORY

dwFlags

This parameter is currently not used and must be set to 0.

lplpDDClipper

Address of a pointer that will be filled with the address of the new DirectDrawClipper object.

pUnkOuter

Allows for future compatibility with COM aggregation features. Presently, however, DirectDrawCreateClipper returns an error if this parameter is anything but NULL.

This function can be called before any DirectDraw objects are created. Because these DirectDrawClipper objects are not owned by any DirectDraw object, they are not automatically released when an application's objects are released. If the application does not explicitly release the DirectDrawClipper objects, DirectDraw will release them when the application terminates.

To create a DirectDrawClipper object owned by a specific DirectDraw object, use the IDirectDraw2::CreateClipper method.