Class OtherWordAttributeMultipleFrameArrays

java.lang.Object
com.pixelmed.dicom.Attribute
com.pixelmed.dicom.OtherWordAttributeMultipleFrameArrays

public class OtherWordAttributeMultipleFrameArrays extends Attribute

A concrete class specializing Attribute for Other Word (OW) attributes whose values are an array of shorts per frame rather than a single contiguous array containing all frames.

See Also:
  • Constructor Details

    • OtherWordAttributeMultipleFrameArrays

      public OtherWordAttributeMultipleFrameArrays(AttributeTag t)

      Construct an (empty) attribute.

      Parameters:
      t - the tag of the attribute
  • Method Details

    • getPaddedVL

      public long getPaddedVL()
      Description copied from class: Attribute

      Get the value length of this attribute, accounting for the need for even-length padding.

      Overrides:
      getPaddedVL in class Attribute
      Returns:
      the value length (padded to an even length)
    • write

      public void write(DicomOutputStream o) throws DicomException, IOException
      Description copied from class: Attribute

      Write the entire attribute (including values) to the output stream.

      Specified by:
      write in class Attribute
      Parameters:
      o -
      Throws:
      IOException
      DicomException
    • toString

      public String toString(DicomDictionary dictionary)
      Description copied from class: Attribute

      Dump the contents of the attribute as a human-readable string.

      No new line is appended.

      The result is of the form:

       (0xgggg,0xeeee) Name VR=<XX> VL=<0xnnnn> <...>
       

      For example:

       (0x0018,0x0020) ScanningSequence VR=<CS> VL=<0x2> <GR>
       
      Overrides:
      toString in class Attribute
      Parameters:
      dictionary - the dictionary to use to look up the name
      Returns:
      a single String value
    • setValuesPerFrame

      public void setValuesPerFrame(short[][] v) throws DicomException
      Parameters:
      v -
      Throws:
      DicomException
    • getShortValuesPerFrame

      public short[][] getShortValuesPerFrame() throws DicomException

      Get the values of this attribute as multiple short arrays, one per frame.

      Caller does not need to supply the number for frames since known when this attribute was created.

      This allocates a new array of sufficient length, which may fail if it is too large, and defeats the point of leaving the short values on disk in the first place. However, it is a fallback for when the caller does not want to go to the trouble of creating a MappedByteBuffer from the file, or more likely is not even aware that the attribute values have been left on disk.

      Returns:
      the values as an array of arrays of shorts
      Throws:
      DicomException - thrown if values cannot be read
    • removeValues

      public void removeValues()
      Description copied from class: Attribute

      Remove any existing values, making the attribute empty (zero length).

      Specified by:
      removeValues in class Attribute
    • getVR

      public byte[] getVR()

      Get the value representation of this attribute (OW).

      Overrides:
      getVR in class Attribute
      Returns:
      'O','W' in ASCII as a two byte array; see ValueRepresentation