TianoCore EDK2 master
Loading...
Searching...
No Matches

Typedefs

typedef EFI_STATUS(EFIAPI * EDKII_AML_TREE_ITERATOR_GET_NODE) (IN AML_TREE_ITERATOR *Iterator, OUT AML_NODE_HANDLE *OutNode)
 
typedef EFI_STATUS(EFIAPI * EDKII_AML_TREE_ITERATOR_GET_NEXT) (IN AML_TREE_ITERATOR *Iterator, OUT AML_NODE_HANDLE *NextNode)
 
typedef EFI_STATUS(EFIAPI * EDKII_AML_TREE_ITERATOR_GET_PREVIOUS) (IN AML_TREE_ITERATOR *Iterator, OUT AML_NODE_HANDLE *PrevNode)
 

Functions

EFI_STATUS EFIAPI AmlInitializeIterator (IN AML_NODE_HANDLE Node, IN EAML_ITERATOR_MODE IteratorMode, OUT AML_TREE_ITERATOR **IteratorPtr)
 
EFI_STATUS EFIAPI AmlDeleteIterator (IN AML_TREE_ITERATOR *Iterator)
 

Detailed Description

Iterator APIs defines the action that can be done on an iterator:

Typedef Documentation

◆ EDKII_AML_TREE_ITERATOR_GET_NEXT

typedef EFI_STATUS(EFIAPI * EDKII_AML_TREE_ITERATOR_GET_NEXT) (IN AML_TREE_ITERATOR *Iterator, OUT AML_NODE_HANDLE *NextNode)

Function pointer to move the current node of the iterator to the next node, according to the iteration mode selected.

If NextNode is not NULL, return the next node.

Parameters
[in]IteratorPointer to an iterator.
[out]NextNodeIf not NULL, updated to the next node.
Return values
EFI_SUCCESSThe function completed successfully.
EFI_INVALID_PARAMETERInvalid parameter.

Definition at line 137 of file AmlTreeIterator.h.

◆ EDKII_AML_TREE_ITERATOR_GET_NODE

typedef EFI_STATUS(EFIAPI * EDKII_AML_TREE_ITERATOR_GET_NODE) (IN AML_TREE_ITERATOR *Iterator, OUT AML_NODE_HANDLE *OutNode)

Function pointer to a get the current node of the iterator.

Parameters
[in]IteratorPointer to an iterator.
[out]OutNodePointer holding the current node.
Return values
EFI_SUCCESSThe function completed successfully.
EFI_INVALID_PARAMETERInvalid parameter.

Definition at line 117 of file AmlTreeIterator.h.

◆ EDKII_AML_TREE_ITERATOR_GET_PREVIOUS

typedef EFI_STATUS(EFIAPI * EDKII_AML_TREE_ITERATOR_GET_PREVIOUS) (IN AML_TREE_ITERATOR *Iterator, OUT AML_NODE_HANDLE *PrevNode)

Function pointer to move the current node of the iterator to the previous node, according to the iteration mode selected.

If PrevNode is not NULL, return the previous node.

Parameters
[in]IteratorPointer to an iterator.
[out]PrevNodeIf not NULL, updated to the previous node.
Return values
EFI_SUCCESSThe function completed successfully.
EFI_INVALID_PARAMETERInvalid parameter.

Definition at line 157 of file AmlTreeIterator.h.

Function Documentation

◆ AmlDeleteIterator()

EFI_STATUS EFIAPI AmlDeleteIterator ( IN AML_TREE_ITERATOR Iterator)

Delete an iterator.

Note: The caller must have first initialized the iterator with the AmlInitializeIterator () function.

Parameters
[in]IteratorPointer to an iterator.
Return values
EFI_SUCCESSThe function completed successfully.
EFI_INVALID_PARAMETERInvalid parameter.

Definition at line 353 of file AmlTreeIterator.c.

◆ AmlInitializeIterator()

EFI_STATUS EFIAPI AmlInitializeIterator ( IN AML_NODE_HANDLE  Node,
IN EAML_ITERATOR_MODE  IteratorMode,
OUT AML_TREE_ITERATOR **  IteratorPtr 
)

Initialize an iterator.

Note: The caller must call AmlDeleteIterator () to free the memory allocated for the iterator.

Parameters
[in]NodePointer to the node.
[in]IteratorModeSelected mode to traverse the tree.
[out]IteratorPtrPointer holding the created iterator.
Return values
EFI_SUCCESSThe function completed successfully.
EFI_INVALID_PARAMETERInvalid parameter.
EFI_OUT_OF_RESOURCESCould not allocate memory.