CP_PIPETYPE Struct Reference
[Content Pipes]

#include <OMX_ContentPipe.h>


Data Fields

CPresult(* Open )(CPhandle *hContent, CPstring szURI, CP_ACCESSTYPE eAccess)
CPresult(* Close )(CPhandle hContent)
CPresult(* Create )(CPhandle *hContent, CPstring szURI)
CPresult(* CheckAvailableBytes )(CPhandle hContent, CPuint nBytesRequested, CP_CHECKBYTESRESULTTYPE *eResult)
CPresult(* SetPosition )(CPhandle hContent, CPint nOffset, CP_ORIGINTYPE eOrigin)
CPresult(* GetPosition )(CPhandle hContent, CPuint *pPosition)
CPresult(* Read )(CPhandle hContent, CPbyte *pData, CPuint nSize)
CPresult(* ReadBuffer )(CPhandle hContent, CPbyte **ppBuffer, CPuint *nSize, CPbool bForbidCopy)
CPresult(* ReleaseReadBuffer )(CPhandle hContent, CPbyte *pBuffer)
CPresult(* Write )(CPhandle hContent, CPbyte *data, CPuint nSize)
CPresult(* GetWriteBuffer )(CPhandle hContent, CPbyte **ppBuffer, CPuint nSize)
CPresult(* WriteBuffer )(CPhandle hContent, CPbyte *pBuffer, CPuint nFilledSize)
CPresult(* RegisterCallback )(CPhandle hContent, CPresult(*ClientCallback)(CP_EVENTTYPE eEvent, CPuint iParam))


Detailed Description

content pipe definition

Definition at line 142 of file OMX_ContentPipe.h.


Field Documentation

CPresult(* CP_PIPETYPE::Open)(CPhandle *hContent, CPstring szURI, CP_ACCESSTYPE eAccess)

Open a content stream for reading or writing.

Close a content stream.

Create a content source and open it for writing.

Check the that specified number of bytes are available for reading or writing (depending on access type).

Seek to certain position in the content relative to the specified origin.

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.

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)

Retrieve a buffer allocated by the pipe used to write data to the content. Client will fill buffer with output data. Note: pipe provides pointer. This function is appropriate for large writes. The client must call WriteBuffer when done it has filled the buffer with data.

CPresult(* CP_PIPETYPE::WriteBuffer)(CPhandle hContent, CPbyte *pBuffer, CPuint nFilledSize)

Deliver a buffer obtained via GetWriteBuffer to the pipe. Pipe will write the the contents of the buffer to content and advance content pointer by the size of the buffer

CPresult(* CP_PIPETYPE::RegisterCallback)(CPhandle hContent, CPresult(*ClientCallback)(CP_EVENTTYPE eEvent, CPuint iParam))

Register a per-handle client callback with the content pipe.


The documentation for this struct was generated from the following file:

Generated for OpenMAX Bellagio rel. 0.3.5-svn by  doxygen 1.5.1
SourceForge.net Logo