]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Library/BrotliCustomDecompressLib/BrotliDecompressLibInternal.h
MdeModulePkg: Update Brotli DecompressLib to the latest v1.0.6
[mirror_edk2.git] / MdeModulePkg / Library / BrotliCustomDecompressLib / BrotliDecompressLibInternal.h
CommitLineData
841b2590
SB
1/** @file\r
2 BROTLI UEFI header file\r
3\r
4 Allows BROTLI code to build under UEFI (edk2) build environment\r
5\r
792ace0a 6 Copyright (c) 2017 - 2018, Intel Corporation. All rights reserved.<BR>\r
841b2590
SB
7 This program and the accompanying materials\r
8 are licensed and made available under the terms and conditions of the BSD License\r
9 which accompanies this distribution. The full text of the license may be found at\r
10 http://opensource.org/licenses/bsd-license.php\r
11\r
12 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
13 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
14\r
15**/\r
16\r
17#ifndef __BROTLI_DECOMPRESS_INTERNAL_H__\r
18#define __BROTLI_DECOMPRESS_INTERNAL_H__\r
19\r
20#include <PiPei.h>\r
21#include <Library/BaseLib.h>\r
22#include <Library/BaseMemoryLib.h>\r
23#include <Library/DebugLib.h>\r
24#include <Library/ExtractGuidedSectionLib.h>\r
2730470f
LG
25#include <brotli/types.h>\r
26#include <brotli/decode.h>\r
841b2590
SB
27\r
28typedef struct\r
29{\r
30 VOID *Buff;\r
31 UINTN BuffSize;\r
32} BROTLI_BUFF;\r
33\r
34#define FILE_BUFFER_SIZE 65536\r
35#define BROTLI_INFO_SIZE 8\r
36#define BROTLI_DECODE_MAX 8\r
37#define BROTLI_SCRATCH_MAX 16\r
38\r
39#define memcpy CopyMem\r
40#define memmove CopyMem\r
41#define memset(dest,ch,count) SetMem(dest,(UINTN)(count),(UINT8)(ch))\r
42\r
43VOID *\r
792ace0a 44BrDummyMalloc (\r
841b2590
SB
45 IN size_t Size\r
46 );\r
47\r
48VOID\r
792ace0a 49BrDummyFree (\r
841b2590
SB
50 IN VOID * Ptr\r
51 );\r
52\r
53EFI_STATUS\r
54EFIAPI\r
55BrotliUefiDecompressGetInfo (\r
56 IN CONST VOID *Source,\r
57 IN UINT32 SourceSize,\r
58 OUT UINT32 *DestinationSize,\r
59 OUT UINT32 *ScratchSize\r
60 );\r
61\r
62EFI_STATUS\r
63EFIAPI\r
64BrotliUefiDecompress (\r
65 IN CONST VOID *Source,\r
66 IN UINTN SourceSize,\r
67 IN OUT VOID *Destination,\r
68 IN OUT VOID *Scratch\r
69 );\r
70\r
71#endif\r