Dicom.Dictionary.Registry (Dicom v0.9.1)

Copy Markdown View Source

DICOM Data Dictionary tag registry.

Maps {group, element} tags to their name, VR, and VM (Value Multiplicity). Generated from the DICOM PS3.6 standard data dictionary via mix dicom.gen_dictionary.

Contains 5035 entries covering the full standard data dictionary. Repeating group tags (50XX curve, 60XX overlay, 7FXX waveform) are handled via pattern matching.

Reference: DICOM PS3.6.

Summary

Functions

Finds a tag by its DICOM keyword (e.g., "PatientName").

Looks up a tag in the dictionary.

Returns true if the tag is marked as retired in the DICOM standard.

Returns the number of entries in the registry (excluding repeating groups).

Types

entry()

@type entry() :: {String.t(), Dicom.VR.t(), String.t()}

Functions

find_by_keyword(keyword)

@spec find_by_keyword(String.t()) ::
  {:ok, Dicom.Tag.t(), Dicom.VR.t(), String.t()} | :error

Finds a tag by its DICOM keyword (e.g., "PatientName").

Returns {:ok, tag, vr, vm} or :error.

lookup(tag)

@spec lookup(Dicom.Tag.t()) :: {:ok, String.t(), Dicom.VR.t(), String.t()} | :error

Looks up a tag in the dictionary.

Returns {:ok, name, vr, vm} or :error if not found.

retired?(tag)

@spec retired?(Dicom.Tag.t()) :: boolean()

Returns true if the tag is marked as retired in the DICOM standard.

size()

@spec size() :: non_neg_integer()

Returns the number of entries in the registry (excluding repeating groups).