struttura RTL_AVL_TABLE (ntddk.h)
La struttura RTL_AVL_TABLE contiene dati specifici del file system per un albero Adelson-Velsky/Landis (AVL). Un albero AVL garantisce un'implementazione dell'albero più bilanciata e superficiale rispetto a un'implementazione dell'albero di riproduzione di una tabella generica (RTL_GENERIC_TABLE).
RTL_AVL_TABLE è opaco, quindi non può essere manipolato direttamente. I driver devono utilizzare le routine di supporto descritte nella sezione Osservazioni per modificare RTL_AVL_TABLE valori.
Sintassi
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;
Membri
BalancedRoot
Riservato per l'uso del sistema.
OrderedPointer
Riservato per l'uso del sistema.
WhichOrderedElement
Riservato per l'uso del sistema.
NumberGenericTableElements
Riservato per l'uso del sistema.
DepthOfTree
Riservato per l'uso del sistema.
RestartKey
Riservato per l'uso del sistema.
DeleteCount
Riservato per l'uso del sistema.
CompareRoutine
Riservato per l'uso del sistema.
AllocateRoutine
Riservato per l'uso del sistema.
FreeRoutine
Riservato per l'uso del sistema.
TableContext
Riservato per l'uso del sistema.
Osservazioni
Per inizializzare un pacchetto di tabella AVL, allocare un buffer con dimensioni di almeno sizeof(RTL_AVL_TABLE) byte. È quindi possibile usare questo buffer per ricevere la struttura di tabella AVL inizializzata da una chiamata alla routine RtlInitializeGenericTableAvl. Utilizzare le routine seguenti per modificare la tabella:
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Questa struttura è disponibile in Windows XP e versioni successive. |
intestazione | ntddk.h (include Ntddk.h) |
Vedere anche
RtlDeleteElementGenericTableAvl
RtlEnumerateGenericTableLikeADirectory
RtlEnumerateGenericTableWithoutSplayingAvl
RtlInsertElementGenericTableAvl
RtlInsertElementGenericTableFullAvl
RtlLookupElementGenericTableAvl
RtlLookupElementGenericTableFullAvl