pydicom.fileset.RecordNode#

class pydicom.fileset.RecordNode(record: Dataset | None = None)[source]#

Representation of a DICOMDIR’s directory record.

children#

The current node’s child nodes (if any)

Type:

list of RecordNode

instance#

If the current node is a leaf node, a FileInstance for the corresponding SOP Instance.

Type:

FileInstance or None

__init__(record: Dataset | None = None) None[source]#

Create a new RecordNode.

Parameters:

record (pydicom.dataset.Dataset, optional) – A Directory Record Sequence’s directory record.

Methods

__init__([record])

Create a new RecordNode.

add(leaf)

Add a leaf to the tree.

prettify([indent_char])

Return the tree structure as a list of pretty strings, starting at the current node (unless the current node is the root node).

remove(node)

Remove a leaf from the tree

reverse()

Yield nodes up to the level below the tree's root node.

Attributes

ancestors

Return a list of the current node's ancestors, ordered from nearest to furthest.

component

Return a File ID component as str for the current node.

depth

Return the number of nodes to the level below the tree root

file_set

Return the tree's FileSet.

has_instance

Return True if the current node corresponds to an instance.

index

Return the index of the current node amongst its siblings.

is_root

Return True if the current node is the tree's root node.

key

Return a unique key for the node's record as str.

next

Return the node after the current one (if any), or None.

parent

Return the current node's parent (if it has one).

previous

Return the node before the current one (if any), or None.

record_type

Return the record's Directory Record Type as str.

root

Return the tree's root node.

add(leaf: RecordNode) None[source]#

Add a leaf to the tree.

Parameters:

leaf (pydicom.fileset.RecordNode) – A leaf node (i.e. one with a FileInstance) to be added to the tree (if not already present).

property ancestors: list[RecordNode]#

Return a list of the current node’s ancestors, ordered from nearest to furthest.

property component: str#

Return a File ID component as str for the current node.

property depth: int#

Return the number of nodes to the level below the tree root

property file_set: FileSet#

Return the tree’s FileSet.

property has_instance: bool#

Return True if the current node corresponds to an instance.

property index: int#

Return the index of the current node amongst its siblings.

property is_root: bool#

Return True if the current node is the tree’s root node.

property key: str#

Return a unique key for the node’s record as str.

property next: RecordNode | None#

Return the node after the current one (if any), or None.

property parent: RecordNode#

Return the current node’s parent (if it has one).

prettify(indent_char: str = '  ') list[str][source]#

Return the tree structure as a list of pretty strings, starting at the current node (unless the current node is the root node).

Parameters:

indent_char (str, optional) – The characters to use to indent each level of the tree.

property previous: RecordNode | None#

Return the node before the current one (if any), or None.

property record_type: str#

Return the record’s Directory Record Type as str.

remove(node: RecordNode) None[source]#

Remove a leaf from the tree

Parameters:

node (pydicom.fileset.RecordNode) – The leaf node (i.e. one with a FileInstance) to remove.

reverse() Iterable[RecordNode][source]#

Yield nodes up to the level below the tree’s root node.

property root: RecordNode#

Return the tree’s root node.