damon zhang / Mbed OS rt1050_emwin_gui_demo
Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers LCD_Protected.h Source File

LCD_Protected.h

00001 /*********************************************************************
00002 *                SEGGER Microcontroller GmbH & Co. KG                *
00003 *        Solutions for real time microcontroller applications        *
00004 **********************************************************************
00005 *                                                                    *
00006 *        (c) 1996 - 2016  SEGGER Microcontroller GmbH & Co. KG       *
00007 *                                                                    *
00008 *        Internet: www.segger.com    Support:  support@segger.com    *
00009 *                                                                    *
00010 **********************************************************************
00011 
00012 ** emWin V5.38 - Graphical user interface for embedded applications **
00013 All  Intellectual Property rights  in the Software belongs to  SEGGER.
00014 emWin is protected by  international copyright laws.  Knowledge of the
00015 source code may not be used to write a similar product.  This file may
00016 only be used in accordance with the following terms:
00017 
00018 The software has been licensed to  NXP Semiconductors USA, Inc.  whose
00019 registered  office  is  situated  at 411 E. Plumeria Drive, San  Jose,
00020 CA 95134, USA  solely for  the  purposes  of  creating  libraries  for
00021 NXPs M0, M3/M4 and  ARM7/9 processor-based  devices,  sublicensed  and
00022 distributed under the terms and conditions of the NXP End User License
00023 Agreement.
00024 Full source code is available at: www.segger.com
00025 
00026 We appreciate your understanding and fairness.
00027 ----------------------------------------------------------------------
00028 Licensing information
00029 
00030 Licensor:                 SEGGER Microcontroller Systems LLC
00031 Licensed to:              NXP Semiconductors, 1109 McKay Dr, M/S 76, San Jose, CA 95131, USA
00032 Licensed SEGGER software: emWin
00033 License number:           GUI-00186
00034 License model:            emWin License Agreement, dated August 20th 2011
00035 Licensed product:         -
00036 Licensed platform:        NXP's ARM 7/9, Cortex-M0,M3,M4
00037 Licensed number of seats: -
00038 ----------------------------------------------------------------------
00039 File        : LCD_Protected.h
00040 Purpose     : LCD level - To be used only internally by the GUI
00041 ----------------------------------------------------------------------
00042 */
00043 
00044 #ifndef LCD_PROTECTED_H
00045 #define LCD_PROTECTED_H
00046 
00047 #include "LCD.h"
00048 
00049 #if defined(__cplusplus)
00050 extern "C" {     /* Make sure we have C-declarations in C++ programs */
00051 #endif
00052 
00053 /*********************************************************************
00054 *
00055 *       Data types
00056 */
00057 typedef struct {
00058   LCD_COLOR * paColor;
00059   I16         NumEntries;
00060 } LCD_LUT_INFO;
00061 
00062 typedef struct {
00063   tLCDDEV_DrawPixel  * pfDrawPixel;
00064   tLCDDEV_DrawHLine  * pfDrawHLine;
00065   tLCDDEV_DrawVLine  * pfDrawVLine;
00066   tLCDDEV_FillRect   * pfFillRect;
00067   tLCDDEV_DrawBitmap * pfDrawBitmap;
00068 } LCD_API_LIST;
00069 
00070 /*********************************************************************
00071 *
00072 *       External data
00073 */
00074 extern GUI_CONST_STORAGE U8 LCD_aMirror[256];
00075 extern LCD_PIXELINDEX * LCD__aConvTable;
00076 
00077 /*********************************************************************
00078 *
00079 *       Misc functions
00080 */
00081 void LCD_UpdateColorIndices   (void);
00082 int  LCD_PassingBitmapsAllowed(void);
00083 void LCD_EnableCursor         (int OnOff);
00084 void LCD_SelectLCD            (void);
00085 
00086 void LCD_DrawBitmap(int x0,    int y0,
00087                     int xsize, int ysize,
00088                     int xMul,  int yMul,
00089                     int BitsPerPixel,
00090                     int BytesPerLine,
00091                     const U8 * pPixel,
00092                     const LCD_PIXELINDEX * pTrans);
00093 
00094 void LCD__DrawBitmap_1bpp(int x0,    int y0,
00095                           int xsize, int ysize,
00096                           int xMul,  int yMul,
00097                           int BitsPerPixel,
00098                           int BytesPerLine,
00099                           const U8 * pPixel,
00100                           const LCD_PIXELINDEX * pTrans,
00101                           int OffData);
00102 
00103 /*********************************************************************
00104 *
00105 *       Internal used color conversion routines
00106 */
00107 tLCDDEV_Index2Color LCD_Index2Color_444_12;
00108 tLCDDEV_Index2Color LCD_Index2Color_M444_12;
00109 tLCDDEV_Index2Color LCD_Index2Color_444_12_1;
00110 tLCDDEV_Index2Color LCD_Index2Color_M444_12_1;
00111 tLCDDEV_Index2Color LCD_Index2Color_444_16;
00112 tLCDDEV_Index2Color LCD_Index2Color_M444_16;
00113 tLCDDEV_Index2Color LCD_Index2Color_555;
00114 tLCDDEV_Index2Color LCD_Index2Color_565;
00115 tLCDDEV_Index2Color LCD_Index2Color_8666;
00116 tLCDDEV_Index2Color LCD_Index2Color_888;
00117 tLCDDEV_Index2Color LCD_Index2Color_8888;
00118 tLCDDEV_Index2Color LCD_Index2Color_M8888I;
00119 tLCDDEV_Index2Color LCD_Index2Color_M555;
00120 tLCDDEV_Index2Color LCD_Index2Color_M565;
00121 tLCDDEV_Index2Color LCD_Index2Color_M888;
00122 
00123 tLCDDEV_Color2Index LCD_Color2Index_8666;
00124 
00125 #if defined(__cplusplus)
00126 }
00127 #endif
00128 
00129 #endif /* LCD_PROTECTED_H */
00130 
00131 /*************************** End of file ****************************/
00132