Method Convert

From AVObjects Knowledge Base
Jump to: navigation, search

This page is a copy of the original page on the AVObjects' web site and can also be viewed here.

Method for synchronous conversions. If this method is implemented then methods for asynchronous conversions (CanPutFrame(), PutFrame(), CanGetFrame(), GetFrame()) can be not implemented.

HRESULT Convert(
    [in] BYTE* pbSrc,
    [in] int cbSrc,
    [in] BYTE* pbDst,
    [in] int cbDst,
    [out] int* pcbActual,
    [in] int nReserved,
    [in] BYTE* pbReserved
    );

Parameters:

pbSrc        Source buffer for conversion.
cbSrc        Size of data in source buffer in bytes.
pbDst        Destination buffer for result of conversion.
cbDst        Size of destination buffer in bytes
pcbActual    Size of returned data in destination buffer in bytes
nReserved    Library specific variable (see library description)
pbReserved   Library specific variable (see library description)

Returns:

S_OK                                Converted data in pbDst returned
S_FALSE                             Required data is not found
HRESULT_FROM_WIN32(ERROR_MORE_DATA) Destination buffer is too small to receive the data
E_POINTER                           One or more NULL pointer argument
E_INVALIDARG                        One or more arguments are invalid
E_FAIL                              Object not initialized yet or other failure.
Personal tools