This sequence is further divided into Blocks and Huffman codings\r
are applied to each Block.\r
\r
- Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (c) 2007 - 2016, Intel Corporation. All rights reserved.<BR>\r
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
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
**/\r
-\r
+#include <Uefi.h>\r
#include <Library/MemoryAllocationLib.h>\r
#include <Library/BaseMemoryLib.h>\r
#include <Library/DebugLib.h>\r
-#include <ShellBase.h>\r
-#include <Uefi.h>\r
+#include <Library/ShellLib.h>\r
\r
//\r
// Macro Definitions\r
@param[in] Data The dword to put.\r
**/\r
VOID\r
-EFIAPI\r
PutDword(\r
IN UINT32 Data\r
);\r
\r
**/\r
VOID\r
-EFIAPI\r
MakeCrcTable (\r
VOID\r
)\r
@param[in] Data The dword to put.\r
**/\r
VOID\r
-EFIAPI\r
PutDword (\r
IN UINT32 Data\r
)\r
@retval EFI_OUT_OF_RESOURCES A memory allocation failed.\r
**/\r
EFI_STATUS\r
-EFIAPI\r
AllocateMemory (\r
VOID\r
)\r
\r
**/\r
VOID\r
-EFIAPI\r
FreeMemory (\r
VOID\r
)\r
Initialize String Info Log data structures.\r
**/\r
VOID\r
-EFIAPI\r
InitSlide (\r
VOID\r
)\r
\r
**/\r
NODE\r
-EFIAPI\r
Child (\r
IN NODE LoopVar6,\r
IN UINT8 LoopVar5\r
@param[in] LoopVar4 The child node.\r
**/\r
VOID\r
-EFIAPI\r
MakeChild (\r
IN NODE LoopVar6,\r
IN UINT8 LoopVar5,\r
@param[in] Old The node to split.\r
**/\r
VOID\r
-EFIAPI\r
Split (\r
IN NODE Old\r
)\r
\r
**/\r
VOID\r
-EFIAPI\r
InsertNode (\r
VOID\r
)\r
\r
**/\r
VOID\r
-EFIAPI\r
DeleteNode (\r
VOID\r
)\r
@return The number of bytes actually read.\r
**/\r
INT32\r
-EFIAPI\r
FreadCrc (\r
OUT UINT8 *LoopVar7,\r
IN INT32 LoopVar8\r
@retval FALSE The operation failed due to insufficient memory.\r
**/\r
BOOLEAN\r
-EFIAPI\r
GetNextMatch (\r
VOID\r
)\r
@param[in] LoopVar1 The index of the item to move.\r
**/\r
VOID\r
-EFIAPI\r
DownHeap (\r
IN INT32 i\r
)\r
@param[in] LoopVar1 The top node.\r
**/\r
VOID\r
-EFIAPI\r
CountLen (\r
IN INT32 LoopVar1\r
)\r
@param[in] Root The root of the tree.\r
**/\r
VOID\r
-EFIAPI\r
MakeLen (\r
IN INT32 Root\r
)\r
@param[out] Code The stores codes for each symbol.\r
**/\r
VOID\r
-EFIAPI\r
MakeCode (\r
IN INT32 LoopVar8,\r
IN UINT8 Len[ ],\r
@return The root of the Huffman tree.\r
**/\r
INT32\r
-EFIAPI\r
MakeTree (\r
IN INT32 NParm,\r
IN UINT16 FreqParm[ ],\r
@param[in] x The data.\r
**/\r
VOID\r
-EFIAPI\r
PutBits (\r
IN INT32 LoopVar8,\r
IN UINT32 x\r
@param[in] LoopVar5 The number to encode.\r
**/\r
VOID\r
-EFIAPI\r
EncodeC (\r
IN INT32 LoopVar5\r
)\r
@param[in] LoopVar7 The number to encode.\r
**/\r
VOID\r
-EFIAPI\r
EncodeP (\r
IN UINT32 LoopVar7\r
)\r
\r
**/\r
VOID\r
-EFIAPI\r
CountTFreq (\r
VOID\r
)\r
\r
**/\r
VOID\r
-EFIAPI\r
WritePTLen (\r
IN INT32 LoopVar8,\r
IN INT32 nbit,\r
Outputs the code length array for Char&Length Set.\r
**/\r
VOID\r
-EFIAPI\r
WriteCLen (\r
VOID\r
)\r
\r
**/\r
VOID\r
-EFIAPI\r
SendBlock (\r
VOID\r
)\r
\r
**/\r
VOID\r
-EFIAPI\r
HufEncodeStart (\r
VOID\r
)\r
@param[in] LoopVar7 The 'Position' field of a Pointer.\r
**/\r
VOID\r
-EFIAPI\r
CompressOutput (\r
IN UINT32 LoopVar5,\r
IN UINT32 LoopVar7\r
\r
**/\r
VOID\r
-EFIAPI\r
HufEncodeEnd (\r
VOID\r
)\r
@retval EFI_OUT_0F_RESOURCES Not enough memory for compression process.\r
**/\r
EFI_STATUS\r
-EFIAPI\r
Encode (\r
VOID\r
)\r
@retval EFI_BUFFER_TOO_SMALL The buffer was too small. DstSize is required.\r
**/\r
EFI_STATUS\r
-EFIAPI\r
Compress (\r
IN VOID *SrcBuffer,\r
IN UINT64 SrcSize,\r