mx::IAsyncStreamSource Class Reference
[Component Interfaces]

Interface to byte stream sources that support asynchronous incoming data notification. More...

#include <IAsyncStreamSource.h>

Inheritance diagram for mx::IAsyncStreamSource:

mx::IStreamSource mx::IErrorState mx::IRequiresActivation mx::IInterface mx::IInterface mx::IHTTPGetStreamSource mx::HTTPGetStreamSourceCore mx::HTTPGetStreamSource List of all members.

Public Member Functions

virtual mxmQtSignal streamBytesAvailableSignal () const =0
 Returns the Qt signal that is emitted when new stream bytes become available at the stream source.
virtual bool waitForStreamBytes (int timeout_ms=0)=0
 Blocks until new stream bytes become available.

Detailed Description

Interface to byte stream sources that support asynchronous incoming data notification.

Author:
[khe] Kai Hergenroether


Member Function Documentation

virtual mxmQtSignal mx::IAsyncStreamSource::streamBytesAvailableSignal  )  const [pure virtual]
 

Returns the Qt signal that is emitted when new stream bytes become available at the stream source.

Requirement: When a context reads the source "empty" (until IStreamSource::fetchStreamBytes() reports 0) for each such signal, and always tests IStreamSource::stillUp() afterwards, it must be guaranteed that it does not miss stream disconnections.

Note:
In rare special conditions it is allowed that IStreamSource::fetchStreamBytes() returns 0 bytes even though available stream bytes have been signalled. Therefore, the return value of IStreamSource::fetchStreamBytes() must always be tested against 0.

Implemented in mx::HTTPGetStreamSourceCore.

virtual bool mx::IAsyncStreamSource::waitForStreamBytes int  timeout_ms = 0  )  [pure virtual]
 

Blocks until new stream bytes become available.

Parameters:
timeout_ms 0 means no timeout
Returns:
true in case bytes have become available for reading, and false otherwise.
Note:
In rare special conditions it is allowed that IStreamSource::fetchStreamBytes() returns 0 bytes even though the wait function has returned and reported available data. Therefore, the return value of IStreamSource::fetchStreamBytes() must always be tested against 0.

Implemented in mx::HTTPGetStreamSource.


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