MHEG5  15.3.0
source/core/inc/mh5display.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  * Copyright © 2000 Koninklijke Philips Electronics N.V
00005  *
00006  * This file is part of a DTVKit Software Component
00007  * You are permitted to copy, modify or distribute this file subject to the terms
00008  * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org
00009  *
00010  * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
00011  * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES
00012  * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
00013  *
00014  * If you or your organisation is not a member of DTVKit then you have access
00015  * to this source code outside of the terms of the licence agreement
00016  * and you are expected to delete this and any associated files immediately.
00017  * Further information on DTVKit, membership and terms can be found at www.dtvkit.org
00018  *******************************************************************************/
00029 #ifndef _MHEG5DISPLAY_H
00030 #define _MHEG5DISPLAY_H
00031 
00032 /*---includes for this file--------------------------------------------------*/
00033 #include "mh5visible.h"
00034 #include "mh5bitmap.h"
00035 #include "mh5lineart.h"
00036 #include "mh5rectangle.h"
00037 #include "mh5stream.h"
00038 #include "mh5audio.h"
00039 #include "mh5video.h"
00040 #include "mh5rtgraphics.h"
00041 
00042 /*---Constant and macro definitions for public use---------------------------*/
00043 
00044 /*displayHide does same thing as displayShow - marks area of OSD for updating*/
00045 #define MHEG5displayShow(v)   MHEG5displayVisUpd(v, 0)
00046 #define MHEG5displayHide(v)   MHEG5displayVisUpd(v, 1)
00047 #define MHEG5displayRedraw(v) if ((v)->ingredient.root.runningStatus) MHEG5displayVisUpd(v, 2);
00048 
00049 /*---Enumerations for public use---------------------------------------------*/
00050 
00051 /*---Global type defs for public use-----------------------------------------*/
00052 
00053 /*---Global variable declarations for public use-----------------------------*/
00054 
00055 /*---Global Function prototypes for public use-------------------------------*/
00056 
00062 void MHEG5displayClear(void);
00063 void MHEG5displayVisUpd(MHEG5Visible *visible, U8BIT upd);
00064 void MHEG5displayShowAll(void);
00065 void MHEG5displayResume(void);
00066 void MHEG5groupClearImages( MHEG5Root *group );
00067 void MHEG5groupRedraw( MHEG5Root *group );
00068 
00069 #ifdef INCLUDE_FREESAT
00070 
00074 void MHEG5displayImagePlaneStop(void);
00075 #endif
00076 
00083 void MHEG5displayUpdate(void);
00084 
00085 
00090 void MHEG5displayLockStreams(void);
00091 
00092 
00097 void MHEG5displayUnlockStreams(void);
00098 
00099 
00108 OSDColor MHEG5displayColour(MHEG5Colour *colour);
00109 
00110 /*
00111      Stream Functions
00112  */
00118 void MHEG5displayAudioPlay(MHEG5Audio *audio);
00119 
00120 
00125 void MHEG5displayAudioStop(void);
00126 
00127 
00128 /*
00129      Volume Control
00130  */
00131 void MHEG5displaySetVolume(MHEG5Int volume);
00132 
00133 
00139 void MHEG5displayVideoPlay(MHEG5Video *video);
00140 
00141 
00146 void MHEG5displayVideoStop(void);
00147 
00148 
00154 void MHEG5displayStreamPlay(MHEG5Stream *stream);
00155 
00156 
00162 void MHEG5displayStreamStop(MHEG5Stream *stream);
00163 
00164 
00170 void MHEG5displayIFrameStart(MHEG5Bitmap *bitmap);
00171 
00172 
00177 void MHEG5displayIFrameStop(void);
00178 
00184 void MHEG5displayResetStreamDecoders(BOOLEAN update);
00185 
00186 
00187 void MHEG5displayVideoPositionUpdate(void);
00188 
00189 #ifdef MHEG5_STREAM_TRICK_MODES
00190 
00191 void MHEG5displaySkipTo(MHEG5Root *item, MHEG5Int pos);
00192 
00193 #endif  /* #ifdef MHEG5_STREAM_TRICK_MODES */
00194 
00195 #ifdef SURFACE_THRESHOLD
00196 
00204 void MHEG5displaySetSurfaceThreshold(S32BIT pixels);
00205 #endif  /* SURFACE_THRESHOLD */
00206 
00207 /*
00208    Send Stream notification
00209  */
00210 void MHEG5notifyVideoStarted(void);
00211 void MHEG5notifyVideoStopped(void);
00212 void MHEG5notifyAudioStarted(BOOLEAN isClip);
00213 void MHEG5notifyAudioStopped(BOOLEAN isClip);
00214 
00215 void MHEG5displayVideoDestroy( MHEG5Video *video );
00216 void MHEG5displayAudioDestroy( MHEG5Audio *audio );
00217 void MHEG5displayIframeDestroy( MHEG5Bitmap *iframe );
00218 void MHEG5displayStreamUpdate(void);
00219 
00220 void MHEG5displayRefreshStreams( U16BIT service_id );
00221 U16BIT MHEG5GetVideoSid(void);
00222 U16BIT MHEG5GetAudioSid(void);
00223 
00224 #ifdef _MOVINGCURSOR_
00225 
00226 /* Moving  Cursor
00227  */
00228 void MHEG5displayMouseMove(MHEG5Int mx, MHEG5Int my);
00229 
00230 #endif  /* #ifdef _MOVINGCURSOR_ */
00231 
00232 #endif /*_MHEG5DISPLAY_H*/
 All Data Structures Files Functions Variables Typedefs Defines