Class OtherByteAttributeMultipleCompressedFilesOnDisk

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

public class OtherByteAttributeMultipleCompressedFilesOnDisk extends Attribute

A concrete class specializing Attribute for Other Byte (OB) attributes whose values are not memory resident but rather are stored in multiple compressed files on disk.

Whether or not decompression of compressed file format is supported is not checked until an attempt is made to write decompressed bytes.

Which decompressor to use is determined by the file name extension (.gz for gzip, .Z for unix compress, etc., case insensitive).

See Also:
  • Field Details

    • files

      protected File[] files
  • Constructor Details

    • OtherByteAttributeMultipleCompressedFilesOnDisk

      public OtherByteAttributeMultipleCompressedFilesOnDisk(AttributeTag t)

      Construct an (empty) attribute.

      Parameters:
      t - the tag of the attribute
    • OtherByteAttributeMultipleCompressedFilesOnDisk

      public OtherByteAttributeMultipleCompressedFilesOnDisk(AttributeTag t, long vl, File[] files) throws IOException, DicomException

      Read an attribute from a set of compressed files.

      Parameters:
      t - the tag of the attribute
      vl - the value length of the attribute
      files - the input files
      Throws:
      IOException
      DicomException
    • OtherByteAttributeMultipleCompressedFilesOnDisk

      public OtherByteAttributeMultipleCompressedFilesOnDisk(AttributeTag t, long vl, String[] fileNames) throws IOException, DicomException

      Read an attribute from a set of compressed files.

      Parameters:
      t - the tag of the attribute
      vl - the value length of the attribute
      fileNames - the input files
      Throws:
      IOException
      DicomException
  • 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
    • 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