dmBuffer(3dm)dmBuffer(3dm)NAMEdmBufferMapData - map DMbuffer memory
SYNOPSIS
#include <dmedia/dm_buffer.h>
void* dmBufferMapData(DMbuffer buffer);
DESCRIPTIONdmBufferMapData returns a pointer to the memory in buffer. The pointer
can be used for reading and writing the contents of the buffer. The
pointer remains valid until the buffer is freed with dmBufferFree(3dm).
After allocating a digital media buffer with dmBufferAllocate(3dm), the
pointer returned dmBufferMapData by can be used to write data into the
buffer. However, once the buffer has been sent to one of the digital
media libraries, the pointer may be used to read from the buffer, but the
contents of the buffer should not be modified. This is because the
libraries may retain a reference to the buffer indefinitely. The
functions that send buffers are: dmICSend(3dm), vlDMBufferPutValid(3dm),
and glXAssociateDMPbufferSGIX(3G).
The contents of a buffer should only be modified when it is newly
allocated by dmBufferAllocate(3dm). Buffers received from the the video
library (with vlDMBufferGetValid(3dm)) or the image conversion library
(dmICReceive(3dm)) should not be modified.
The number of bytes of valid data is available from dmBufferGetSize(3dm).
WARNING: A single DMbuffer should not be used with both
glXAssociateDMPbufferSGIX and dmBufferMapData. Cache coherency is not
guaranteed if a DMbuffer that has been rendered into is mapped, or if a
mapped buffer is rendered into.
SEE ALSOdmBufferGetSize(3dm), dmBufferAllocate(3dm), dmICReceive(3dm),
dmICSend(3dm), vlDMBufferGetValid(3dm), vlDMBufferPutValid(3dm).
Page 1