]>
git.proxmox.com Git - mirror_edk2.git/blob - MdePkg/Library/DxeMemoryLib/MemLibInternals.h
db2784ef4f2360f6652a70767e212c701440b207
2 Declaration of internal functions for Base Memory Library.
4 Copyright (c) 2006, 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
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.
13 Module Name: MemLibInternals.h
15 The following BaseMemoryLib instances share the same version of this file:
26 #ifndef __MEM_LIB_INTERNALS__
27 #define __MEM_LIB_INTERNALS__
30 // The package level header files this module uses
34 // The protocols, PPI and GUID defintions for this module
37 // The Library classes this module consumes
39 #include <Library/BaseMemoryLib.h>
40 #include <Library/DebugLib.h>
41 #include <Library/UefiBootServicesTableLib.h>
42 #include <Library/BaseLib.h>
45 Copy Length bytes from Source to Destination.
47 @param Destination Target of copy
48 @param Source Place to copy from
49 @param Length Number of bytes to copy
57 OUT VOID
*DestinationBuffer
,
58 IN CONST VOID
*SourceBuffer
,
63 Set Buffer to Value for Size bytes.
65 @param Buffer Memory to set.
66 @param Size Number of bytes to set
67 @param Value Value of the set operation.
81 Fills a target buffer with a 16-bit value, and returns the target buffer.
83 @param Buffer Pointer to the target buffer to fill.
84 @param Length Number of bytes in Buffer to fill.
85 @param Value Value with which to fill Length bytes of Buffer.
99 Fills a target buffer with a 32-bit value, and returns the target buffer.
101 @param Buffer Pointer to the target buffer to fill.
102 @param Length Number of bytes in Buffer to fill.
103 @param Value Value with which to fill Length bytes of Buffer.
110 InternalMemSetMem32 (
117 Fills a target buffer with a 64-bit value, and returns the target buffer.
119 @param Buffer Pointer to the target buffer to fill.
120 @param Length Number of bytes in Buffer to fill.
121 @param Value Value with which to fill Length bytes of Buffer.
128 InternalMemSetMem64 (
135 Set Buffer to 0 for Size bytes.
137 @param Buffer Memory to set.
138 @param Size Number of bytes to set
151 Compares two memory buffers of a given length.
153 @param DestinationBuffer First memory buffer
154 @param SourceBuffer Second memory buffer
155 @param Length Length of DestinationBuffer and SourceBuffer memory
156 regions to compare. Must be non-zero.
158 @retval 0 if MemOne == MemTwo
163 InternalMemCompareMem (
164 IN CONST VOID
*DestinationBuffer
,
165 IN CONST VOID
*SourceBuffer
,
170 Scans a target buffer for an 8-bit value, and returns a pointer to the
171 matching 8-bit value in the target buffer.
173 @param Buffer Pointer to the target buffer to scan.
174 @param Length Number of bytes in Buffer to scan. Must be non-zero.
175 @param Value Value to search for in the target buffer.
177 @return Pointer to the first occurrence or NULL if not found.
182 InternalMemScanMem8 (
183 IN CONST VOID
*Buffer
,
189 Scans a target buffer for a 16-bit value, and returns a pointer to the
190 matching 16-bit value in the target buffer.
192 @param Buffer Pointer to the target buffer to scan.
193 @param Length Number of bytes in Buffer to scan. Must be non-zero.
194 @param Value Value to search for in the target buffer.
196 @return Pointer to the first occurrence or NULL if not found.
201 InternalMemScanMem16 (
202 IN CONST VOID
*Buffer
,
208 Scans a target buffer for a 32-bit value, and returns a pointer to the
209 matching 32-bit value in the target buffer.
211 @param Buffer Pointer to the target buffer to scan.
212 @param Length Number of bytes in Buffer to scan. Must be non-zero.
213 @param Value Value to search for in the target buffer.
215 @return Pointer to the first occurrence or NULL if not found.
220 InternalMemScanMem32 (
221 IN CONST VOID
*Buffer
,
227 Scans a target buffer for a 64-bit value, and returns a pointer to the
228 matching 64-bit value in the target buffer.
230 @param Buffer Pointer to the target buffer to scan.
231 @param Length Number of bytes in Buffer to scan. Must be non-zero.
232 @param Value Value to search for in the target buffer.
234 @return Pointer to the first occurrence or NULL if not found.
239 InternalMemScanMem64 (
240 IN CONST VOID
*Buffer
,