IltmmMemory::CopyData
#include "ltmm.h"
C Syntax |
HRESULT IltmmMemory_CopyData(pMem, Index, Count, pVal) |
C++ Syntax |
HRESULT CopyData(Index, Count, pVal) |
IltmmMemory *pMem; |
/* pointer to an interface */ |
long Index; |
/* offset */ |
long Count; |
/* size */ |
VARIANT *Data; |
/* pointer to a VARIANT */ |
Copies a block of data to a user-defined buffer.
Parameter |
Description |
pMem |
Pointer to an IltmmMemory interface. |
Index |
Index, or offset, in the object’s buffer, from which to retrieve the data. |
Count |
Size of the data to retrieve (number of elements in bytes). |
Data |
Pointer to a variable to be updated with a VARIANT containing a SAFEARRAY reference to the block of data. |
Returns
S_OK |
The function was successful. |
<> S_OK |
An error occurred. Refer to the Error Codes or the HRESULT error codes in the DirectShow documentation. |
Comments
If the size of the data to retrieve is larger than the size available after the offset, the function will retrieve only the available data between the offset and the end of the buffer.
In the IltmmMemory::GetData function the function itself allocates the memory for the SAFEARRAY. In this function the caller is responsible for allocating the required memory for the SAFEARRAY.
The area of the object's buffer from which the data is copied will be locked for the duration of the call.
Required DLLs and Libraries
LTMM For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
Win32, x64
See Also
Elements: |
IltmmMemory::get_BufferSize, IltmmMemory::GetData, IltmmMemory::put_BufferSize, IltmmMemory::GetByte, IltmmMemory::SetData |
Topics: |
Example
For a C example, refer to Use ltmmMemory for Memory Conversion for C.
For a C++ example, refer to Use ltmmMemory for Memory Conversion for C++.