Correct parameter UINTN to UINT32
[mirror_edk2.git] / MdePkg / Include / Library / CustomDecompressLib.h
1 /** @file
2 Custom Decompress Functions
3
4 Copyright (c) 2006 - 2007, Intel Corporation
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
16 #ifndef __CUSTOM_DECPOMPRESS_LIB_H__
17 #define __CUSTOM_DECPOMPRESS_LIB_H__
18
19 /**
20 Decompress GetInfo fucntion.
21 @param[in] DecompressGuid The guid matches this decompress method.
22 @param[in] Source The source buffer containing the compressed data.
23 @param[in] SourceSize The size of source buffer
24 @param[out] DestinationSize The size of destination buffer.
25 @param[out] ScratchSize The size of scratch buffer.
26
27 @retval RETURN_SUCCESS The size of destination buffer and the size of scratch buffer are successull retrieved.
28 @retval RETURN_INVALID_PARAMETER The source data is corrupted
29
30 **/
31 RETURN_STATUS
32 EFIAPI
33 CustomDecompressGetInfo (
34 IN CONST GUID *DecompressGuid,
35 IN CONST VOID *Source,
36 IN UINT32 SourceSize,
37 OUT UINT32 *DestinationSize,
38 OUT UINT32 *ScratchSize
39 );
40
41 /**
42 Decompress fucntion.
43
44 @param[in] DecompressGuid The guid matches this decompress method.
45 @param[in] Source The source buffer containing the compressed data.
46 @param[in] Destination The destination buffer to store the decompressed data
47 @param[out] Scratch The buffer used internally by the decompress routine. This buffer is needed to store intermediate data.
48
49 @retval RETURN_SUCCESS Decompression is successfull
50 @retval RETURN_INVALID_PARAMETER The source data is corrupted
51
52 **/
53 RETURN_STATUS
54 EFIAPI
55 CustomDecompress (
56 IN CONST GUID *DecompressGuid,
57 IN CONST VOID *Source,
58 IN OUT VOID *Destination,
59 IN OUT VOID *Scratch
60 );
61
62 /**
63 Get decompress method guid list.
64
65 @param[in, out] AlgorithmGuidTable The decompress method guid list.
66 @param[in, out] NumberOfAlgorithms The number of decompress methods.
67
68 @retval RETURN_SUCCESS Get all algorithmes list successfully..
69 **/
70 RETURN_STATUS
71 EFIAPI
72 CustomDecompressGetAlgorithms (
73 IN OUT GUID **AlgorithmGuidTable,
74 IN OUT UINT32 *NumberOfAlgorithms
75 );
76
77 #endif