STM32F769IDiscovery  1.00
uDANTE Audio Networking with STM32F7 DISCO board
GUI_BMP_Private.h
Go to the documentation of this file.
1 /*********************************************************************
2 * SEGGER Microcontroller GmbH & Co. KG *
3 * Solutions for real time microcontroller applications *
4 **********************************************************************
5 * *
6 * (c) 1996 - 2015 SEGGER Microcontroller GmbH & Co. KG *
7 * *
8 * Internet: www.segger.com Support: support@segger.com *
9 * *
10 **********************************************************************
11 
12 ** emWin V5.28 - Graphical user interface for embedded applications **
13 All Intellectual Property rights in the Software belongs to SEGGER.
14 emWin is protected by international copyright laws. Knowledge of the
15 source code may not be used to write a similar product. This file may
16 only be used in accordance with the following terms:
17 
18 The software has been licensed to STMicroelectronics International
19 N.V. a Dutch company with a Swiss branch and its headquarters in Plan-
20 les-Ouates, Geneva, 39 Chemin du Champ des Filles, Switzerland for the
21 purposes of creating libraries for ARM Cortex-M-based 32-bit microcon_
22 troller products commercialized by Licensee only, sublicensed and dis_
23 tributed under the terms and conditions of the End User License Agree_
24 ment supplied by STMicroelectronics International N.V.
25 Full source code is available at: www.segger.com
26 
27 We appreciate your understanding and fairness.
28 ----------------------------------------------------------------------
29 File : GUI_BMP_Private.h
30 Purpose : Private header file for GUI_BMP... functions
31 ---------------------------END-OF-HEADER------------------------------
32 */
33 
34 #ifndef GUI_BMP_PRIVATE_H
35 #define GUI_BMP_PRIVATE_H
36 
37 #include "GUI_Private.h"
38 
39 /*********************************************************************
40 *
41 * Defines
42 *
43 **********************************************************************
44 */
45 #define BI_RGB 0
46 #define BI_RLE8 1
47 #define BI_RLE4 2
48 #define BI_BITFIELDS 3
49 
50 /*********************************************************************
51 *
52 * Types
53 *
54 **********************************************************************
55 */
56 //
57 // Default parameter structure for reading data from memory
58 //
59 typedef struct {
60  const U8 * pFileData;
62 
63 //
64 // Context structure for getting stdio input
65 //
66 typedef struct {
67  GUI_GET_DATA_FUNC * pfGetData; // Function pointer
68  U32 Off; // Data pointer
69  void * pParam; // Parameter pointer passed to function
71 
72 //
73 // Parameter structure for passing several required variables to the
74 // functions _DrawLine_RGB() and _DrawLine_ARGB() (in GUI_BMP_EnableAlpha.c).
75 //
76 typedef struct {
77  const U8 * pSrc; // Pointer to data
78  I32 xSrc; // Used to read data
79  int ySrc; // Used to read data
83  tLCDDEV_Index2Color * pfIndex2Color; // Used to manage bitfield conversion
85  int x0; // Used to draw data
86  int y0; // Used to draw data
87  int x1; // Used to draw data
88  int y1; // Used to draw data
90 
91 /*********************************************************************
92 *
93 * Interface
94 *
95 **********************************************************************
96 */
97 int GUI_BMP__GetData (void * p, const U8 ** ppData, unsigned NumBytesReq, U32 Off);
98 int GUI_BMP__Init (GUI_BMP_CONTEXT * pContext, I32 * pWidth, I32 * pHeight, U16 * pBitCount, int * pNumColors, int * pCompression);
99 int GUI_BMP__ReadData (GUI_BMP_CONTEXT * pContext, int NumBytes, const U8 ** ppData, unsigned StartOfFile);
100 int GUI_BMP__ReadPalette(GUI_BMP_CONTEXT * pContext, int NumColors);
101 
102 #endif /* GUI_BMP_PRIVATE_H */
103 
104 /*************************** End of file ****************************/
#define U32
Definition: Global.h:50
LCD_API_NEXT_PIXEL * pNextPixel_API
GUI_GET_DATA_FUNC * pfGetData
int GUI_GET_DATA_FUNC(void *p, const U8 **ppData, unsigned NumBytes, U32 Off)
Definition: GUI.h:497
tLCDDEV_Index2Color * pfIndex2Color
int GUI_BMP__ReadPalette(GUI_BMP_CONTEXT *pContext, int NumColors)
int GUI_BMP__Init(GUI_BMP_CONTEXT *pContext, I32 *pWidth, I32 *pHeight, U16 *pBitCount, int *pNumColors, int *pCompression)
#define U16
Definition: Global.h:47
int GUI_BMP__ReadData(GUI_BMP_CONTEXT *pContext, int NumBytes, const U8 **ppData, unsigned StartOfFile)
unsigned int tLCDDEV_Color2Index(LCD_COLOR Color)
Definition: LCD.h:126
const U8 * pFileData
int GUI_BMP__GetData(void *p, const U8 **ppData, unsigned NumBytesReq, U32 Off)
LCD_COLOR tLCDDEV_Index2Color(unsigned Index)
Definition: LCD.h:125
#define I32
Definition: Global.h:59
#define U8
Definition: Global.h:44
tLCDDEV_Color2Index * pfColor2Index