mx::ISupportsSyncStreaming Class Reference
[Component Interfaces]

Provides the means to stream synchrounously. More...

#include <ISupportsSyncStreaming.h>

Inheritance diagram for mx::ISupportsSyncStreaming:

mx::IInterface mx::ISimpleCameraLiveStream mx::ISimpleSyncStream List of all members.

Public Member Functions

virtual mx::EErrorCode getFrame (u8 *pFrame, u32 &uSize, u32 uTimeOutMs=NoTimeout, mx::flags flags=0)=0
 Synchronously polls the next frame.
virtual mx::EErrorCode getFrame (u8 *pFrame, u32 &uSize, mxmFrameInfo &sInfo, u32 uTimeOutMs=NoTimeout, mx::flags flags=0)=0
 getFrame() version returning some additional frame information.

Static Public Attributes

static const u32 NoTimeout = (u32)(-1)

Detailed Description

Provides the means to stream synchrounously.


Member Function Documentation

virtual mx::EErrorCode mx::ISupportsSyncStreaming::getFrame u8 *  pFrame,
u32 &  uSize,
u32  uTimeOutMs = NoTimeout,
mx::flags  flags = 0
[pure virtual]
 

Synchronously polls the next frame.

The current frame is copied to the buffer indicated by pFrame. For one, uSize serves as input specifying the size of the user-provided buffer, and for another it gets overwritten with the frame size actually written, thus also serving as output. In case of too small a buffer (eInvalidValueError), nothing gets written - only the actual frame size is reported as described above. The calling context then has to restart the operation providing a sufficiently large buffer.

Parameters:
pFrame Buffer
uSize[in] Buffer size
uSize[out] Actual frame size
sInfo defined in mx_types.h
uTimeOutMs Maximum time to wait for a new frame. If 0, the method returns immediately, if NoTimeout, the method potentially waits forever.


The documentation for this class was generated from the following file:
Generated on Fri Jun 29 17:21:06 2007 for MxPEG SDK by  doxygen 1.4.6