ReactOS  0.4.15-dev-1397-g19779b3
rtlavl.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define MI_ASSERT(x)
 
#define RtlLeftChildAvl(x)   (PRTL_BALANCED_LINKS)(RtlLeftChild(x))
 
#define RtlRightChildAvl(x)   (PRTL_BALANCED_LINKS)(RtlRightChild(x))
 
#define RtlParentAvl(x)   (PRTL_BALANCED_LINKS)(RtlParent(x))
 
#define RtlRealPredecessorAvl(x)   (PRTL_BALANCED_LINKS)(RtlRealPredecessor((PRTL_SPLAY_LINKS)(x)))
 
#define RtlRealSuccessorAvl(x)   (PRTL_BALANCED_LINKS)(RtlRealSuccessor((PRTL_SPLAY_LINKS)(x)))
 
#define RtlInsertAsRightChildAvl   RtlInsertAsRightChild
 
#define RtlInsertAsLeftChildAvl   RtlInsertAsLeftChild
 
#define RtlIsLeftChildAvl   RtlIsLeftChild
 

Functions

FORCEINLINE VOID RtlpCopyAvlNodeData (IN PRTL_BALANCED_LINKS Node1, IN PRTL_BALANCED_LINKS Node2)
 
FORCEINLINE RTL_GENERIC_COMPARE_RESULTS RtlpAvlCompareRoutine (IN PRTL_AVL_TABLE Table, IN PVOID Buffer, IN PVOID UserData)
 
FORCEINLINE VOID RtlSetParent (IN PRTL_BALANCED_LINKS Node, IN PRTL_BALANCED_LINKS Parent)
 
FORCEINLINE VOID RtlSetBalance (IN PRTL_BALANCED_LINKS Node, IN CHAR Balance)
 
FORCEINLINE CHAR RtlBalance (IN PRTL_BALANCED_LINKS Node)
 

Macro Definition Documentation

◆ MI_ASSERT

#define MI_ASSERT (   x)

Definition at line 17 of file rtlavl.h.

◆ RtlInsertAsLeftChildAvl

#define RtlInsertAsLeftChildAvl   RtlInsertAsLeftChild

Definition at line 24 of file rtlavl.h.

◆ RtlInsertAsRightChildAvl

#define RtlInsertAsRightChildAvl   RtlInsertAsRightChild

Definition at line 23 of file rtlavl.h.

◆ RtlIsLeftChildAvl

#define RtlIsLeftChildAvl   RtlIsLeftChild

Definition at line 25 of file rtlavl.h.

◆ RtlLeftChildAvl

#define RtlLeftChildAvl (   x)    (PRTL_BALANCED_LINKS)(RtlLeftChild(x))

Definition at line 18 of file rtlavl.h.

◆ RtlParentAvl

#define RtlParentAvl (   x)    (PRTL_BALANCED_LINKS)(RtlParent(x))

Definition at line 20 of file rtlavl.h.

◆ RtlRealPredecessorAvl

#define RtlRealPredecessorAvl (   x)    (PRTL_BALANCED_LINKS)(RtlRealPredecessor((PRTL_SPLAY_LINKS)(x)))

Definition at line 21 of file rtlavl.h.

◆ RtlRealSuccessorAvl

#define RtlRealSuccessorAvl (   x)    (PRTL_BALANCED_LINKS)(RtlRealSuccessor((PRTL_SPLAY_LINKS)(x)))

Definition at line 22 of file rtlavl.h.

◆ RtlRightChildAvl

#define RtlRightChildAvl (   x)    (PRTL_BALANCED_LINKS)(RtlRightChild(x))

Definition at line 19 of file rtlavl.h.

Function Documentation

◆ RtlBalance()

FORCEINLINE CHAR RtlBalance ( IN PRTL_BALANCED_LINKS  Node)

Definition at line 65 of file rtlavl.h.

66 {
67  return Node->Balance;
68 }
Definition: dlist.c:348

Referenced by RtlpDeleteAvlTreeNode(), RtlpInsertAvlTreeNode(), and RtlpRebalanceAvlTreeNode().

◆ RtlpAvlCompareRoutine()

FORCEINLINE RTL_GENERIC_COMPARE_RESULTS RtlpAvlCompareRoutine ( IN PRTL_AVL_TABLE  Table,
IN PVOID  Buffer,
IN PVOID  UserData 
)

Definition at line 37 of file rtlavl.h.

40 {
41  /* Do the compare */
42  return Table->CompareRoutine(Table,
43  Buffer,
44  UserData);
45 }
ASMGENDATA Table[]
Definition: genincdata.c:61
Definition: bufpool.h:45

Referenced by RtlLookupFirstMatchingElementGenericTableAvl(), and RtlpFindAvlTableNodeOrParent().

◆ RtlpCopyAvlNodeData()

FORCEINLINE VOID RtlpCopyAvlNodeData ( IN PRTL_BALANCED_LINKS  Node1,
IN PRTL_BALANCED_LINKS  Node2 
)

Definition at line 29 of file rtlavl.h.

31 {
32  *Node1 = *Node2;
33 }

Referenced by RtlpDeleteAvlTreeNode().

◆ RtlSetBalance()

FORCEINLINE VOID RtlSetBalance ( IN PRTL_BALANCED_LINKS  Node,
IN CHAR  Balance 
)

Definition at line 57 of file rtlavl.h.

59 {
60  Node->Balance = Balance;
61 }
static const UCHAR Balance[]
Definition: usbehci.c:97
Definition: dlist.c:348

Referenced by RtlpDeleteAvlTreeNode(), RtlpInsertAvlTreeNode(), and RtlpRebalanceAvlTreeNode().

◆ RtlSetParent()

FORCEINLINE VOID RtlSetParent ( IN PRTL_BALANCED_LINKS  Node,
IN PRTL_BALANCED_LINKS  Parent 
)

Definition at line 49 of file rtlavl.h.

51 {
52  Node->Parent = Parent;
53 }
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn BOOLEAN Physical UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 ACPI_WALK_CALLBACK ACPI_WALK_CALLBACK void void **ReturnValue UINT32 ACPI_BUFFER *RetPathPtr ACPI_OBJECT_HANDLER void *Data ACPI_OBJECT_HANDLER void **Data ACPI_STRING ACPI_OBJECT_LIST ACPI_BUFFER *ReturnObjectBuffer ACPI_DEVICE_INFO **ReturnBuffer ACPI_HANDLE Parent
Definition: acpixf.h:728
Definition: dlist.c:348

Referenced by RtlpDeleteAvlTreeNode(), and RtlpPromoteAvlTreeNode().