-/*++\r
-\r
-Copyright (c) 2007, Intel Corporation \r
-All rights reserved. This program and the accompanying materials \r
-are licensed and made available under the terms and conditions of the BSD License \r
-which accompanies this distribution. The full text of the license may be found at \r
-http://opensource.org/licenses/bsd-license.php \r
- \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
-\r
-Module Name:\r
+/** @file\r
+ Custom Decompress Functions\r
\r
- CustomDecompressLib.h\r
+ Copyright (c) 2006 - 2007, Intel Corporation\r
+ All rights reserved. This program and the accompanying materials \r
+ are licensed and made available under the terms and conditions of the BSD License \r
+ which accompanies this distribution. The full text of the license may be found at \r
+ http://opensource.org/licenses/bsd-license.php \r
\r
-Abstract:\r
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
\r
- Custom Decompress Functions\r
+**/\r
\r
---*/\r
\r
#ifndef __CUSTOM_DECPOMPRESS_LIB_H__\r
#define __CUSTOM_DECPOMPRESS_LIB_H__\r
\r
+/**
+ Decompress GetInfo fucntion.\r
+\r
+ @param[in] DecompressGuid The guid matches this decompress method.
+ @param[in] Source The source buffer containing the compressed data.
+ @param[in] SourceSize The size of source buffer
+ @param[out] DestinationSize The size of destination buffer.
+ @param[out] ScratchSize The size of scratch buffer.
+
+ @retval RETURN_SUCCESS The size of destination buffer and the size of scratch buffer are successull retrieved.\r
+ @retval RETURN_INVALID_PARAMETER The source data is corrupted
+
+**/\r
RETURN_STATUS\r
EFIAPI\r
CustomDecompressGetInfo (\r
+ IN CONST GUID *DecompressGuid,\r
IN CONST VOID *Source,\r
IN UINT32 SourceSize,\r
OUT UINT32 *DestinationSize,\r
OUT UINT32 *ScratchSize\r
);\r
\r
+/**
+ Decompress fucntion.\r
+\r
+ @param[in] DecompressGuid The guid matches this decompress method.
+ @param[in] Source The source buffer containing the compressed data.
+ @param[in] Destination The destination buffer to store the decompressed data
+ @param[out] Scratch The buffer used internally by the decompress routine. This buffer is needed to store intermediate data.\r
+
+ @retval RETURN_SUCCESS Decompression is successfull\r
+ @retval RETURN_INVALID_PARAMETER The source data is corrupted
+
+**/\r
RETURN_STATUS\r
EFIAPI\r
CustomDecompress (\r
- IN CONST VOID *Source,\r
- IN OUT VOID *Destination,\r
- IN OUT VOID *Scratch\r
+ IN CONST GUID *DecompressGuid,\r
+ IN CONST VOID *Source,\r
+ IN OUT VOID *Destination,\r
+ IN OUT VOID *Scratch\r
+ );\r
+\r
+/**
+ Get decompress method guid list.\r
+\r
+ @param[in, out] AlgorithmGuidTable The decompress method guid list.
+ @param[in, out] NumberOfAlgorithms The number of decompress methods.
+
+ @retval RETURN_SUCCESS Get all algorithmes list successfully..
+**/\r
+RETURN_STATUS\r
+EFIAPI\r
+CustomDecompressGetAlgorithms (\r
+ IN OUT GUID **AlgorithmGuidTable,\r
+ IN OUT UINTN *NumberOfAlgorithms\r
);\r
\r
#endif\r