com.pixelmed.dicom

## Class DecimalStringAttribute

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

    public class DecimalStringAttribute
    extends StringAttribute

A concrete class specializing `Attribute` for Decimal String (DS) 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
`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 and Description
`DecimalStringAttribute(AttributeTag t)` Construct an (empty) attribute.
`DecimalStringAttribute(AttributeTag t, long vl, DicomInputStream i)` Read an attribute from an input stream.
`DecimalStringAttribute(AttributeTag t, java.lang.Long vl, DicomInputStream i)` Read an attribute from an input stream.

### Method Summary

Methods
`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.
`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 (DS).
`boolean` `isCharacterInValueValid(int c)`
`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, areValuesWellFormed, 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

#### DecimalStringAttribute

    public DecimalStringAttribute(AttributeTag t)

Construct an (empty) attribute.

Parameters:
  `t` - the tag of the attribute

#### DecimalStringAttribute

    public DecimalStringAttribute(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`
  `DicomException`

#### DecimalStringAttribute

    public DecimalStringAttribute(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`
  `DicomException`

### Method Detail

#### getMaximumLengthOfSingleValue

    public final int getMaximumLengthOfSingleValue()

Specified by:
  `getMaximumLengthOfSingleValue` in class `StringAttribute`

#### getVR

    public byte[] getVR()

Get the value representation of this attribute (DS).

Overrides:
  `getVR` in class `Attribute`
Returns:
  'D','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`

#### 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` -
Throws:
  `DicomException`

#### 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` -
Throws:
  `DicomException`

#### 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` -
Throws:
  `DicomException`

#### isCharacterInValueValid

    public final boolean isCharacterInValueValid(int c)
                                          throws DicomException

Overrides:
  `isCharacterInValueValid` 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`