Class StructuredReport

java.lang.Object
com.pixelmed.dicom.StructuredReport
All Implemented Interfaces:
TreeModel

public class StructuredReport extends Object implements TreeModel

The StructuredReport class implements a TreeModel to abstract the contents of a list of attributes representing a DICOM Structured Report as a tree in order to provide support for a StructuredReportBrowser.

For details of some of the methods implemented here see javax.swing.tree.TreeModel.

A main method is provided for testing that reads a DICOM file containing an SR and dumps its contents in a human-readable form to System.err.

See Also:
  • Constructor Details

    • StructuredReport

      public StructuredReport(AttributeList list) throws DicomException

      Construct an internal tree representation of a structured report from a list of DICOM attributes.

      Parameters:
      list - the list of attributes in which the structured report is encoded
      Throws:
      DicomException
    • StructuredReport

      public StructuredReport(ContentItem root) throws DicomException

      Construct an internal tree representation of a structured report from an existing root content item.

      Parameters:
      root - the root content item
      Throws:
      DicomException
  • Method Details

    • getChild

      public Object getChild(Object node, int index)
      Specified by:
      getChild in interface TreeModel
      Parameters:
      node -
      index -
    • getIndexOfChild

      public int getIndexOfChild(Object parent, Object child)
      Specified by:
      getIndexOfChild in interface TreeModel
      Parameters:
      parent -
      child -
    • getRoot

      public Object getRoot()
      Specified by:
      getRoot in interface TreeModel
    • getChildCount

      public int getChildCount(Object parent)
      Specified by:
      getChildCount in interface TreeModel
      Parameters:
      parent -
    • isLeaf

      public boolean isLeaf(Object node)
      Specified by:
      isLeaf in interface TreeModel
      Parameters:
      node -
    • valueForPathChanged

      public void valueForPathChanged(TreePath path, Object newValue)
      Specified by:
      valueForPathChanged in interface TreeModel
      Parameters:
      path -
      newValue -
    • addTreeModelListener

      public void addTreeModelListener(TreeModelListener tml)
      Specified by:
      addTreeModelListener in interface TreeModel
      Parameters:
      tml -
    • removeTreeModelListener

      public void removeTreeModelListener(TreeModelListener tml)
      Specified by:
      removeTreeModelListener in interface TreeModel
      Parameters:
      tml -
    • getAttributeList

      public AttributeList getAttributeList()

      Return the entire content tree of a structured report as an AttributeList.

      Has the side effect of creating (or replacing) the ContentSequence attributes of the AttributeList of each ContentItem to represent the tree structure.

      Returns:
      a AttributeList representing the content tree, or null if empty root.
    • walkTreeBuldingString

      public static String walkTreeBuldingString(ContentItem node, String location)

      Dump the tree starting at the specified node as a String.

      Parameters:
      node -
      location - the dotted numeric string describing the location of the starting node
      Returns:
      a multi-line String representing the tree fragment
    • toString

      public String toString()

      Dump the entire tree as a String.

      Overrides:
      toString in class Object
      Returns:
      a multi-line String representing the tree
    • findAllContainedSOPInstances

      public static Vector findAllContainedSOPInstances(ContentItem root, ContentItem item)

      Find all coordinate and image references within content items of the sub-tree rooted at the specified node (which may be the root).

      The annotation of the reference is derived from the value of the Concept Name of the parent (and its parent, if a NUM content item).

      Parameters:
      root - the root node, for dereferencing by-reference relationships
      item - the node to start searching from
      Returns:
      a Vector of SpatialCoordinateAndImageReference
    • main

      public static void main(String[] arg)

      Dump the SR encoded in the file name on the console.

      Parameters:
      arg -