structure RTL_AVL_TABLE (ntddk.h)

La structure RTL_AVL_TABLE contient des données spécifiques au système de fichiers pour une arborescence Adelson-Velsky/Landis (AVL). Une arborescence AVL garantit une implémentation d’arborescence plus équilibrée et plus superficielle qu’une implémentation d’arborescence de lecture d’une table générique (RTL_GENERIC_TABLE).

RTL_AVL_TABLE est opaque et ne peut donc pas être manipulé directement. Les pilotes doivent utiliser les routines de prise en charge décrites dans la section Remarques pour manipuler RTL_AVL_TABLE valeurs.

Syntaxe

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;

Membres

BalancedRoot

Réservé pour le système.

OrderedPointer

Réservé pour le système.

WhichOrderedElement

Réservé pour le système.

NumberGenericTableElements

Réservé pour le système.

DepthOfTree

Réservé pour le système.

RestartKey

Réservé pour le système.

DeleteCount

Réservé pour le système.

CompareRoutine

Réservé pour le système.

AllocateRoutine

Réservé pour le système.

FreeRoutine

Réservé pour le système.

TableContext

Réservé pour le système.

Remarques

Pour initialiser un package de table AVL, vous allouez une mémoire tampon d’une taille minimale d’octets (RTL_AVL_TABLE). Vous pouvez ensuite utiliser cette mémoire tampon pour recevoir la structure de table AVL initialisée à partir d’un appel à la routine RtlInitializeGenericTableAvl . Utilisez les routines suivantes pour manipuler la table :

Configuration requise

Condition requise Valeur
Client minimal pris en charge Cette structure est disponible sur Windows XP et versions ultérieures.
En-tête ntddk.h (inclure Ntddk.h)

Voir aussi

RTL_GENERIC_TABLE

RtlDeleteElementGenericTableAvl

RtlEnumerateGenericTableAvl

RtlEnumerateGenericTableLikeADirectory

RtlEnumerateGenericTableWithoutSplayingAvl

RtlGetElementGenericTableAvl

RtlInitializeGenericTableAvl

RtlInsertElementGenericTableAvl

RtlInsertElementGenericTableFullAvl

RtlIsGenericTableEmptyAvl

RtlLookupElementGenericTableAvl

RtlLookupElementGenericTableFullAvl

RtlLookupFirstMatchingElementGenericTableAvl

RtlNumberGenericTableElementsAvl