this repository aim to make the official ST DISCO F746NG demo from STM32Cube_FW_F7_V1.2.0 working on mbed.
Dependencies: BSP_DISCO_F746NG_patch mbed-rtos mbed
patch/inc/GUI_JPEG_Private.h@0:c00e6c923941, 2015-11-02 (annotated)
- Committer:
- NirT
- Date:
- Mon Nov 02 23:38:08 2015 +0000
- Revision:
- 0:c00e6c923941
Error: Incomplete type is not allowed in "patch/LwIP/src/include/lwip/dhcp.h", Line: 83, Col: 4; ; and more like this.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
NirT | 0:c00e6c923941 | 1 | /********************************************************************* |
NirT | 0:c00e6c923941 | 2 | * SEGGER Microcontroller GmbH & Co. KG * |
NirT | 0:c00e6c923941 | 3 | * Solutions for real time microcontroller applications * |
NirT | 0:c00e6c923941 | 4 | ********************************************************************** |
NirT | 0:c00e6c923941 | 5 | * * |
NirT | 0:c00e6c923941 | 6 | * (c) 1996 - 2015 SEGGER Microcontroller GmbH & Co. KG * |
NirT | 0:c00e6c923941 | 7 | * * |
NirT | 0:c00e6c923941 | 8 | * Internet: www.segger.com Support: support@segger.com * |
NirT | 0:c00e6c923941 | 9 | * * |
NirT | 0:c00e6c923941 | 10 | ********************************************************************** |
NirT | 0:c00e6c923941 | 11 | |
NirT | 0:c00e6c923941 | 12 | ** emWin V5.28 - Graphical user interface for embedded applications ** |
NirT | 0:c00e6c923941 | 13 | All Intellectual Property rights in the Software belongs to SEGGER. |
NirT | 0:c00e6c923941 | 14 | emWin is protected by international copyright laws. Knowledge of the |
NirT | 0:c00e6c923941 | 15 | source code may not be used to write a similar product. This file may |
NirT | 0:c00e6c923941 | 16 | only be used in accordance with the following terms: |
NirT | 0:c00e6c923941 | 17 | |
NirT | 0:c00e6c923941 | 18 | The software has been licensed to STMicroelectronics International |
NirT | 0:c00e6c923941 | 19 | N.V. a Dutch company with a Swiss branch and its headquarters in Plan- |
NirT | 0:c00e6c923941 | 20 | les-Ouates, Geneva, 39 Chemin du Champ des Filles, Switzerland for the |
NirT | 0:c00e6c923941 | 21 | purposes of creating libraries for ARM Cortex-M-based 32-bit microcon_ |
NirT | 0:c00e6c923941 | 22 | troller products commercialized by Licensee only, sublicensed and dis_ |
NirT | 0:c00e6c923941 | 23 | tributed under the terms and conditions of the End User License Agree_ |
NirT | 0:c00e6c923941 | 24 | ment supplied by STMicroelectronics International N.V. |
NirT | 0:c00e6c923941 | 25 | Full source code is available at: www.segger.com |
NirT | 0:c00e6c923941 | 26 | |
NirT | 0:c00e6c923941 | 27 | We appreciate your understanding and fairness. |
NirT | 0:c00e6c923941 | 28 | ---------------------------------------------------------------------- |
NirT | 0:c00e6c923941 | 29 | File : GUI_JPEG_Private.h |
NirT | 0:c00e6c923941 | 30 | Purpose : Private header |
NirT | 0:c00e6c923941 | 31 | ---------------------------------------------------------------------- |
NirT | 0:c00e6c923941 | 32 | |
NirT | 0:c00e6c923941 | 33 | Explanation of terms: |
NirT | 0:c00e6c923941 | 34 | |
NirT | 0:c00e6c923941 | 35 | Component - Color channel, e.g., Red or Luminance. |
NirT | 0:c00e6c923941 | 36 | Sample - Single component value (i.e., one number in the image data). |
NirT | 0:c00e6c923941 | 37 | Coefficient - Frequency coefficient (a DCT transform output number). |
NirT | 0:c00e6c923941 | 38 | Block - 8x8 group of samples or coefficients. |
NirT | 0:c00e6c923941 | 39 | MCU - (Minimum Coded Unit) is an interleaved set of blocks of size |
NirT | 0:c00e6c923941 | 40 | determined by the sampling factors, or a single block in a |
NirT | 0:c00e6c923941 | 41 | noninterleaved scan. |
NirT | 0:c00e6c923941 | 42 | |
NirT | 0:c00e6c923941 | 43 | ---------------------------END-OF-HEADER------------------------------ |
NirT | 0:c00e6c923941 | 44 | */ |
NirT | 0:c00e6c923941 | 45 | |
NirT | 0:c00e6c923941 | 46 | #ifndef GUI_JPEG_PRIVATE_H |
NirT | 0:c00e6c923941 | 47 | #define GUI_JPEG_PRIVATE_H |
NirT | 0:c00e6c923941 | 48 | |
NirT | 0:c00e6c923941 | 49 | /********************************************************************* |
NirT | 0:c00e6c923941 | 50 | * |
NirT | 0:c00e6c923941 | 51 | * Defines |
NirT | 0:c00e6c923941 | 52 | * |
NirT | 0:c00e6c923941 | 53 | ********************************************************************** |
NirT | 0:c00e6c923941 | 54 | */ |
NirT | 0:c00e6c923941 | 55 | #define JPEG_LOCK_H(h) (GUI_JPEG_DCONTEXT *)GUI_LOCK_H(h) |
NirT | 0:c00e6c923941 | 56 | |
NirT | 0:c00e6c923941 | 57 | /********************************************************************* |
NirT | 0:c00e6c923941 | 58 | * |
NirT | 0:c00e6c923941 | 59 | * Scan types |
NirT | 0:c00e6c923941 | 60 | */ |
NirT | 0:c00e6c923941 | 61 | #define GRAYSCALE 0 |
NirT | 0:c00e6c923941 | 62 | #define YH1V1 1 |
NirT | 0:c00e6c923941 | 63 | #define YH2V1 2 |
NirT | 0:c00e6c923941 | 64 | #define YH1V2 3 |
NirT | 0:c00e6c923941 | 65 | #define YH2V2 4 |
NirT | 0:c00e6c923941 | 66 | |
NirT | 0:c00e6c923941 | 67 | /********************************************************************* |
NirT | 0:c00e6c923941 | 68 | * |
NirT | 0:c00e6c923941 | 69 | * Maximum number of... |
NirT | 0:c00e6c923941 | 70 | */ |
NirT | 0:c00e6c923941 | 71 | #define MAX_COMPONENTS 4 |
NirT | 0:c00e6c923941 | 72 | #define MAX_HUFFTABLES 8 |
NirT | 0:c00e6c923941 | 73 | #define MAX_QUANTTABLES 4 |
NirT | 0:c00e6c923941 | 74 | #define MAX_COMPSINSCAN 4 |
NirT | 0:c00e6c923941 | 75 | #define MAX_BLOCKSPERMCU 10 |
NirT | 0:c00e6c923941 | 76 | |
NirT | 0:c00e6c923941 | 77 | /********************************************************************* |
NirT | 0:c00e6c923941 | 78 | * |
NirT | 0:c00e6c923941 | 79 | * Marker definitions |
NirT | 0:c00e6c923941 | 80 | */ |
NirT | 0:c00e6c923941 | 81 | #define M_SOF0 0xc0 /* Start Of Frame */ |
NirT | 0:c00e6c923941 | 82 | #define M_SOF1 0xc1 |
NirT | 0:c00e6c923941 | 83 | #define M_SOF2 0xc2 |
NirT | 0:c00e6c923941 | 84 | #define M_SOF3 0xc3 |
NirT | 0:c00e6c923941 | 85 | |
NirT | 0:c00e6c923941 | 86 | #define M_SOF5 0xc5 |
NirT | 0:c00e6c923941 | 87 | #define M_SOF6 0xc6 |
NirT | 0:c00e6c923941 | 88 | #define M_SOF7 0xc7 |
NirT | 0:c00e6c923941 | 89 | |
NirT | 0:c00e6c923941 | 90 | #define M_JPG 0xc8 |
NirT | 0:c00e6c923941 | 91 | #define M_SOF9 0xc9 |
NirT | 0:c00e6c923941 | 92 | #define M_SOF10 0xca |
NirT | 0:c00e6c923941 | 93 | #define M_SOF11 0xcb |
NirT | 0:c00e6c923941 | 94 | |
NirT | 0:c00e6c923941 | 95 | #define M_SOF13 0xcd |
NirT | 0:c00e6c923941 | 96 | #define M_SOF14 0xce |
NirT | 0:c00e6c923941 | 97 | #define M_SOF15 0xcf |
NirT | 0:c00e6c923941 | 98 | |
NirT | 0:c00e6c923941 | 99 | #define M_DHT 0xc4 /* Define Huffman Table */ |
NirT | 0:c00e6c923941 | 100 | |
NirT | 0:c00e6c923941 | 101 | #define M_DAC 0xcc /* Define Arithmetic Coding Table */ |
NirT | 0:c00e6c923941 | 102 | |
NirT | 0:c00e6c923941 | 103 | #define M_RST0 0xd0 |
NirT | 0:c00e6c923941 | 104 | #define M_RST1 0xd1 |
NirT | 0:c00e6c923941 | 105 | #define M_RST2 0xd2 |
NirT | 0:c00e6c923941 | 106 | #define M_RST3 0xd3 |
NirT | 0:c00e6c923941 | 107 | #define M_RST4 0xd4 |
NirT | 0:c00e6c923941 | 108 | #define M_RST5 0xd5 |
NirT | 0:c00e6c923941 | 109 | #define M_RST6 0xd6 |
NirT | 0:c00e6c923941 | 110 | #define M_RST7 0xd7 |
NirT | 0:c00e6c923941 | 111 | |
NirT | 0:c00e6c923941 | 112 | #define M_SOI 0xd8 /* Start Of Image */ |
NirT | 0:c00e6c923941 | 113 | #define M_EOI 0xd9 |
NirT | 0:c00e6c923941 | 114 | #define M_SOS 0xda /* Start Of Scan */ |
NirT | 0:c00e6c923941 | 115 | #define M_DQT 0xdb /* Define Quantisation Table */ |
NirT | 0:c00e6c923941 | 116 | #define M_DRI 0xdd /* Define Restart Interval */ |
NirT | 0:c00e6c923941 | 117 | |
NirT | 0:c00e6c923941 | 118 | #define M_APP0 0xe0 /* Application Usage */ |
NirT | 0:c00e6c923941 | 119 | #define M_APP14 0xee /* Adobe marker */ |
NirT | 0:c00e6c923941 | 120 | |
NirT | 0:c00e6c923941 | 121 | #define M_TEM 0x01 |
NirT | 0:c00e6c923941 | 122 | |
NirT | 0:c00e6c923941 | 123 | #define ADOBE_TRANSFORM_RGB 0 |
NirT | 0:c00e6c923941 | 124 | #define ADOBE_TRANSFORM_YCBCR 1 |
NirT | 0:c00e6c923941 | 125 | |
NirT | 0:c00e6c923941 | 126 | /********************************************************************* |
NirT | 0:c00e6c923941 | 127 | * |
NirT | 0:c00e6c923941 | 128 | * Types |
NirT | 0:c00e6c923941 | 129 | * |
NirT | 0:c00e6c923941 | 130 | ********************************************************************** |
NirT | 0:c00e6c923941 | 131 | */ |
NirT | 0:c00e6c923941 | 132 | /* Default parameter structure for reading data from memory */ |
NirT | 0:c00e6c923941 | 133 | typedef struct { |
NirT | 0:c00e6c923941 | 134 | const U8 * pFileData; |
NirT | 0:c00e6c923941 | 135 | I32 FileSize; |
NirT | 0:c00e6c923941 | 136 | } GUI_JPEG_PARAM; |
NirT | 0:c00e6c923941 | 137 | |
NirT | 0:c00e6c923941 | 138 | /* Huffman table definition */ |
NirT | 0:c00e6c923941 | 139 | typedef struct { |
NirT | 0:c00e6c923941 | 140 | unsigned aLookUp[256]; |
NirT | 0:c00e6c923941 | 141 | U8 aCodeSize[256]; |
NirT | 0:c00e6c923941 | 142 | unsigned aTree[512]; |
NirT | 0:c00e6c923941 | 143 | } HUFF_TABLE; |
NirT | 0:c00e6c923941 | 144 | |
NirT | 0:c00e6c923941 | 145 | /* Coefficient buffer used for progressive JPEGs */ |
NirT | 0:c00e6c923941 | 146 | typedef struct { |
NirT | 0:c00e6c923941 | 147 | int NumBlocksX; |
NirT | 0:c00e6c923941 | 148 | int NumBlocksY; |
NirT | 0:c00e6c923941 | 149 | unsigned BlockSize; |
NirT | 0:c00e6c923941 | 150 | GUI_HMEM hData; |
NirT | 0:c00e6c923941 | 151 | } COEFF_BUFFER; |
NirT | 0:c00e6c923941 | 152 | |
NirT | 0:c00e6c923941 | 153 | typedef struct GUI_JPEG_DCONTEXT GUI_JPEG_DCONTEXT; |
NirT | 0:c00e6c923941 | 154 | |
NirT | 0:c00e6c923941 | 155 | struct GUI_JPEG_DCONTEXT { |
NirT | 0:c00e6c923941 | 156 | /* Function pointer for drawing one line of completely decoded pixels */ |
NirT | 0:c00e6c923941 | 157 | void (* pfWritePixels)(int x0, int y0, GUI_JPEG_DCONTEXT * pContext, GUI_COLOR (* pfGetColor)(const U8 ** ppData, unsigned SkipCnt), tLCDDEV_Color2Index * pfColor2Index); |
NirT | 0:c00e6c923941 | 158 | /* Function pointer for reading one byte */ |
NirT | 0:c00e6c923941 | 159 | int (* pfGetU8)(GUI_JPEG_DCONTEXT * pContext, U8 * pByte); |
NirT | 0:c00e6c923941 | 160 | |
NirT | 0:c00e6c923941 | 161 | GUI_GET_DATA_FUNC * pfGetData; /* 'GetData' Function pointer */ |
NirT | 0:c00e6c923941 | 162 | void * pParam; /* Pointer passed to 'GetData' function */ |
NirT | 0:c00e6c923941 | 163 | U32 Off; /* Data pointer */ |
NirT | 0:c00e6c923941 | 164 | /* Image size */ |
NirT | 0:c00e6c923941 | 165 | U16 xSize; |
NirT | 0:c00e6c923941 | 166 | U16 ySize; |
NirT | 0:c00e6c923941 | 167 | /* Input buffer */ |
NirT | 0:c00e6c923941 | 168 | const U8 * pBuffer; |
NirT | 0:c00e6c923941 | 169 | unsigned NumBytesInBuffer; |
NirT | 0:c00e6c923941 | 170 | U8 StartOfFile; |
NirT | 0:c00e6c923941 | 171 | U8 aStuff[4]; /* Stuff back buffer */ |
NirT | 0:c00e6c923941 | 172 | U8 NumBytesStuffed; /* Number of stuffed bytes */ |
NirT | 0:c00e6c923941 | 173 | /* Bit buffer */ |
NirT | 0:c00e6c923941 | 174 | U32 BitBuffer; |
NirT | 0:c00e6c923941 | 175 | int NumBitsLeft; |
NirT | 0:c00e6c923941 | 176 | /* Huffman tables */ |
NirT | 0:c00e6c923941 | 177 | U8 aHuffNumTableAvail[MAX_HUFFTABLES]; |
NirT | 0:c00e6c923941 | 178 | U8 aaHuffNum[MAX_HUFFTABLES][17]; /* Pointer to number of Huffman codes per bit size */ |
NirT | 0:c00e6c923941 | 179 | U8 aaHuffVal[MAX_HUFFTABLES][256]; /* Pointer to Huffman codes */ |
NirT | 0:c00e6c923941 | 180 | HUFF_TABLE aHuffTable[MAX_HUFFTABLES]; |
NirT | 0:c00e6c923941 | 181 | HUFF_TABLE * apDC_Huff[MAX_BLOCKSPERMCU]; |
NirT | 0:c00e6c923941 | 182 | HUFF_TABLE * apAC_Huff[MAX_BLOCKSPERMCU]; |
NirT | 0:c00e6c923941 | 183 | /* Quantization tables */ |
NirT | 0:c00e6c923941 | 184 | U16 aaQuantTbl[MAX_QUANTTABLES][64]; |
NirT | 0:c00e6c923941 | 185 | U16 * apQuantTbl[MAX_QUANTTABLES]; |
NirT | 0:c00e6c923941 | 186 | /* Component information */ |
NirT | 0:c00e6c923941 | 187 | U8 NumCompsPerFrame; /* Number of components per frame */ |
NirT | 0:c00e6c923941 | 188 | U8 aCompHSamp[MAX_COMPONENTS]; /* Component's horizontal sampling factor */ |
NirT | 0:c00e6c923941 | 189 | U8 aCompVSamp[MAX_COMPONENTS]; /* Component's vertical sampling factor */ |
NirT | 0:c00e6c923941 | 190 | U8 aCompQuant[MAX_COMPONENTS]; /* Component's quantization table selector */ |
NirT | 0:c00e6c923941 | 191 | U8 aCompId [MAX_COMPONENTS]; /* Component's ID */ |
NirT | 0:c00e6c923941 | 192 | U8 NumCompsPerScan; /* Number of components per scan */ |
NirT | 0:c00e6c923941 | 193 | U8 aCompList[MAX_COMPSINSCAN]; /* Components in this scan */ |
NirT | 0:c00e6c923941 | 194 | U8 aCompDC_Tab[MAX_COMPONENTS]; /* Component's DC Huffman coding table selector */ |
NirT | 0:c00e6c923941 | 195 | U8 aCompAC_Tab[MAX_COMPONENTS]; /* Component's AC Huffman coding table selector */ |
NirT | 0:c00e6c923941 | 196 | unsigned * apComponent[MAX_BLOCKSPERMCU]; /* Points into the table aLastDC_Val[] */ |
NirT | 0:c00e6c923941 | 197 | unsigned aLastDC_Val[MAX_COMPONENTS]; /* Table of last DC values */ |
NirT | 0:c00e6c923941 | 198 | /* Data used for progressive scans */ |
NirT | 0:c00e6c923941 | 199 | U8 SpectralStart; /* Spectral selection start */ |
NirT | 0:c00e6c923941 | 200 | U8 SpectralEnd; /* Spectral selection end */ |
NirT | 0:c00e6c923941 | 201 | U8 SuccessiveLow; /* Successive approximation low */ |
NirT | 0:c00e6c923941 | 202 | U8 SuccessiveHigh; /* Successive approximation high */ |
NirT | 0:c00e6c923941 | 203 | COEFF_BUFFER aDC_Coeffs[MAX_COMPONENTS]; /* DC coefficient buffer for progressive scan */ |
NirT | 0:c00e6c923941 | 204 | COEFF_BUFFER aAC_Coeffs[MAX_COMPONENTS]; /* AC coefficient buffer for progressive scan */ |
NirT | 0:c00e6c923941 | 205 | int aBlockY_MCU[MAX_COMPONENTS]; /* */ |
NirT | 0:c00e6c923941 | 206 | GUI_HMEM hBmpLine; |
NirT | 0:c00e6c923941 | 207 | /* Common */ |
NirT | 0:c00e6c923941 | 208 | U8 TransformationRequired; |
NirT | 0:c00e6c923941 | 209 | U8 IsProgressive; /* Flag is set to 1 if JPEG is progressive */ |
NirT | 0:c00e6c923941 | 210 | U8 ScanType; /* Gray, Yh1v1, Yh1v2, Yh2v1, Yh2v2 */ |
NirT | 0:c00e6c923941 | 211 | int MaxMCUsPerRow; /* Maximum number of MCUs per row */ |
NirT | 0:c00e6c923941 | 212 | int MaxMCUsPerCol; /* Maximum number of MCUs per column */ |
NirT | 0:c00e6c923941 | 213 | int MaxBlocksPerMCU; /* Maximum number of blocks per MCU */ |
NirT | 0:c00e6c923941 | 214 | int MaxBlocksPerRow; /* Maximum number of blocks per row */ |
NirT | 0:c00e6c923941 | 215 | int MaxMCU_xSize; /* MCU's max. X size in pixels */ |
NirT | 0:c00e6c923941 | 216 | int MaxMCU_ySize; /* MCU's max. Y size in pixels */ |
NirT | 0:c00e6c923941 | 217 | int DestBytesPerPixel; /* 4 (RGB) or 1 (Y) */ |
NirT | 0:c00e6c923941 | 218 | int DestBytesPerScanline; /* Rounded up */ |
NirT | 0:c00e6c923941 | 219 | int RealDestBytesPerScanline; /* Actual bytes */ |
NirT | 0:c00e6c923941 | 220 | int EOB_Run; /* 'End Of Band' run */ |
NirT | 0:c00e6c923941 | 221 | int RestartInterval; |
NirT | 0:c00e6c923941 | 222 | int RestartsLeft; |
NirT | 0:c00e6c923941 | 223 | int NextRestartNum; |
NirT | 0:c00e6c923941 | 224 | int MCUsPerRow; |
NirT | 0:c00e6c923941 | 225 | int MCUsPerCol; |
NirT | 0:c00e6c923941 | 226 | int NumBlocksPerMCU; |
NirT | 0:c00e6c923941 | 227 | int aMCU_Org[MAX_BLOCKSPERMCU]; |
NirT | 0:c00e6c923941 | 228 | /* Block buffer */ |
NirT | 0:c00e6c923941 | 229 | GUI_HMEM hBlocks; |
NirT | 0:c00e6c923941 | 230 | GUI_HMEM hBlockMaxZagSet; |
NirT | 0:c00e6c923941 | 231 | /* Sample buffer */ |
NirT | 0:c00e6c923941 | 232 | GUI_HMEM hSampleBuf; |
NirT | 0:c00e6c923941 | 233 | U8 * pSampleBuf; |
NirT | 0:c00e6c923941 | 234 | /* Status */ |
NirT | 0:c00e6c923941 | 235 | int TotalLinesLeft; /* Total number of lines left in image */ |
NirT | 0:c00e6c923941 | 236 | int MCULinesLeft; /* Total number of lines left in current MCU */ |
NirT | 0:c00e6c923941 | 237 | /* Output buffer(s) */ |
NirT | 0:c00e6c923941 | 238 | GUI_HMEM hScanLine0; /* Buffer 0 */ |
NirT | 0:c00e6c923941 | 239 | GUI_HMEM hScanLine1; /* Buffer 1, only used for V2 sampling factors */ |
NirT | 0:c00e6c923941 | 240 | U8 BufferIndex; |
NirT | 0:c00e6c923941 | 241 | /* Arrays used for converting YCbCr to RGB */ |
NirT | 0:c00e6c923941 | 242 | int aCRR[256]; |
NirT | 0:c00e6c923941 | 243 | int aCBB[256]; |
NirT | 0:c00e6c923941 | 244 | I32 aCRG[256]; |
NirT | 0:c00e6c923941 | 245 | I32 aCBG[256]; |
NirT | 0:c00e6c923941 | 246 | /* Banding */ |
NirT | 0:c00e6c923941 | 247 | U8 BandingRequired; /* Flag if banding is required */ |
NirT | 0:c00e6c923941 | 248 | unsigned NumBands; /* Number of required bands for drawing the complete frame */ |
NirT | 0:c00e6c923941 | 249 | int NumBlocksPerBand; /* Number of vertical blocks per band */ |
NirT | 0:c00e6c923941 | 250 | int FirstBlockOfBand; |
NirT | 0:c00e6c923941 | 251 | int aFirstBlockOfBand[MAX_COMPONENTS]; |
NirT | 0:c00e6c923941 | 252 | int bpp; |
NirT | 0:c00e6c923941 | 253 | }; |
NirT | 0:c00e6c923941 | 254 | |
NirT | 0:c00e6c923941 | 255 | /********************************************************************* |
NirT | 0:c00e6c923941 | 256 | * |
NirT | 0:c00e6c923941 | 257 | * Private interface |
NirT | 0:c00e6c923941 | 258 | * |
NirT | 0:c00e6c923941 | 259 | ********************************************************************** |
NirT | 0:c00e6c923941 | 260 | */ |
NirT | 0:c00e6c923941 | 261 | int GUI_JPEG__AllocBandingCoeffBuffer (GUI_HMEM hContext); |
NirT | 0:c00e6c923941 | 262 | int GUI_JPEG__DecodeLine (GUI_JPEG_DCONTEXT * pContext); |
NirT | 0:c00e6c923941 | 263 | int GUI_JPEG__DecodeProgressiveBanding(GUI_JPEG_DCONTEXT * pContext); |
NirT | 0:c00e6c923941 | 264 | void GUI_JPEG__Free (GUI_JPEG_DCONTEXT * pContext); |
NirT | 0:c00e6c923941 | 265 | GUI_COLOR GUI_JPEG__GetColorGray (const U8 ** ppData, unsigned SkipCnt); |
NirT | 0:c00e6c923941 | 266 | GUI_COLOR GUI_JPEG__GetColorRGB (const U8 ** ppData, unsigned SkipCnt); |
NirT | 0:c00e6c923941 | 267 | int GUI_JPEG__GetData (void * p, const U8 ** ppData, unsigned NumBytesReq, U32 Off); |
NirT | 0:c00e6c923941 | 268 | int GUI_JPEG__InitDraw (GUI_HMEM hContext); |
NirT | 0:c00e6c923941 | 269 | int GUI_JPEG__ReadUntilSOF (GUI_HMEM hContext); |
NirT | 0:c00e6c923941 | 270 | void GUI_JPEG__SetNextBand (GUI_JPEG_DCONTEXT * pContext); |
NirT | 0:c00e6c923941 | 271 | int GUI_JPEG__SkipLine (GUI_JPEG_DCONTEXT * pContext); |
NirT | 0:c00e6c923941 | 272 | int GUI_JPEG__GetInfoEx (GUI_HMEM hContext, GUI_JPEG_INFO * pInfo); |
NirT | 0:c00e6c923941 | 273 | |
NirT | 0:c00e6c923941 | 274 | #endif |