Microsoft DirectX 8.1 (C++) |
The DMOGetTypes function retrieves the media types registered for a DMO.
Requirements
Declared in Dmoreg.h; include Dmo.h. Link to Msdmo.lib.
Syntax
HRESULT DMOGetTypes(
REFCLSID clsidDMO,
unsigned long ulInputTypesRequested,
unsigned long *pulInputTypesSupplied,
DMO_PARTIAL_MEDIATYPE *pInputTypes,
unsigned long ulOutputTypesRequested,
unsigned long *pulOutputTypesSupplied,
DMO_PARTIAL_MEDIATYPE *pOutputTypes
);
Parameters
clsidDMO
Class identifier (CLSID) of the DMO.
ulInputTypesRequested
Size of the array passed in the pInputTypes parameter.
pulInputTypesSupplied
Pointer to a variable that receives the number of DMO_PARTIAL_MEDIATYPE structures in pInputTypes that the function fills in.
pInputTypes
Pointer to a caller-allocated array of DMO_PARTIAL_MEDIATYPE structures. The size of the array is given in the ulInputTypesRequested parameter. The function fills the array with the input types registered for the DMO.
ulOutputTypesRequested
Size of the array passed in the pOutputTypes parameter.
pulOutputTypesSupplied
Pointer to a variable that receives the number of DMO_PARTIAL_MEDIATYPE structures in pOutputTypes that the function fills in.
pOutputTypes
Pointer to a caller-allocated array of DMO_PARTIAL_MEDIATYPE structures. The size of the array is given in the ulOutputTypesRequested parameter. The function fills the array with the DMO output types registered for the DMO.
Return Value
Returns an HRESULT value. Possible values include the following.
Result Code | Description |
E_FAIL | Failure |
S_FALSE | Array too small |
S_OK | Success |
Remarks
If one of the arrays is too small to hold all of the registered types, the function fills the array but returns S_FALSE.
If the DMO did not register any media types, the function returns S_OK and sets *pulInputTypesSupplied and *pulOutputTypesSupplied to zero.
See Also