MHEG  17.9.0
 All Data Structures Files Functions Variables Typedefs Enumerations Macros Pages
Data Structures | Typedefs | Enumerations | Functions
glue_queue.h File Reference

MHEG5 queue. More...

#include "mherrors.h"
#include "dvb_misc.h"
#include "mheg5_control.h"
#include "mheg5_keypress.h"
#include "dvbevents.h"
#include "dmxtype.h"
#include "dvblocator.h"
#include "fs_types.h"
#include "dtvstring.h"
#include "dsm_types.h"
#include "mh5queue.h"
#include "glue_type.h"

Go to the source code of this file.

Data Structures

struct  s_StartDsmApp
 
struct  s_keypressevent
 
struct  s_DsmccEvent
 
struct  s_StreamEvent
 
struct  s_CiStart
 
struct  s_CiStop
 
struct  MHEG5StopEventParams_tag
 
struct  MHEG5ResetResolutionParams_tag
 
struct  MHEG5TimerEventParams_tag
 
struct  s_fileAck
 
struct  MHEG5CiFileAcknowledgeEventParams_tag
 
struct  MHEG5FsStorageParams_tag
 
struct  s_dvpeventtype
 
struct  s_mhg_message
 

Typedefs

typedef void(* F_QueueNotify )(void)
 
typedef void(* F_MSG_PROCESS )(void *data)
 Function to Process voyager message. More...
 
typedef struct s_StartDsmApp S_StartDsmApp
 
typedef struct s_keypressevent S_KeyPressEvent
 
typedef struct s_DsmccEvent S_DsmccEvent
 
typedef struct s_StreamEvent S_StreamEvent
 
typedef struct s_CiStart S_CiStart
 
typedef struct s_CiStop S_CiStop
 
typedef struct
MHEG5StopEventParams_tag 
MHEG5StopEventParams_t
 
typedef struct
MHEG5ResetResolutionParams_tag 
MHEG5ResetResolutionParams_t
 
typedef struct
MHEG5TimerEventParams_tag 
MHEG5TimerEventParams_t
 
typedef struct s_fileAck S_FileSystemAck
 
typedef struct
MHEG5CiFileAcknowledgeEventParams_tag 
MHEG5CiFileAcknowledgeEventParams_t
 
typedef struct
MHEG5FsStorageParams_tag 
MHEG5FsStorageParams_t
 
typedef struct s_dvpeventtype S_DvpEventType
 
typedef struct s_mhg_message MHEG5eventMessage_t
 
typedef struct s_mhg_message S_MhegMessage
 

Enumerations

enum  E_PRIORITY {
  PRTY_CRITICAL, PRTY_HIGH, PRTY_NORMAL, PRTY_LOW,
  PRTY_INVALID
}
 
enum  E_DATA_TYPE {
  DT_NONE, DT_VALUE, DT_ALLOC, DT_CONTENT,
  DT_D_CONTENT, DT_F_CONTENT, DT_S_CONTENT
}
 

Functions

E_MhegErr VQ_Open (S_MhegConfig *cfg_params)
 Initialise component control and section queues. Allocates memory for, sets up and creates event (component control) and section queues. More...
 
void VQ_Close (void)
 Close component control and section queue component. Destroys all allocated memory and resources for event and section queues. More...
 
E_MhegErr VQ_PutMsg (S_MhegMessage *pMsg, E_PRIORITY priority)
 Post event or section message on queue. Copies data into queue. More...
 
E_MhegErr VQ_GetMsg (S_MhegMessage *pElem)
 Get an event or section from the component queues. This is a blocking function. More...
 
U16BIT VQ_GetSizeFree (E_PRIORITY priority)
 Get size available on a queue. More...
 
BOOLEAN VQ_EventNeedsProcessing (void)
 Check whether any events on component queues needs processing. More...
 
void * VQ_RegisterNotify (F_QueueNotify normal_rcvd, F_QueueNotify critical_rcvd, F_QueueNotify critical_done)
 
