Package com.pixelmed.dicom

## Class IntegerStringAttribute

- java.lang.Object
- - com.pixelmed.dicom.Attribute
  - - com.pixelmed.dicom.StringAttribute
    - - com.pixelmed.dicom.IntegerStringAttribute

-     public class IntegerStringAttribute
      extends StringAttribute

  A concrete class specializing `Attribute` for Integer String (IS) attributes.

  Though an instance of this class may be created using its constructors, there is also a factory class, `AttributeFactory`.

  See Also:
    `Attribute`, `AttributeFactory`, `AttributeList`

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected static int` | `MAX_LENGTH_SINGLE_VALUE` |

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

      `specificCharacterSet`

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

      `valueLength, valueMultiplicity`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `IntegerStringAttribute​(AttributeTag t)` | Construct an (empty) attribute.
    `IntegerStringAttribute​(AttributeTag t, long vl, DicomInputStream i)` | Read an attribute from an input stream.
    `IntegerStringAttribute​(AttributeTag t, java.lang.Long vl, DicomInputStream i)` | Read an attribute from an input stream.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addValue​(double v)` | Add a(nother) double value after any existing values of this attribute.
    `void` | `addValue​(float v)` | Add a(nother) float value after any existing values of this attribute.
    `void` | `addValue​(long v)` | Add a(nother) long value after any existing values of this attribute.
    `boolean` | `areValuesWellFormed()` |
    `int` | `getMaximumLengthOfSingleValue()` |
    `java.lang.String[]` | `getStringValues​(java.text.NumberFormat format)` | Get the values of this attribute as strings.
    `byte[]` | `getVR()` | Get the value representation of this attribute (IS).
    `boolean` | `isCharacterInValueValid​(int c)` |
    `static void` | `main​(java.lang.String[] arg)` | Test.
    `boolean` | `repairValues()` | Repair any existing values of this attribute to make them comply with standard VR requirements.

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

      `addValue, addValue, addValue, addValue, allowRepairOfIncorrectLength, allowRepairOfInvalidCharacterReplacement, areCharactersInValuesValid, areLengthsOfValuesValid, flushCachedCopies, getByteValues, getDoubleValues, getFloatValues, getIntegerValues, getInvalidCharacterReplacement, getLongValues, getOriginalStringValues, getPadByte, getPaddedVL, getShortValues, getSpecificCharacterSet, isValid, removeValues, setSpecificCharacterSet, toString, translateByteArrayToString, translateStringToByteArray, write`

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

      `getDelimitedStringValuesOrDefault, getDelimitedStringValuesOrDefault, getDelimitedStringValuesOrDefault, getDelimitedStringValuesOrDefault, getDelimitedStringValuesOrDefault, getDelimitedStringValuesOrDefault, getDelimitedStringValuesOrEmptyString, getDelimitedStringValuesOrEmptyString, getDelimitedStringValuesOrEmptyString, getDelimitedStringValuesOrEmptyString, getDelimitedStringValuesOrEmptyString, getDelimitedStringValuesOrEmptyString, getDelimitedStringValuesOrNull, getDelimitedStringValuesOrNull, getDelimitedStringValuesOrNull, getDelimitedStringValuesOrNull, getDelimitedStringValuesOrNull, getDelimitedStringValuesOrNull, getDoubleValues, getDoubleValues, getElement, getFloatValues, getFloatValues, getGroup, getIntegerValues, getIntegerValues, getLongValues, getLongValues, 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, getTag, getVL, getVM, getVRAsString, 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

    - #### MAX_LENGTH_SINGLE_VALUE

          protected static final int MAX_LENGTH_SINGLE_VALUE

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### IntegerStringAttribute

          public IntegerStringAttribute​(AttributeTag t)

      Construct an (empty) attribute.

      Parameters:
        `t` - the tag of the attribute

    - #### IntegerStringAttribute

          public IntegerStringAttribute​(AttributeTag t,
                                        long vl,
                                        DicomInputStream i)
                                 throws java.io.IOException,
                                        DicomException

      Read an attribute from an input stream.

      Parameters:
        `t` - the tag of the attribute
        `vl` - the value length of the attribute
        `i` - the input stream
      Throws:
        `java.io.IOException` - if an I/O error occurs
        `DicomException` - if error in DICOM encoding

    - #### IntegerStringAttribute

          public IntegerStringAttribute​(AttributeTag t,
                                        java.lang.Long vl,
                                        DicomInputStream i)
                                 throws java.io.IOException,
                                        DicomException

      Read an attribute from an input stream.

      Parameters:
        `t` - the tag of the attribute
        `vl` - the value length of the attribute
        `i` - the input stream
      Throws:
        `java.io.IOException` - if an I/O error occurs
        `DicomException` - if error in DICOM encoding

  - ### Method Detail

    - #### getMaximumLengthOfSingleValue

          public final int getMaximumLengthOfSingleValue()

      Specified by:
        `getMaximumLengthOfSingleValue` in class `StringAttribute`

    - #### getVR

          public byte[] getVR()

      Get the value representation of this attribute (IS).

      Overrides:
        `getVR` in class `Attribute`
      Returns:
        'I','S' in ASCII as a two byte array; see `ValueRepresentation`

    - #### getStringValues

          public java.lang.String[] getStringValues​(java.text.NumberFormat format)
                                             throws DicomException

      Description copied from class: `StringAttribute`

      Get the values of this attribute as strings.

      The strings are first cleaned up into a canonical form, to remove leading and trailing padding.

      Overrides:
        `getStringValues` in class `StringAttribute`
      Parameters:
        `format` - the format to use for each numerical or decimal value
      Returns:
        the values as an array of `String`
      Throws:
        `DicomException` - not thrown

    - #### addValue

          public void addValue​(long v)
                        throws DicomException

      Description copied from class: `Attribute`
      Add a(nother) long value after any existing values of this attribute.
      Overrides:
        `addValue` in class `StringAttribute`
      Parameters:
        `v` - value to add
      Throws:
        `DicomException` - not thrown

    - #### addValue

          public void addValue​(float v)
                        throws DicomException

      Description copied from class: `Attribute`
      Add a(nother) float value after any existing values of this attribute.
      Overrides:
        `addValue` in class `StringAttribute`
      Parameters:
        `v` - value to add
      Throws:
        `DicomException` - not thrown

    - #### addValue

          public void addValue​(double v)
                        throws DicomException

      Description copied from class: `Attribute`
      Add a(nother) double value after any existing values of this attribute.
      Overrides:
        `addValue` in class `StringAttribute`
      Parameters:
        `v` - value to add
      Throws:
        `DicomException` - not thrown

    - #### isCharacterInValueValid

          public final boolean isCharacterInValueValid​(int c)
                                                throws DicomException

      Overrides:
        `isCharacterInValueValid` in class `StringAttribute`
      Throws:
        `DicomException`

    - #### areValuesWellFormed

          public boolean areValuesWellFormed()
                                      throws DicomException

      Overrides:
        `areValuesWellFormed` in class `StringAttribute`
      Throws:
        `DicomException`

    - #### repairValues

          public boolean repairValues()
                               throws DicomException

      Description copied from class: `Attribute`
      Repair any existing values of this attribute to make them comply with standard VR requirements. E.g., truncate them if they are too long. N.B., Not all types of attribute support repair.
      Overrides:
        `repairValues` in class `StringAttribute`
      Returns:
        true if successfully repaired or was already valid
      Throws:
        `DicomException` - if error in DICOM value extraction

    - #### main

          public static void main​(java.lang.String[] arg)

      Test.

      Parameters:
        `arg` - ignored