summaryrefslogtreecommitdiff
path: root/EdkCompatibilityPkg/Foundation/Library/Dxe/Include/LinkedList.h
diff options
context:
space:
mode:
Diffstat (limited to 'EdkCompatibilityPkg/Foundation/Library/Dxe/Include/LinkedList.h')
-rw-r--r--EdkCompatibilityPkg/Foundation/Library/Dxe/Include/LinkedList.h312
1 files changed, 0 insertions, 312 deletions
diff --git a/EdkCompatibilityPkg/Foundation/Library/Dxe/Include/LinkedList.h b/EdkCompatibilityPkg/Foundation/Library/Dxe/Include/LinkedList.h
deleted file mode 100644
index debaf30e79..0000000000
--- a/EdkCompatibilityPkg/Foundation/Library/Dxe/Include/LinkedList.h
+++ /dev/null
@@ -1,312 +0,0 @@
-/*++
-
-Copyright (c) 2004, Intel Corporation. All rights reserved.<BR>
-This program and the accompanying materials
-are licensed and made available under the terms and conditions of the BSD License
-which accompanies this distribution. The full text of the license may be found at
-http://opensource.org/licenses/bsd-license.php
-
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
-Module Name:
-
- LinkedList.h
-
-Abstract:
-
- This implementation of a linked list provides data structures for the
- list itself and for list nodes. It provides operations for initializing
- the list, modifying the list, and walking the list.
-
---*/
-
-//
-// Prevent multiple includes in the same source file
-//
-#ifndef _LINKED_LIST_H_
-#define _LINKED_LIST_H_
-
-#ifndef _SHELL_LINKED_LIST_H_
-
-typedef struct _EFI_LIST_ENTRY {
- struct _EFI_LIST_ENTRY *ForwardLink;
- struct _EFI_LIST_ENTRY *BackLink;
-} EFI_LIST_ENTRY;
-
-typedef EFI_LIST_ENTRY EFI_LIST;
-typedef EFI_LIST_ENTRY EFI_LIST_NODE;
-
-#define INITIALIZE_LIST_HEAD_VARIABLE(ListHead) {&ListHead, &ListHead}
-
-//
-// EFI_FIELD_OFFSET - returns the byte offset to a field within a structure
-//
-
-#define EFI_FIELD_OFFSET(TYPE,Field) ((UINTN)(&(((TYPE *) 0)->Field)))
-
-//
-// A lock structure
-//
-
-typedef struct {
- EFI_TPL Tpl;
- EFI_TPL OwnerTpl;
- UINTN Lock;
-} FLOCK;
-
-VOID
-InitializeListHead (
- EFI_LIST_ENTRY *List
- )
-/*++
-
-Routine Description:
-
- Initialize the head of the List. The caller must allocate the memory
- for the EFI_LIST. This function must be called before the other linked
- list macros can be used.
-
-Arguments:
-
- List - Pointer to list head to initialize
-
-Returns:
-
- None.
-
---*/
-;
-
-BOOLEAN
-IsListEmpty (
- EFI_LIST_ENTRY *List
- )
-/*++
-
-Routine Description:
-
- Return TRUE is the list contains zero nodes. Otherzise return FALSE.
- The list must have been initialized with InitializeListHead () before using
- this function.
-
-Arguments:
-
- List - Pointer to list head to test
-
-
-Returns:
-
- Return TRUE is the list contains zero nodes. Otherzise return FALSE.
-
---*/
-;
-
-VOID
-RemoveEntryList (
- EFI_LIST_ENTRY *Entry
- )
-/*++
-
-Routine Description:
-
- Remove Node from the doubly linked list. It is the caller's responsibility
- to free any memory used by the entry if needed. The list must have been
- initialized with InitializeListHead () before using this function.
-
-Arguments:
-
- Entry - Element to remove from the list.
-
-Returns:
-
- None
-
---*/
-;
-
-VOID
-InsertTailList (
- EFI_LIST_ENTRY *ListHead,
- EFI_LIST_ENTRY *Entry
- )
-/*++
-
-Routine Description:
-
- Insert a Node into the end of a doubly linked list. The list must have
- been initialized with InitializeListHead () before using this function.
-
-Arguments:
-
- ListHead - Head of doubly linked list
-
- Entry - Element to insert at the end of the list.
-
-Returns:
-
- None
-
---*/
-;
-
-VOID
-InsertHeadList (
- EFI_LIST_ENTRY *ListHead,
- EFI_LIST_ENTRY *Entry
- )
-/*++
-
-Routine Description:
-
- Insert a Node into the start of a doubly linked list. The list must have
- been initialized with InitializeListHead () before using this function.
-
-Arguments:
-
- ListHead - Head of doubly linked list
-
- Entry - Element to insert to beginning of list
-
-Returns:
-
- None
-
---*/
-;
-
-VOID
-SwapListEntries (
- EFI_LIST_ENTRY *Entry1,
- EFI_LIST_ENTRY *Entry2
- )
-/*++
-
-Routine Description:
-
- Swap the location of the two elements of a doubly linked list. Node2
- is placed in front of Node1. The list must have been initialized with
- InitializeListHead () before using this function.
-
-Arguments:
-
- Entry1 - Element in the doubly linked list in front of Node2.
-
- Entry2 - Element in the doubly linked list behind Node1.
-
-Returns:
-
- None
-
---*/
-;
-
-EFI_LIST_ENTRY *
-GetFirstNode (
- EFI_LIST_ENTRY *List
- )
-/*++
-
-Routine Description:
-
- Return the first node pointed to by the list head. The list must
- have been initialized with InitializeListHead () before using this
- function and must contain data.
-
-Arguments:
-
- List - The head of the doubly linked list.
-
-Returns:
-
- Pointer to the first node, if the list contains nodes. The list will
- return a null value--that is, the value of List--when the list is empty.
- See the description of IsNull for more information.
-
-
---*/
-;
-
-EFI_LIST_ENTRY *
-GetNextNode (
- EFI_LIST_ENTRY *List,
- EFI_LIST_ENTRY *Node
- )
-/*++
-
-Routine Description:
-
- Returns the node following Node in the list. The list must
- have been initialized with InitializeListHead () before using this
- function and must contain data.
-
-Arguments:
-
- List - The head of the list. MUST NOT be the literal value NULL.
- Node - The node in the list. This value MUST NOT be the literal value NULL.
- See the description of IsNull for more information.
-
-Returns:
-
- Pointer to the next node, if one exists. Otherwise, returns a null value,
- which is actually a pointer to List.
- See the description of IsNull for more information.
-
---*/
-;
-
-BOOLEAN
-IsNull (
- EFI_LIST_ENTRY *List,
- EFI_LIST_ENTRY *Node
- )
-/*++
-
-Routine Description:
-
- Determines whether the given node is null. Note that Node is null
- when its value is equal to the value of List. It is an error for
- Node to be the literal value NULL [(VOID*)0x0].
-
-Arguments:
-
- List - The head of the list. MUST NOT be the literal value NULL.
- Node - The node to test. MUST NOT be the literal value NULL. See
- the description above.
-
-Returns:
-
- Returns true if the node is null.
-
---*/
-;
-
-BOOLEAN
-IsNodeAtEnd (
- EFI_LIST_ENTRY *List,
- EFI_LIST_ENTRY *Node
- )
-/*++
-
-Routine Description:
-
- Determines whether the given node is at the end of the list. Used
- to walk the list. The list must have been initialized with
- InitializeListHead () before using this function and must contain
- data.
-
-Arguments:
-
- List - The head of the list. MUST NOT be the literal value NULL.
- Node - The node to test. MUST NOT be the literal value NULL.
- See the description of IsNull for more information.
-
-Returns:
-
- Returns true if the list is the tail.
-
---*/
-;
-
-#endif
-#endif