void VQ_UnRegisterNotify (void *qn)
 

Detailed Description

MHEG5 queue.

Date
19 October 2011
Author
Adam Sturtridge

Typedef Documentation

typedef void(* F_MSG_PROCESS)(void *data)

Function to Process voyager message.

Parameters
dataPointer to msg data
Returns
void
typedef void(* F_QueueNotify)(void)

CI_PLUS_ONLY

typedef struct s_CiStart S_CiStart

CI_PLUS_ONLY

Function Documentation

void VQ_Close ( void  )

Close component control and section queue component. Destroys all allocated memory and resources for event and section queues.

Returns
void

Close component control and section queue component. Destroys all allocated memory and resources for event and section queues.

Returns
void
BOOLEAN VQ_EventNeedsProcessing ( void  )

Check whether any events on component queues needs processing.

Returns
TRUE - if processing required
E_MhegErr VQ_GetMsg ( S_MhegMessage pMsg)

Get an event or section from the component queues. This is a blocking function.

Parameters
pElemPointer to event message
Returns
MHERR_OK - Completed successfully. MHERR_COMP_NOT_OPEN - Component queues not open. MHERR_INTERNAL - System error.
Parameters
pEventPointer to component event or section data structure.
Returns
MHERR_OK - Completed successfully. MHERR_COMP_NOT_OPEN - Component queues not open. MHERR_INTERNAL - System error.
U16BIT VQ_GetSizeFree ( E_PRIORITY  priority)

Get size available on a queue.

Parameters
pEventPointer to component event or section data structure.
Returns
number left in queue.
E_MhegErr VQ_Open ( S_MhegConfig cfg_params)

Initialise component control and section queues. Allocates memory for, sets up and creates event (component control) and section queues.

Returns
MHERR_OK - Completed successfully. MHERR_BAD_PARAMETER - Invalid parameter. MHERR_COMP_ALREADY_OPEN - Component queues already open. MHERR_ALLOCATING_MEMORY - Not enough memory to allocate. MHERR_INTERNAL - System error.
Parameters
num_section_buffersMaximum number of sections in queue
Returns
MHERR_OK - Completed successfully. MHERR_BAD_PARAMETER - Invalid parameter. MHERR_COMP_ALREADY_OPEN - Component queues already open. MHERR_ALLOCATING_MEMORY_REGION - Not enough memory to allocate. MHERR_INTERNAL - System error.
E_MhegErr VQ_PutMsg ( S_MhegMessage pMsg,
E_PRIORITY  priority 
)

Post event or section message on queue. Copies data into queue.

Parameters
pMsgPointer to message.
Returns
MHERR_OK - Completed successfully. MHERR_BAD_PARAMETER - Invalid parameter. MHERR_COMP_NOT_OPEN - Component queues not open. MHERR_INTERNAL - System error. MHERR_ALLOCATING_MEMORY - Not enough memory to allocate. MHERR_QUEUE_FULL - Queue full.

Post event or section message on queue. Copies data into queue.

Parameters
pEventPointer to component event.
msg_sizedata size excluding size of S_MhegMessage
Returns
MHERR_OK - Completed successfully. MHERR_BAD_PARAMETER - Invalid parameter. MHERR_COMP_NOT_OPEN - Component queues not open. MHERR_INTERNAL - System error. MHERR_ALLOCATING_MEMORY_REGION - Not enough memory to allocate. MHERR_QUEUE_FULL - Queue full.
void* VQ_RegisterNotify ( F_QueueNotify  normal_rcvd,
F_QueueNotify  critical_rcvd,
F_QueueNotify  critical_done 
)
Parameters
critical_rcvdPointer to function signalling a critical event
critical_donePointer to function inform critical event done
Returns
void
void VQ_UnRegisterNotify ( void *  qn)
Parameters
normal_rcvdPointer to function signalling an async event
Returns
void