25 #ifndef _STMR_QUEUE_H_ 26 #define _STMR_QUEUE_H_ 42 QUEUE_EVENT_ITEM_INSERTED,
43 QUEUE_EVENT_ITEM_RELEASED
58 U16BIT referenceCount;
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...
Definition: stmr_queue.c:406
BOOLEAN MHEG5QueueIsValidItem(MHEG5QueueItem *item)
Tell whether the item returned by MHEG5QueueGetHeadItem is valid. If the item is invalid, then streaming is disabled.
Definition: stmr_queue.c:384
Utilitiy functions for IC Streamer.
U32BIT MHEG5QueueGetBufferedBytes(void)
Return number of buffered bytes in the queue (regardless of request)
Definition: stmr_queue.c:570
Definition: stmr_queue.h:46
MHEG5QueueItem * MHEG5QueueAllocItem(U32BIT requestId, U32BIT len)
Allocate a new queue item and initialise with request ID and block length.
Definition: stmr_queue.c:241
void MHEG5QueueTerm(void)
Terminate queue manager.
Definition: stmr_queue.c:799
MHEG5 engine interface error codes.
void MHEG5QueueReleaseAllItems(void)
Release all queue items - clear the queue completely.
Definition: stmr_queue.c:749
void MHEG5QueueReleaseRequestItems(U32BIT requestId)
Release all queue items that are related to a given request.
Definition: stmr_queue.c:636
void MHEG5QueueEnableStreaming(U32BIT requestId)
Allow streaming data from the queue.
Definition: stmr_queue.c:584
System Wide Global Technical Data Type Definitions.
BOOLEAN MHEG5QueueIsStreamingEnabled(void)
Tell whether streaming is enabled.
Definition: stmr_queue.c:626
void MHEG5QueueRegisterInsertCallback(void(*callback)(U32BIT downloadId, U64HL base, U64HL position, U32BIT len, BOOLEAN last))
Register notification callback for item insertion event. If a callback is already registered for the ...
Definition: stmr_queue.c:771
void MHEG5QueueReleaseItems(U32BIT requestId, U64HL marker)
Release queue items that are related to a given request up to a marker.
Definition: stmr_queue.c:680
void MHEG5QueueInsertItem(MHEG5QueueItem *item)
Insert a queue item into the queue.
Definition: stmr_queue.c:279
MHEG5QueueItem * MHEG5QueueGetHeadItem(void)
Return the item at the head of the queue (the next item to consume). The function returns an "invalid...
Definition: stmr_queue.c:336
void MHEG5QueueRegisterReleaseCallback(void(*callback)(U32BIT requestId, U64HL base, U64HL position, U32BIT len, BOOLEAN last))
Register notification callback for item release events. If a callback is already registered for the e...
Definition: stmr_queue.c:786
E_MhegErr MHEG5QueueInit(U8BIT *buffer, U32BIT bufferSize)
Initialise queue manager.
Definition: stmr_queue.c:128
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...
Definition: stmr_queue.c:477
void MHEG5QueueDisableStreaming(void)
Do not allow streaming data from the queue.
Definition: stmr_queue.c:609