MHEG  17.9.0
 All Data Structures Files Functions Variables Typedefs Enumerations Macros Pages
mg_osd.h
Go to the documentation of this file.
1 /*******************************************************************************
2  * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org)
3  * Copyright © 2008 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 _MG_OSD_H
26 #define _MG_OSD_H
27 
28 #include "mg_ctxt.h"
29 #include "osdtype.h"
30 #include "osdtypes.h"
31 
32 #define SRF_TYPE_TXT 0
33 #define SRF_TYPE_PNG 1
34 #define SRF_TYPE_JPG 2
35 #define SRF_TYPE_DLA 3
36 
37 typedef struct s_surface
38 {
39  U16BIT width;
40  U16BIT height;
41  void *col_buff;
42  void *hw_handle;
43  U32BIT buff_pitch;
44  U8BIT opaque;
45  U8BIT srf_type;
46  #ifdef SRF_MEM_DGB
47  struct s_surface *next;
48  struct s_surface *prev;
49  #endif
50 } S_SURFACE;
51 
52 
61 void MG_OSDMhegInit( U16BIT inWidth, U16BIT inHeight, E_ASPECT_RATIO sar );
62 void MG_OSDInit( U16BIT inWidth, U16BIT inHeight,
63  U16BIT outWidth, U16BIT outHeight );
64 
74 void MG_DisplayImage( S_SURFACE *data, S_REGION *overlap, S32BIT x, S32BIT y );
75 
76 E_MhegErr MG_Initialise( U16BIT screenWidth, U16BIT screenHeight, U8BIT colourDepth );
77 
78 void MG_Terminate(void);
79 
80 BOOLEAN MG_IsHdSupported(void);
81 
82 #ifdef SRF_MEM_DGB
83 
84 void OSD_DbgAddSurf( S_SURFACE *srf );
85 void OSD_DbgRemSurf( S_SURFACE *srf );
86 void OSD_DbgListSrf(void);
87 
88 #else
89 
90 #define OSD_DbgAddSurf( s )
91 #define OSD_DbgRemSurf( s )
92 #define OSD_DbgListSurf()
93 
94 #endif
95 
96 #endif /*_MG_OSD_H*/
definition of OSD types
Definition: osdtypes.h:43
void MG_DisplayImage(S_SURFACE *data, S_REGION *overlap, S32BIT x, S32BIT y)
Copy the image to the screen buffer.
Definition: mg_osd.c:1266
void MG_Terminate(void)
Free all OSD resources.
Definition: mg_osd.c:367
Define OSD types.
void MG_OSDMhegInit(U16BIT inWidth, U16BIT inHeight, E_ASPECT_RATIO sar)
Initialise the on screen display Initialise the font and fill in font info.
Definition: mg_osd.c:250
E_MhegErr MG_Initialise(U16BIT screenWidth, U16BIT screenHeight, U8BIT colourDepth)
Initialise OSD, font, and font fill information. Should only be called at start up.
Definition: mg_osd.c:281
Interface to OSD.
Definition: mg_osd.h:37