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
このノードの親ノードへの不透明なポインター。 表示リンク ツリー内に 1 つのノードのみが存在する場合、このメンバーの値は NULL になります。
LeftChild
このノードの左側の子ノードへの不透明なポインター。 左子ノードが存在しない場合、このメンバーの値は NULL です。
RightChild
このノードの右の子ノードへの不透明なポインター。 右子ノードが存在しない場合、このメンバーの値は NULL です。
注釈
通常、スプレイ リンク ツリーの各ノードは、ユーザー定義構造で構成されます。 このような各ユーザー定義ノードには、初期化されたRTL_SPLAY_LINKS構造体が含まれている必要があります。 RTL_SPLAY_LINKS構造体を初期化するには、 RtlInitializeSplayLinks マクロを 呼び出します。 (ユーザー定義構造体内に含まれるRTL_SPLAY_LINKS メンバーのアドレスを渡します。
1 つ以上のノードを含むスプレイ リンク ツリーの場合、通常、新しいノードは次のように初期化されます。
- RtlLeftChild または RtlRightChild を使用して、新しいノードの挿入ポイントを検索します。 つまり、新しいノードの親ノードの正しいアドレスを取得します。 (新しいノードは、親ノードの左側または右側にアタッチされます)。
- RtlInitializeSplayLinks を使用して、前の手順で見つかった親ノードのアドレスを使用して新しいノードを初期化します。
- 必要に応じて RtlInsertAsLeftChild または RtlInsertAsRightChild を使用して、新しいノードを再生ツリーに挿入します。
- 新しいノードのアドレスを使用して RtlSplay を呼び出します。 (新しいノードがスプレイ ツリーのルートになります)。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | サポートされているすべてのバージョンの Windows で使用できます。 |
Header | ntddk.h (Fltkernel.h、Ntifs.h、Ntddk.h を含む) |