#include <OMX_ContentPipe.h>
Definition at line 142 of file OMX_ContentPipe.h.
CPresult(* CP_PIPETYPE::Open)(CPhandle *hContent, CPstring szURI, CP_ACCESSTYPE eAccess) |
Open a content stream for reading or writing.
CPresult(* CP_PIPETYPE::Close)(CPhandle hContent) |
Close a content stream.
CPresult(* CP_PIPETYPE::Create)(CPhandle *hContent, CPstring szURI) |
Create a content source and open it for writing.
CPresult(* CP_PIPETYPE::CheckAvailableBytes)(CPhandle hContent, CPuint nBytesRequested, CP_CHECKBYTESRESULTTYPE *eResult) |
Check the that specified number of bytes are available for reading or writing (depending on access type).
CPresult(* CP_PIPETYPE::SetPosition)(CPhandle hContent, CPint nOffset, CP_ORIGINTYPE eOrigin) |
Seek to certain position in the content relative to the specified origin.
CPresult(* CP_PIPETYPE::GetPosition)(CPhandle hContent, CPuint *pPosition) |
Retrieve the current position relative to the start of the content.
CPresult(* CP_PIPETYPE::Read)(CPhandle hContent, CPbyte *pData, CPuint nSize) |
Retrieve data of the specified size from the content stream (advance content pointer by size of data). Note: pipe client provides pointer. This function is appropriate for small high frequency reads.
CPresult(* CP_PIPETYPE::ReadBuffer)(CPhandle hContent, CPbyte **ppBuffer, CPuint *nSize, CPbool bForbidCopy) |
Retrieve a buffer allocated by the pipe that contains the requested number of bytes. Buffer contains the next block of bytes, as specified by nSize, of the content. nSize also returns the size of the block actually read. Content pointer advances the by the returned size. Note: pipe provides pointer. This function is appropriate for large reads. The client must call ReleaseReadBuffer when done with buffer.
In some cases the requested block may not reside in contiguous memory within the pipe implementation. For instance if the pipe leverages a circular buffer then the requested block may straddle the boundary of the circular buffer. By default a pipe implementation performs a copy in this case to provide the block to the pipe client in one contiguous buffer. If, however, the client sets bForbidCopy, then the pipe returns only those bytes preceding the memory boundary. Here the client may retrieve the data in segments over successive calls.
CPresult(* CP_PIPETYPE::ReleaseReadBuffer)(CPhandle hContent, CPbyte *pBuffer) |
Release a buffer obtained by ReadBuffer back to the pipe.
CPresult(* CP_PIPETYPE::Write)(CPhandle hContent, CPbyte *data, CPuint nSize) |
Write data of the specified size to the content (advance content pointer by size of data). Note: pipe client provides pointer. This function is appropriate for small high frequency writes.
CPresult(* CP_PIPETYPE::GetWriteBuffer)(CPhandle hContent, CPbyte **ppBuffer, CPuint nSize) |
CPresult(* CP_PIPETYPE::WriteBuffer)(CPhandle hContent, CPbyte *pBuffer, CPuint nFilledSize) |
CPresult(* CP_PIPETYPE::RegisterCallback)(CPhandle hContent, CPresult(*ClientCallback)(CP_EVENTTYPE eEvent, CPuint iParam)) |
Register a per-handle client callback with the content pipe.