MHEG5  15.3.0
source/core/inc/mh5queue.h File Reference

Event handling. Implementation of a combined queue for events and actions. This is the eventsystem which drives the MHEG engine. More...

#include "mh5action.h"
#include "mh5link.h"
#include "mh5group.h"

Go to the source code of this file.

Enumerations

enum  E_ENGINE_EVENT {
  EE_GROUP_ID_REF_ERROR = 2, EE_CONTENT_REF_ERROR = 3, EE_KEYPRESS_TEXT = 4, EE_VIDEO_PREF_CHANGED = 6,
  EE_ENGINE_RESUME = 7, EE_NETWORK_BOOT_INFO = 9, EE_NON_DESTRUCTIVE_TUNE_OK = 10, EE_KEYPRESS_CANCEL = 16,
  EE_PVR_LIST_CHANGED = 20, EE_KEYPRESS_RED = 100, EE_KEYPRESS_GREEN = 101, EE_KEYPRESS_YELLOW = 102,
  EE_KEYPRESS_BLUE = 103, EE_KEYPRESS_INFO = 105, EE_KEYPRESS_EPG = 300, EE_AUDIO_LANG_PREF_CHANGED = 301,
  EE_SUBTITLE_LANG_PREF_CHANGED = 302
}

Functions

void MHEG5queueResetScene (MHEG5Root *grp)
 Reset both event queues and the action queue, discarding any pending events and actions for this scene.
void MHEG5queueResolveTargets (MHEG5ActionList actions)
 Finds targets for the action list.
void MHEG5queueUnresolveTargets (MHEG5ActionList actions)
 Clear targets for the action list.
void MHEG5actionListExecute (MHEG5Group *source, MHEG5ActionList actions)
 Execute the supplied list of actions immediately. The actions will have been executed by the time the function returns.
void MHEG5PrependActionList (MHEG5ActionList actions)
 Execute the supplied list of actions before others.
void MHEG5AppendActionList (MHEG5ActionList actions)
 The supplied list of actions should execute after any already on queue.
void MHEG5sendEvent (MHEG5Root *source, MHEG5EventType event, int data)
 Store an event in the asynchronous event queue.
void MHEG5sendAppEngineEvent (E_ENGINE_EVENT engine_event)
 Store an Engine event in the asynchronous event queue.
void MHEG5sendSync (MHEG5Root *source, MHEG5EventType event, int data)
 Store an event in the synchronous event queue.
void MHEG5stopEventsAndResetQueue (void)
 Discard any pending events and actions and prevent future events from being queued. And reset queues. See also MHEG5queueEvents.
void MHEG5queueEvents (void)
 Allow future events to be stored in the event queues. See also MHEG5stopEventsAndQueueReset.
void MHEG5processQueue (void)
 Process all pending events and actions. After processing all events and actions, Normally there will not be any pending synchronous events or actions when this function is entered. The exception to this is when event processing has been disabled and re-enabled. In this case, any pending synchronous events should be processed before processing asynchronous events.
void MHEG5enableEventProcessing (MHEG5Bool enable)
 Enable or disable engine event processing. This function is used to implement the Call action for resident programs that normally fork by disabling engine event progressing until the program finishes.
void MHEG5eventProcessingReset (void)
 Causes the MHEG5enableEventProcessing counter to be reset to 0, and event processing to be enabled. This function is called when the engine is terminated to ensure that event processing will be enabled next time the engine is started.
void MHEG5requestDisplayUpdate (void)
 Request display update at the end of synchronous event processing.
int MHEG5InitQueues (void)
void MHEG5ExitQueues (void)

Detailed Description

Event handling. Implementation of a combined queue for events and actions. This is the eventsystem which drives the MHEG engine.

Date:
01/02/2002
Author:
R.Freeman

Function Documentation

void MHEG5actionListExecute ( MHEG5Group source,
MHEG5ActionList  act_q 
)

Execute the supplied list of actions immediately. The actions will have been executed by the time the function returns.

Parameters:
sourceSource object generating the actions
actionsList of actions to execute
Returns:
void

Execute the supplied list of actions immediately. The actions will have been executed by the time the function returns.

Parameters:
sourceSource object generating the actions
actionsList of actions to execute
Returns:
void

The supplied list of actions should execute after any already on queue.

Parameters:
actionsList of actions to execute
Returns:
void
void MHEG5enableEventProcessing ( MHEG5Bool  enable)

Enable or disable engine event processing. This function is used to implement the Call action for resident programs that normally fork by disabling engine event progressing until the program finishes.

Parameters:
enableMHEG5TRUE to enable event processing, MHEG5FALSE to disable event processing.
Returns:
void

Enable or disable engine event processing. This function is used to implement the Call action for resident programs that normally fork by disabling engine event progressing until the program finishes.

Parameters:
enableMHEG5TRUE to enable event processing, MHEG5FALSE to disable event processing.
Returns:
void
void MHEG5eventProcessingReset ( void  )

Causes the MHEG5enableEventProcessing counter to be reset to 0, and event processing to be enabled. This function is called when the engine is terminated to ensure that event processing will be enabled next time the engine is started.

Returns:
void

Execute the supplied list of actions before others.

Parameters:
actionsList of actions to execute
Returns:
void

Execute the supplied list of actions before others.

Parameters:
actionsList of actions to execute
Returns:
void
void MHEG5processQueue ( void  )

Process all pending events and actions. After processing all events and actions, Normally there will not be any pending synchronous events or actions when this function is entered. The exception to this is when event processing has been disabled and re-enabled. In this case, any pending synchronous events should be processed before processing asynchronous events.

Returns:
void
void MHEG5queueEvents ( void  )

Allow future events to be stored in the event queues. See also MHEG5stopEventsAndQueueReset.

Returns:
void

Allow future events to be stored in the event queues. See also MHEG5stopEventsAndQueueReset.

Returns:
void

Reset both event queues and the action queue, discarding any pending events and actions for this scene.

Returns:
void

Finds targets for the action list.

Parameters:
actionsList of actions to execute
Returns:
void

Clear targets for the action list.

Parameters:
actionsList of actions to execute
Returns:
void
void MHEG5requestDisplayUpdate ( void  )

Request display update at the end of synchronous event processing.

Returns:
void

Request display update at the end of synchronous event processing.

Returns:
void
void MHEG5sendAppEngineEvent ( E_ENGINE_EVENT  engine_event)

Store an Engine event in the asynchronous event queue.

Returns:
Nothing
void MHEG5sendEvent ( MHEG5Root source,
MHEG5EventType  a_type,
int  data 
)

Store an event in the asynchronous event queue.

Parameters:
sourceSource object generating the event
eventType of event to send
dataEvent data associated with this event
Returns:
void

Store an event in the asynchronous event queue.

Parameters:
sourceSource object generating the event
eventType of event to send
dataEvent data associated with this event
Returns:
void
void MHEG5sendSync ( MHEG5Root source,
MHEG5EventType  e_type,
int  e_data 
)

Store an event in the synchronous event queue.

Parameters:
sourceSource object generating the event
eventType of event to send
dataEvent data associated with this event
Returns:
void

Discard any pending events and actions and prevent future events from being queued. And reset queues. See also MHEG5queueEvents.

Returns:
void
 All Data Structures Files Functions Variables Typedefs Defines