Class OtherByteAttributeMultipleCompressedFrames

java.lang.Object
com.pixelmed.dicom.Attribute
com.pixelmed.dicom.OtherByteAttributeMultipleCompressedFrames
All Implemented Interfaces:
ByteFrameSource

public class OtherByteAttributeMultipleCompressedFrames extends Attribute implements ByteFrameSource

A concrete class specializing Attribute for Other Byte (OB) attributes whose values are memory or file resident compressed pixel data frames.

See Also:
  • Field Details

    • allframes

      protected byte[] allframes
    • frames

      protected byte[][] frames
    • files

      protected File[] files
    • itemTag

      protected static final AttributeTag itemTag
    • sequenceDelimitationItemTag

      protected static final AttributeTag sequenceDelimitationItemTag
  • Constructor Details

    • OtherByteAttributeMultipleCompressedFrames

      public OtherByteAttributeMultipleCompressedFrames(AttributeTag t, byte[] allframes)

      Construct an attribute from a single byte array containing all compressed frames.

      The VL is not required, since it is undefined by definition.

      Parameters:
      t - the tag of the attribute
      allframes - the frames
    • OtherByteAttributeMultipleCompressedFrames

      public OtherByteAttributeMultipleCompressedFrames(AttributeTag t, byte[][] frames)

      Construct an attribute from a set of compressed frames.

      The VL is not required, since it is undefined by definition.

      Parameters:
      t - the tag of the attribute
      frames - the frames
    • OtherByteAttributeMultipleCompressedFrames

      public OtherByteAttributeMultipleCompressedFrames(AttributeTag t, File[] files)

      Construct an attribute from a set of compressed frames.

      The VL is not required, since it is undefined by definition.

      Parameters:
      t - the tag of the attribute
      files - the files containing the compressed bit streams
  • Method Details

    • writeItemTag

      protected void writeItemTag(DicomOutputStream o, long length) throws IOException
      Throws:
      IOException
    • writeSequenceDelimitationItemTag

      protected void writeSequenceDelimitationItemTag(DicomOutputStream o) throws IOException
      Throws:
      IOException
    • 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 - if no byte array or files containing the compressed bitstream have been supplied
    • getFrames

      public byte[][] getFrames()

      Get the byte arrays for each frame.

      Returns:
      an array of byte arrays for each frame
    • getFiles

      public File[] getFiles()

      Get the files for each frame.

      Returns:
      an array of files for each frame
    • getByteValuesForSelectedFrame

      public byte[] getByteValuesForSelectedFrame(int frameNumber) throws DicomException

      Get the value of this attribute as a byte array for one selected frame.

      Specified by:
      getByteValuesForSelectedFrame in interface ByteFrameSource
      Parameters:
      frameNumber - from 0
      Returns:
      the values as an array of bytes
      Throws:
      DicomException - thrown if values cannot be read
    • getNumberOfFrames

      public int getNumberOfFrames()

      Get the number of frames.

      Returns:
      number of frames, or zero if all frames are in one fragment
    • 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
    • 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 (OB).

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