RTL_AVL_TABLE 結構 (ntddk.h)
RTL_AVL_TABLE 結構包含 Adelson-Velsky/Landis (AVL) 樹狀結構的文件系統特定數據。 AVL 樹狀結構可確保比泛型數據表的 splay 樹狀結構實作更平衡、較淺的樹狀結構實作 (RTL_GENERIC_TABLE) 。
RTL_AVL_TABLE不透明,因此無法直接操作。 驅動程式必須使用一節中所述的支援例程來操作RTL_AVL_TABLE值。
語法
typedef struct _RTL_AVL_TABLE {
RTL_BALANCED_LINKS BalancedRoot;
PVOID OrderedPointer;
ULONG WhichOrderedElement;
ULONG NumberGenericTableElements;
ULONG DepthOfTree;
PRTL_BALANCED_LINKS RestartKey;
ULONG DeleteCount;
PRTL_AVL_COMPARE_ROUTINE CompareRoutine;
PRTL_AVL_ALLOCATE_ROUTINE AllocateRoutine;
PRTL_AVL_FREE_ROUTINE FreeRoutine;
PVOID TableContext;
} RTL_AVL_TABLE;
成員
BalancedRoot
保留供系統使用。
OrderedPointer
保留供系統使用。
WhichOrderedElement
保留供系統使用。
NumberGenericTableElements
保留供系統使用。
DepthOfTree
保留供系統使用。
RestartKey
保留供系統使用。
DeleteCount
保留供系統使用。
CompareRoutine
保留供系統使用。
AllocateRoutine
保留供系統使用。
FreeRoutine
保留供系統使用。
TableContext
保留供系統使用。
備註
若要初始化 AVL 資料表套件,您可以配置大小至少為大小 (RTL_AVL_TABLE ) 位元組的緩衝區。 然後,您可以使用這個緩衝區,從 對 RtlInitializeGenericTableAvl 例程的呼叫接收初始化的 AVL 數據表結構。 使用下列例程操作資料表:
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 此結構可在 Windows XP 和更新版本上使用。 |
標頭 | ntddk.h (包含 Ntddk.h) |
另請參閱
RtlDeleteElementGenericTableAvl
RtlEnumerateGenericTableLikeADirectory
RtlEnumerateGenericTableWithoutSplayingAvl
RtlInsertElementGenericTableAvl
RtlInsertElementGenericTableFullAvl
RtlLookupElementGenericTableAvl
RtlLookupElementGenericTableFullAvl