структура RTL_SPLAY_LINKS (ntddk.h)
Структура RTL_SPLAY_LINKS является непрозрачной структурой и используется системой для представления узла дерева канала воспроизведения.
Синтаксис
typedef struct _RTL_SPLAY_LINKS {
struct _RTL_SPLAY_LINKS *Parent;
struct _RTL_SPLAY_LINKS *LeftChild;
struct _RTL_SPLAY_LINKS *RightChild;
} RTL_SPLAY_LINKS;
Члены
Parent
Непрозрачный указатель на родительский узел для этого узла. Если существует только один узел в дереве ссылок splay, значение этого элемента равно NULL.
LeftChild
Непрозрачный указатель на левый дочерний узел для этого узла. Если левый дочерний узел не существует, значение этого элемента NULL.
RightChild
Непрозрачный указатель на правый дочерний узел для этого узла. Если правый дочерний узел отсутствует, значение этого элемента NULL.
Замечания
Как правило, каждый узел дерева ссылок splay состоит из определяемой пользователем структуры. Каждый такой определяемый пользователем узел должен содержать инициализированную RTL_SPLAY_LINKS структуру. Чтобы инициализировать структуру RTL_SPLAY_LINKS, вызовите макрос RtlInitializeSplayLink s. (Передайте адрес элемента RTL_SPLAY_LINKS, содержащегося в определяемой пользователем структуре.)
Для дерева ссылок splay с одним или несколькими узлами новый узел обычно инициализирован следующим образом:
- Используйте RtlLeftChild и /или RtlRightChild, чтобы найти точку вставки для нового узла. То есть получите правильный адрес родительского узла для нового узла. (Новый узел будет присоединен слева от родительского узла или справа.)
- Используйте RtlInitializeSplayLinks, чтобы инициализировать новый узел с адресом родительского узла, найденного на предыдущем шаге.
- Вставьте новый узел в дерево воспроизведения с помощью RtlInsertAsLeftChild или RtlInsertAsRightChild.
- Вызовите RtlSplay с адресом нового узла. (Новый узел становится корнем дерева воспроизведения.)
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно во всех поддерживаемых версиях Windows. |
заголовка | ntddk.h (include Fltkernel.h, Ntifs.h, Ntddk.h) |