MHEG5  15.3.0
source/core/inc/mh5control.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002  * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org)
00003  * Copyright © 2004 Ocean Blue Software Ltd
00004  *
00005  * This file is part of a DTVKit Software Component
00006  * You are permitted to copy, modify or distribute this file subject to the terms
00007  * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org
00008  *
00009  * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
00010  * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES
00011  * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
00012  *
00013  * If you or your organisation is not a member of DTVKit then you have access
00014  * to this source code outside of the terms of the licence agreement
00015  * and you are expected to delete this and any associated files immediately.
00016  * Further information on DTVKit, membership and terms can be found at www.dtvkit.org
00017  *******************************************************************************/
00025 #ifndef _MH5CONTROL_H
00026 #define _MH5CONTROL_H
00027 
00028 /*---includes for this file--------------------------------------------------*/
00029 
00030 #include "dvb_misc.h"
00031 #include "mh5base.h"
00032 #include "mheg5_control.h"
00033 #include "fs_types.h"
00034 #include "glue_queue.h"
00035 
00036 /*---Constant and macro definitions for public use---------------------------*/
00037 
00038 #define UND_LANGUAGE_CODE (U32BIT)(('u'<<16)|('n'<<8)|'d')
00039 
00040 /*---Enumerations for public use---------------------------------------------*/
00041 
00042 /*---Global type defs for public use-----------------------------------------*/
00043 
00044 /*
00045  * Values given to MHEG5_Stop for 'action'
00046  */
00047 typedef enum
00048 {
00049    STOP_ACTION_CLEAR_DSMCC,
00050    STOP_ACTION_MHEG_TUNE,
00051 } E_StopAction;
00052 
00053 /*---Global variable declarations for public use-----------------------------*/
00054 
00055 /*---Global Function prototypes for public use-------------------------------*/
00056 
00062 E_MhegErr MHEG5Initialise( S_MhegConfig *cfg_params );
00063 
00068 void MHEG5_Terminate( void );
00069 
00076 void MHEG5engineStart( U8BIT *application, BOOLEAN isCi );
00077 
00082 void MHEG5engineTerminate(void);
00083 
00087 BOOLEAN MHEG5engineIsCiAppRunning(void);
00088 
00089 void MHEG5Pause(void);
00090 void MHEG5Resume(void);
00091 
00092 U8BIT MHEG5HandleEngineStopAction( U8BIT action );
00093 
00094 void MHEG5NotifyEngineStarted(void);
00095 void MHEG5NotifyEngineStartFailed(void);
00096 void MHEG5NotifyEngineQuit(void);
00097 BOOLEAN MHEG5ProcessAutoBoot(void);
00098 void MHEG5StartReboot(void *dummy);
00099 E_MhegErr MHEG5ResetResolution(U16BIT screenWidth, U16BIT screenHeight);
00100 void MHEG5RefreshDisplay(void);
00101 
00102 void MHEG5CiAckData(U8BIT *pData);
00103 
00104 #ifndef CI_PLUS_ONLY
00105 
00106 void MHEG5NotifyCarouselBooted(S_DsmccEvent *param);
00107 void MHEG5NotifyCarouselLoaded(S_DsmccEvent *param);
00108 void MHEG5NotifyCarouselUnload(S_DsmccEvent *param);
00109 
00110 void MHEG5AutoPathComplete( E_FsStatus result );
00111 
00116 void MHEG5engineDsmTerminate(void);
00117 
00129 MHEG5Bool MHEG5TuneIndex(MHEG5Int serviceIndex);
00130 
00131 
00145 void MHEG5TuneIndexInfo(MHEG5Int tuneInfo);
00146 
00147 U32BIT MHEG5tuneProcess( S_DvbLocator *pDvbLoc, S32BIT serviceIndex );
00148 
00149 void MHEG5RefreshStreams(U16BIT service_id);
00150 
00151 #endif /* CI_PLUS_ONLY*/
00152 
00153 #endif /* _MH5CONTROL_H */
 All Data Structures Files Functions Variables Typedefs Defines