MHEG  17.9.0
 All Data Structures Files Functions Variables Typedefs Enumerations Macros Pages
mh5control.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  *
5  * This file is part of a DTVKit Software Component
6  * You are permitted to copy, modify or distribute this file subject to the terms
7  * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org
8  *
9  * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
10  * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES
11  * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
12  *
13  * If you or your organisation is not a member of DTVKit then you have access
14  * to this source code outside of the terms of the licence agreement
15  * and you are expected to delete this and any associated files immediately.
16  * Further information on DTVKit, membership and terms can be found at www.dtvkit.org
17  *******************************************************************************/
25 #ifndef _MH5CONTROL_H
26 #define _MH5CONTROL_H
27 
28 /*---includes for this file--------------------------------------------------*/
29 
30 #include "dvb_misc.h"
31 #include "mh5base.h"
32 #include "mheg5_control.h"
33 #include "fs_types.h"
34 #include "glue_queue.h"
35 
36 /*---Constant and macro definitions for public use---------------------------*/
37 
38 #define ISO_639_LANG_CODE_UND (U32BIT)(('u'<<16)|('n'<<8)|'d')/*0x756E64*/
39 #define UND_LANGUAGE_CODE ISO_639_LANG_CODE_UND
40 
41 /*---Enumerations for public use---------------------------------------------*/
42 
43 /*---Global type defs for public use-----------------------------------------*/
44 
45 /*
46  * Values given to MHEG5_Stop for 'action'
47  */
48 typedef enum
49 {
50  STOP_ACTION_CLEAR_DSMCC,
51  STOP_ACTION_MHEG_TUNE,
52  STOP_ACTION_CI_PLUS_NDT,
53 } E_StopAction;
54 
55 /*---Global variable declarations for public use-----------------------------*/
56 
57 /*---Global Function prototypes for public use-------------------------------*/
58 
64 E_MhegErr MHEG5Initialise( S_MhegConfig *cfg_params );
65 
70 void MHEG5_Terminate( void );
71 
79 void MHEG5engineStart( U8BIT *app_name, BOOLEAN isCi, BOOLEAN special );
80 
85 void MHEG5engineTerminate(void);
86 
90 BOOLEAN MHEG5engineIsCiAppRunning(void);
91 
92 void MHEG5Pause(void);
93 void MHEG5Resume(void);
94 
95 U8BIT MHEG5HandleEngineStopAction( U8BIT action );
96 
97 void MHEG5NotifyEngineStarted(void);
98 void MHEG5NotifyEngineStartFailed(void);
99 void MHEG5NotifyEngineQuit(void);
100 BOOLEAN MHEG5ProcessAutoBoot(void);
101 void MHEG5StartReboot(void *dummy);
102 E_MhegErr MHEG5ResetResolution(U16BIT screenWidth, U16BIT screenHeight);
103 void MHEG5RefreshDisplay(void);
104 void MHEG5RefreshDefaultAudio(void);
105 
106 #ifdef COMMON_INTERFACE
107 
108 void MHEG5CiAckData(U8BIT *pData);
109 U32BIT MHEG5GetCiModuleId(void);
110 void MHEG5notifyCiCamRemove(U32BIT slot_id);
111 
112 #endif /*COMMON_INTERFACE*/
113 
114 #ifndef CI_PLUS_ONLY
115 
116 void MHEG5NotifyCarouselBooted(S_DsmccEvent *param);
117 void MHEG5NotifyCarouselLoaded(S_DsmccEvent *param);
118 void MHEG5NotifyCarouselUnload(S_DsmccEvent *param);
119 
120 void MHEG5AutoPathComplete( E_FsStatus result );
121 
126 void MHEG5engineDsmTerminate(void);
127 
139 MHEG5Bool MHEG5TuneIndex(MHEG5Int serviceIndex);
140 
141 
155 void MHEG5TuneIndexInfo(MHEG5Int tuneInfo);
156 
157 U32BIT MHEG5tuneProcess( S_DvbLocator *pDvbLoc, S32BIT serviceIndex );
158 
159 void MHEG5RefreshStreams(U16BIT service_id);
160 
161 #ifdef INCLUDE_SA_PROFILE
162 void MHEG5StartEpgApp(void);
163 void MHEG5StartInfoApp(BOOLEAN doTimeout);
164 void MHEG5StartListApp(void);
165 #endif /*INCLUDE_SA_PROFILE*/
166 
167 #endif /* CI_PLUS_ONLY*/
168 
169 #endif /* _MH5CONTROL_H */
Basis MHEG5 data types.
void MHEG5engineStart(U8BIT *app_name, BOOLEAN isCi, BOOLEAN special)
Start the engine with the initial application.
Definition: mh5control.c:447
Definition: dvblocator.h:30
MHEG5 queue.
File System types.
void MHEG5_Terminate(void)
Terminate MHEG5 component.
Definition: mh5control.c:263
This file provides the control interface for MHEG5 engine. The use of this component MUST comply with...
void MHEG5TuneIndexInfo(MHEG5Int tuneInfo)
Sets the way the application expects the receiver is to perform all subsequence application initiated...
Definition: mh5control.c:882
BOOLEAN MHEG5engineIsCiAppRunning(void)
Definition: mh5control.c:1158
E_MhegErr MHEG5Initialise(S_MhegConfig *cfg_params)
initialise MHEG5 component
Definition: mh5control.c:203
Definition: mheg5_control.h:152
MHEG5Bool MHEG5TuneIndex(MHEG5Int serviceIndex)
Ref: [1] - 3.10.6.2 Tune to the specified service. If the tuner fails to tune to the service it shoul...
Definition: mh5control.c:852
void MHEG5engineTerminate(void)
Force the engine to terminate.
Definition: mh5control.c:712
void MHEG5engineDsmTerminate(void)
Force the engine to terminate any DSM-CC based MHEG application.
Definition: mh5control.c:831
References: [1] UK1 Profile - Digital Terrestrial Television - Requirements for interoperability (The...
Definition: glue_queue.h:84