MHEG5  18.9.0
MHEG5 Documentation
mh5application.h
Go to the documentation of this file.
1 /*******************************************************************************
2  * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org)
3  * Copyright © 2004 Ocean Blue Software Ltd
4  * Copyright © 2000 Koninklijke Philips Electronics N.V
5  *
6  * This file is part of a DTVKit Software Component
7  * You are permitted to copy, modify or distribute this file subject to the terms
8  * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org
9  *
10  * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
11  * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES
12  * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
13  *
14  * If you or your organisation is not a member of DTVKit then you have access
15  * to this source code outside of the terms of the licence agreement
16  * and you are expected to delete this and any associated files immediately.
17  * Further information on DTVKit, membership and terms can be found at www.dtvkit.org
18  *******************************************************************************/
31 #ifndef _MH5APPLICATION_H
32 #define _MH5APPLICATION_H
33 
34 /*---includes for this file--------------------------------------------------*/
35 #include "mh5group.h"
36 
37 /*---Constant and macro definitions for public use---------------------------*/
38 
39 /*---Enumerations for public use---------------------------------------------*/
40 
41 /*---Global type defs for public use-----------------------------------------*/
42 /*
43  Display Stack
44  */
45 typedef struct sMHEG5DisplayStackItem
46 {
51 
52 
53 /*
54  Applicatin Object
55  */
56 typedef struct
57 {
58  /* Base class */
60 
61  /* Exchanged attributes */
78 
79  /* Internal attributes */
83  MHEG5Bool streamContinuanceFlag; /* See UK1.05 section 6.3.4 */
86 
87 /*---Global variable declarations for public use-----------------------------*/
88 
89 /*---Global Function prototypes for public use-------------------------------*/
90 
97 #ifdef MH5PRINTOUT
98 
105 void MHEG5fontBodyPrint(MHEG5FontBody fontBody, char *out);
106 
113 void MHEG5applicationPrint(MHEG5Application *application, char *out);
114 
115 #endif /* MH5PRINTOUT */
116 
117 
118 
119 /*
120  Access to current Application
121  */
123 
124 
125 /* Clear the application stack */
127 #ifndef CI_PLUS_ONLY
128 void MHEG5applicationCarouselUnload( void *carousel, BOOLEAN isNdt );
129 void MHEG5applicationNDTcarouselAttach( void *carousel );
130 #endif
131 
132 
152 MHEG5ErrorCode MHEG5applicationBootup( char *app_name, BOOLEAN single );
153 
158 void MHEG5applicationBootAbort( void );
159 
160 /*
161  Access the display Stack
162  */
163 void MHEG5displayStackAdd(MHEG5Root *visible, MHEG5Bool atTop);
165 void MHEG5displayStackToTop(MHEG5Root *visible);
166 void MHEG5displayStackToBottom(MHEG5Root *visible);
167 void MHEG5displayStackPutBefore(MHEG5Root *target, MHEG5Root *refVisible);
168 void MHEG5displayStackPutBehind(MHEG5Root *target, MHEG5Root *refVisible);
173 
179 void MHEG5applicationInit(MHEG5Application *application);
180 
181 
189 void MHEG5applicationFree(MHEG5Application *application);
190 
191 /*
192  Internal behaviours
193  */
194 void MHEG5applicationPrepare(MHEG5Application *application);
195 void MHEG5applicationDestruct(MHEG5Application *application);
198 
199 /*
200  Actions
201  */
206 MHEG5ErrorCode MHEG5quit(MHEG5Root *target, MHEG5GList *params);
211 
212 #ifndef MHEG5PROFILE_UK1_06
215 #endif
217 /*
218  Engine behaviours
219  */
220 void MHEG5quitApp(void);
221 
230  MHEG5Group *group);
231 
238 
239 /* For CI interface */
240 void MHEG5applicationPush(MHEG5String groupid);
241 
242 
243 #endif /*_MH5APPLICATION_H*/
void MHEG5applicationInit(MHEG5Application *application)
Initialise an application object with default values.
void MHEG5displayStackPutBehind(MHEG5Root *target, MHEG5Root *refVisible)
Put a Visible exactly below another Visible in the display stack.
MHEG5ActionList onRestart
void MHEG5displayStackToBottom(MHEG5Root *visible)
Move a visible to the Bottom of the display stack.
void MHEG5applicationBootAbort(void)
Aborts launch of Boot Application.
MHEG5String fontAttributes
void MHEG5displayStackAdd(MHEG5Root *visible, MHEG5Bool atTop)
This function adds a visible to the display stack. The parameter atTop defines if the Visible is adde...
MHEG5ErrorCode MHEG5applicationBootup(char *app_name, BOOLEAN single)
Launches Boot Application according to name rules: This function will authenticate and resolve a file...
MHEG5ErrorCode MHEG5openConnection(MHEG5Root *target, MHEG5GList *params)
Impelemtation of the OpenConnection (OpenSucceeded, Protocol, Address, ConnectionTag) action of the a...
void MHEG5applicationFree(MHEG5Application *application)
Free off all memory associated with the specified object, including any exchanged attributes and inte...
MHEG5DisplayStackItem * displayStackTop
MHEG5Colour desktopColour
MHEG5ErrorCode MHEG5getEngineSupport(MHEG5Root *target, MHEG5GList *params)
Implementation of the GetEngineSupport action of the application class GetEngineSupport (Feature...
MHEG5ActionList onSpawnCloseDown
MHEG5Int interchangedProgramContentHook
struct sMHEG5DisplayStackItem * next
void MHEG5applicationNDTcarouselAttach(void *carousel)
MHEG5ErrorCode MHEG5unlockScreen(MHEG5Root *target, MHEG5GList *params)
Impelemtation of the UnlockScreen action of the application class This action may refresh the display...
void MHEG5applicationPrepare(MHEG5Application *application)
Apply the group preparation behaviour.
MHEG5Int lineArtContentHook
Implementation of the Group class Description Defines the structure and behaviour of objects used as ...
void MHEG5applicationClearGroupTargets(MHEG5Application *application, MHEG5Group *group)
Clear targets of actions if they are ingredients of the given group.
MHEG5Colour originalDesktopColour
MHEG5Bool streamContinuanceFlag
void MHEG5applicationCarouselUnload(void *carousel, BOOLEAN isNdt)
void MHEG5ActivateCurrentApplication(void)
Apply the group activation behaviour.
MHEG5Colour highlightRefColour
long MHEG5Int
Definition: mh5base.h:73
MHEG5Colour backgroundColour
struct sMHEG5DisplayStackItem MHEG5DisplayStackItem
MHEG5DisplayStackItem * MHEG5displayStackBottom(void)
This function returns a pointer to the DisplayStackItem at the Bottom of the Stack.
void MHEG5displayStackPutBefore(MHEG5Root *target, MHEG5Root *refVisible)
Put a Visible exactly in front of another Visible in the display stack.
MHEG5Colour sliderRefColour
void MHEG5quitApp(void)
Close an application because of the Quit Application Event defined by DTG.
MHEG5ErrorCode MHEG5closeConnection(MHEG5Root *target, MHEG5GList *params)
Impelemtation of the CloseConnection(ConnectionTag) action of the application class |NOT IMPLEMENTED...
MHEG5ErrorCode MHEG5storePersistent(MHEG5Root *target, MHEG5GList *params)
Implementation of the StorePersistent (StoreSucceeded, InVariables, OutFileName) action from the appl...
MHEG5Group group
MHEG5ErrorCode MHEG5launch(MHEG5Root *target, MHEG5GList *params)
MHEG5ErrorCode MHEG5setDesktopColour(MHEG5Root *target, MHEG5GList *params)
Impelemtation of the SetDesktopColour action of the application class This action may refresh the dis...
MHEG5ErrorCode MHEG5readPersistent(MHEG5Root *target, MHEG5GList *params)
Implementation of the ReadPersistent (ReadSucceded, OutVariables, InFileName) action from the applica...
short MHEG5Bool
Definition: mh5base.h:71
MHEG5ErrorCode
Definition: mh5base.h:222
void MHEG5applicationDestruct(MHEG5Application *application)
Destruct an application object. This function destructs all parts of an application object...
MHEG5DisplayStackItem * MHEG5displayStackPrevVisible(MHEG5Root *visible)
This function returns a pointer to the previous item in the display stack. The input parameter is a V...
void MHEG5displayStackToTop(MHEG5Root *visible)
Move a Visible to the Top of the display stack.
MHEG5DisplayStackItem * displayStackBottom
MHEG5Int bitmapContentHook
MHEG5Int characterSet
MHEG5ErrorCode MHEG5quit(MHEG5Root *target, MHEG5GList *params)
Implementation of the Quit action from the application class Close an application and restart the pre...
void MHEG5applicationResolveTargets(MHEG5Application *application)
Resolve unresolved targets of actions in the application.
MHEG5ErrorCode MHEG5spawn(MHEG5Root *target, MHEG5GList *params)
Implementation of the Spawn action from the application class +Execute the OnSpawnCloseDown Action of...
MHEG5ErrorCode MHEG5lockScreen(MHEG5Root *target, MHEG5GList *params)
Implementation of the LockScreen action of the application class Freeze the display screen and preven...
MHEG5Colour textColour
MHEG5FontBody fontBody
U8BIT BOOLEAN
Definition: techtype.h:99
MHEG5Root * MHEG5displayStackGetVisible(MHEG5DisplayStackItem *item)
This function returns the visible at a specific display stack positon.
MHEG5Int streamContentHook
void MHEG5applicationStackClear(BOOLEAN isNdt)
void MHEG5applicationDeactivate(MHEG5Application *application)
Apply the application deactivation behaviour +Apply the CloseConnection action to all opened auxiliar...
MHEG5Colour buttonRefColour
void MHEG5applicationPush(MHEG5String groupid)
MHEG5DisplayStackItem * MHEG5displayStackPrev(MHEG5DisplayStackItem *item)
This function returns a pointer to the previous item in the display stack. The input parameter is a D...
MHEG5Int textContentHook
struct sMHEG5DisplayStackItem * prev
MHEG5Bool MHEG5displayStackDelete(MHEG5Root *visible)
This function removes the reference to a visible object from the display stack.
MHEG5Application * MHEG5getCurrentApplication(void)
<Function description>="">