Package com.pixelmed.dicom

## 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:
    `Attribute`, `AttributeFactory`, `AttributeList`

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected java.io.File[]` | `files` |

    - ### Fields inherited from class com.pixelmed.dicom.Attribute

      `valueLength, valueMultiplicity`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `OtherByteAttributeMultipleCompressedFilesOnDisk​(AttributeTag t)` | Construct an (empty) attribute.
    `OtherByteAttributeMultipleCompressedFilesOnDisk​(AttributeTag t, long vl, java.io.File[] files)` | Read an attribute from a set of compressed files.
    `OtherByteAttributeMultipleCompressedFilesOnDisk​(AttributeTag t, long vl, java.lang.String[] fileNames)` | Read an attribute from a set of compressed files.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `long` | `getPaddedVL()` | Get the value length of this attribute, accounting for the need for even-length padding.
    `byte[]` | `getVR()` | Get the value representation of this attribute (OB).
    `void` | `removeValues()` | Remove any existing values, making the attribute empty (zero length).
    `java.lang.String` | `toString​(DicomDictionary dictionary)` | Dump the contents of the attribute as a human-readable string.
    `void` | `write​(DicomOutputStream o)` | Write the entire attribute (including values) to the output stream.

    - ### Methods inherited from class com.pixelmed.dicom.Attribute

      `addValue, addValue, addValue, addValue, addValue, addValue, addValue, getByteValues, getDelimitedStringValuesOrDefault, getDelimitedStringValuesOrDefault, getDelimitedStringValuesOrDefault, getDelimitedStringValuesOrDefault, getDelimitedStringValuesOrDefault, getDelimitedStringValuesOrDefault, getDelimitedStringValuesOrEmptyString, getDelimitedStringValuesOrEmptyString, getDelimitedStringValuesOrEmptyString, getDelimitedStringValuesOrEmptyString, getDelimitedStringValuesOrEmptyString, getDelimitedStringValuesOrEmptyString, getDelimitedStringValuesOrNull, getDelimitedStringValuesOrNull, getDelimitedStringValuesOrNull, getDelimitedStringValuesOrNull, getDelimitedStringValuesOrNull, getDelimitedStringValuesOrNull, getDoubleValues, getDoubleValues, getDoubleValues, getElement, getFloatValues, getFloatValues, getFloatValues, getGroup, getIntegerValues, getIntegerValues, getIntegerValues, getLongValues, getLongValues, getLongValues, getOriginalStringValues, getShortValues, getSingleDoubleValueOrDefault, getSingleDoubleValueOrDefault, getSingleDoubleValueOrDefault, getSingleFloatValueOrDefault, getSingleFloatValueOrDefault, getSingleFloatValueOrDefault, getSingleIntegerValueOrDefault, getSingleIntegerValueOrDefault, getSingleIntegerValueOrDefault, getSingleLongValueOrDefault, getSingleLongValueOrDefault, getSingleLongValueOrDefault, getSingleStringValueOrDefault, getSingleStringValueOrDefault, getSingleStringValueOrDefault, getSingleStringValueOrDefault, getSingleStringValueOrDefault, getSingleStringValueOrDefault, getSingleStringValueOrEmptyString, getSingleStringValueOrEmptyString, getSingleStringValueOrEmptyString, getSingleStringValueOrEmptyString, getSingleStringValueOrEmptyString, getSingleStringValueOrEmptyString, getSingleStringValueOrNull, getSingleStringValueOrNull, getSingleStringValueOrNull, getSingleStringValueOrNull, getSingleStringValueOrNull, getSingleStringValueOrNull, getStringValues, getStringValues, getStringValues, getStringValues, getStringValues, getStringValues, getTag, getVL, getVM, getVRAsString, isValid, repairValues, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValues, setValues, setValues, setValues, toString, writeBase`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### files

          protected java.io.File[] files

  - ### Constructor Detail

    - #### OtherByteAttributeMultipleCompressedFilesOnDisk

          public OtherByteAttributeMultipleCompressedFilesOnDisk​(AttributeTag t)

      Construct an (empty) attribute.

      Parameters:
        `t` - the tag of the attribute

    - #### OtherByteAttributeMultipleCompressedFilesOnDisk

          public OtherByteAttributeMultipleCompressedFilesOnDisk​(AttributeTag t,
                                                                 long vl,
                                                                 java.io.File[] files)
                                                          throws java.io.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:
        `java.io.IOException`
        `DicomException`

    - #### OtherByteAttributeMultipleCompressedFilesOnDisk

          public OtherByteAttributeMultipleCompressedFilesOnDisk​(AttributeTag t,
                                                                 long vl,
                                                                 java.lang.String[] fileNames)
                                                          throws java.io.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:
        `java.io.IOException`
        `DicomException`

  - ### Method Detail

    - #### 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,
                            java.io.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:
        `java.io.IOException`
        `DicomException`

    - #### toString

          public java.lang.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`