]> git.proxmox.com Git - mirror_edk2.git/blob - IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaDecompress.h
Add LzmaCustomDecompressLib based on the LZMA SDK 4.65 which was
[mirror_edk2.git] / IntelFrameworkModulePkg / Library / LzmaCustomDecompressLib / LzmaDecompress.h
1 /** @file
2 LZMA Decompress Library header file
3
4 Copyright (c) 2006 - 2009, Intel Corporation<BR>
5 All rights reserved. This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13 **/
14
15 #ifndef __LZMADECOMPRESS_H__
16 #define __LZMADECOMPRESS_H__
17
18 /**
19 The internal implementation of *_DECOMPRESS_PROTOCOL.GetInfo().
20
21 @param Source The source buffer containing the compressed data.
22 @param SourceSize The size of source buffer
23 @param DestinationSize The size of destination buffer.
24 @param ScratchSize The size of scratch buffer.
25
26 @retval RETURN_SUCCESS - The size of destination buffer and the size of scratch buffer are successull retrieved.
27 @retval RETURN_INVALID_PARAMETER - The source data is corrupted
28 **/
29 RETURN_STATUS
30 EFIAPI
31 LzmaUefiDecompressGetInfo (
32 IN CONST VOID *Source,
33 IN UINT32 SourceSize,
34 OUT UINT32 *DestinationSize,
35 OUT UINT32 *ScratchSize
36 );
37
38 /**
39 The internal implementation of *_DECOMPRESS_PROTOCOL.Decompress().
40
41 @param Source - The source buffer containing the compressed data.
42 @param Destination - The destination buffer to store the decompressed data
43 @param Scratch - The buffer used internally by the decompress routine. This buffer is needed to store intermediate data.
44
45 @retval RETURN_SUCCESS - Decompression is successfull
46 @retval RETURN_INVALID_PARAMETER - The source data is corrupted
47 **/
48 RETURN_STATUS
49 EFIAPI
50 LzmaUefiDecompress (
51 IN CONST VOID *Source,
52 IN OUT VOID *Destination,
53 IN OUT VOID *Scratch
54 );
55
56 #endif // __LZMADECOMPRESS_H__
57