25 #ifndef _STMR_QUEUE_H_ 26 #define _STMR_QUEUE_H_ void MHEG5QueueUpdateItem(MHEG5QueueItem *item, U32BIT processed)
Update the number of bytes processed in a queue item. The same item will be returned by the next call...
BOOLEAN MHEG5QueueIsValidItem(MHEG5QueueItem *item)
Tell whether the item returned by MHEG5QueueGetHeadItem is valid. If the item is invalid, then streaming is disabled.
Utilitiy functions for IC Streamer.
U32BIT MHEG5QueueGetBufferedBytes(void)
Return number of buffered bytes in the queue (regardless of request)
MHEG5QueueItem * MHEG5QueueAllocItem(U32BIT requestId, U32BIT len)
Allocate a new queue item and initialise with request ID and block length.
void MHEG5QueueRegisterReleaseCallback(void(*callback)(U32BIT requestId, U64BIT base, U64BIT position, U32BIT len, BOOLEAN last))
Register notification callback for item release events. If a callback is already registered for the e...
void MHEG5QueueTerm(void)
Terminate queue manager.
struct sMHEG5QueueItem * next
MHEG5 engine interface error codes.
void MHEG5QueueReleaseAllItems(void)
Release all queue items - clear the queue completely.
void MHEG5QueueReleaseRequestItems(U32BIT requestId)
Release all queue items that are related to a given request.
void MHEG5QueueEnableStreaming(U32BIT requestId)
Allow streaming data from the queue.
System Wide Global Technical Data Type Definitions.
BOOLEAN MHEG5QueueIsStreamingEnabled(void)
Tell whether streaming is enabled.
struct sMHEG5QueueItem MHEG5QueueItem
void MHEG5QueueInsertItem(MHEG5QueueItem *item)
Insert a queue item into the queue.
void MHEG5QueueReleaseItems(U32BIT requestId, U64BIT marker)
Release queue items that are related to a given request up to a marker.
MHEG5QueueItem * MHEG5QueueGetHeadItem(void)
Return the item at the head of the queue (the next item to consume). The function returns an "invalid...
E_MhegErr MHEG5QueueInit(U8BIT *buffer, U32BIT bufferSize)
Initialise queue manager.
void MHEG5QueueReleaseItem(MHEG5QueueItem *item)
Release an item from the queue. If the item is no longer in the queue (because the queue has been cle...
void MHEG5QueueDisableStreaming(void)
Do not allow streaming data from the queue.
void MHEG5QueueRegisterInsertCallback(void(*callback)(U32BIT downloadId, U64BIT base, U64BIT position, U32BIT len, BOOLEAN last))
Register notification callback for item insertion event. If a callback is already registered for the ...