MHEG5  15.3.0
source/graphics/inc/mg_api.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002  * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org)
00003  * Copyright © 2012 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 _MG_API_H
00026 #define _MG_API_H
00027 
00028 #include "mh5visible.h"
00029 
00030 #ifdef OSD_8_BIT
00031 extern void MG_OSDUpdate( void );
00032 #else /* OSD_8_BIT */
00033   #include "stb_osd.h"
00034   #define MG_OSDUpdate STB_OSDMhegUpdate
00035 #endif /* OSD_8_BIT */
00036 
00037 void MG_DrawPng( void *data, int len, MHEG5Visible *visible );
00038 void MG_DrawJpg( void *data, int len, MHEG5Visible *visible );
00039 void MG_FreeData( void *data );
00040 
00041 void MG_OSDdisplayBitmap( MHEG5Visible *visible, S_REGION *overlap );
00042 void MG_OSDdisplayImage( void *data, S_REGION *overlap, int x, int y );
00043 void MG_OSDdisplayDynamicLineart( void *data, S_REGION *overlap, int x, int y );
00044 
00045 void MG_OSDdisplayRectangle( S_REGION *overlap, int x, int y, int width, int height,
00046    int lineWidth,                                  /*int lineStyle,*/
00047    OSDColor lineColour, OSDColor fillColour );
00048 
00049 void MG_OSDdisplayVideo( S_REGION rgn );
00050 
00051 #ifdef SURFACE_THRESHOLD
00052 
00059 void MG_ApplySurfaceThreshold(void **data, S32BIT threshold);
00060 #endif
00061 
00068 void MG_OSDerase( S_REGION rgn, OSDColor colour );
00069 
00074 void MG_OSDclear(void);
00075 
00086 void MG_OSDstartTextOutput( S_REGION *overlap, int boxX1, int boxY1, int boxWidth, int boxHeight,
00087    OSDColor backColour, int psize);
00088 
00094 void OSDsetTextColour(OSDColor foreColour);
00095 
00103 void OSDdisplayChar(unsigned short c,
00104    int x,
00105    int y);
00106 
00112 void OSDendTextOutput(void);
00113 
00120 int OSDgetCharWidth(unsigned short c);
00121 
00122 
00123 #endif /*_MG_API_H*/
 All Data Structures Files Functions Variables Typedefs Defines