IPropertySetter::GetProps

 
Microsoft DirectShow 9.0

IPropertySetter::GetProps

The GetProps method retrieves the properties set on this object, with their corresponding values.

Syntax

  HRESULT GetProps(
    LONG *pcParams,
    DEXTER_PARAM **paParam,
    DEXTER_VALUE **paValue
);

Parameters

pcParams

[out] Pointer to a variable that receives the number of structures returned in paParam.

paParam

[out] Address of a pointer to an array of DEXTER_PARAM structures.

paValue

[out] Address of a pointer to an array of DEXTER_VALUE structures.

Return Value

Returns one of the following HRESULT values:

Value Description
S_OK Success.
E_OUTOFMEMORY Insufficient memory.
E_POINTER NULL pointer argument.

Remarks

For each property returned in paParam, the nValues member indicates the number of DEXTER_VALUE structures associated with the property. The pairs are returned in ascending time order for each property.

When you are finished using the returned structures, call IPropertySetter::FreeProps to free the resources allocated by this method.

Code Example

The following code example shows how to iterate through all the values on an instance of the property setter:

IPropertySetter *pSetter = NULL;
// Get a valid IPropertySetter pointer (not shown).

DEXTER_PARAM *pParam;
DEXTER_VALUE *pValue;
LONG count;

hr = pSetter->GetProps(&count, &pParam, &pValue);

LONG num = 0;
for (LONG i = 0; i < count; i++)
{
    for (LONG j = 0; j < pParam[i].nValues; j++)
    {
        // pValue[num] is the next value in the sequence for pParam[i]
    }
    num += pParam[i].nValues;
}

Requirements

Header: Include Qedit.h. This header file is not compatible with Microsoft® Direct3D® headers later than version 7.

Library: Use strmiids.lib.

See Also