public class PersonNameAttribute extends StringAttributeAffectedBySpecificCharacterSet
A concrete class specializing Attribute
for
Person Name (PN) attributes.
Though an instance of this class may be created
using its constructors, there is also a factory class, AttributeFactory
.
Attribute
,
AttributeFactory
,
AttributeList
Modifier and Type | Field and Description |
---|---|
protected static int |
MAX_LENGTH_SINGLE_VALUE |
specificCharacterSet
valueLength, valueMultiplicity
Constructor and Description |
---|
PersonNameAttribute(AttributeTag t)
Construct an (empty) attribute.
|
PersonNameAttribute(AttributeTag t,
long vl,
DicomInputStream i,
SpecificCharacterSet specificCharacterSet)
Read an attribute from an input stream.
|
PersonNameAttribute(AttributeTag t,
java.lang.Long vl,
DicomInputStream i,
SpecificCharacterSet specificCharacterSet)
Read an attribute from an input stream.
|
PersonNameAttribute(AttributeTag t,
SpecificCharacterSet specificCharacterSet)
Construct an (empty) attribute.
|
Modifier and Type | Method and Description |
---|---|
static java.lang.String |
getCanonicalForm(java.lang.String value)
Get a canonical form of the supplied person name value.
|
static java.lang.String |
getCanonicalForm(java.lang.String value,
boolean forQuery)
Get a canonical form of the supplied person name value.
|
int |
getMaximumLengthOfSingleValue() |
static java.util.Vector<java.lang.String> |
getNameComponentGroups(java.lang.String value)
Get the name component groups from a DICOM delimited form of Person Name.
|
static java.util.Vector<java.lang.String> |
getNameComponents(java.lang.String value)
Get the name components from a DICOM delimited form of Person Name.
|
static java.lang.String |
getPhoneticName(java.lang.String name)
Get a phonetic encoding name of the family and given name components of a DICOM delimited form of Person Name.
|
static java.lang.String |
getPhoneticName(java.lang.String name,
boolean forQuery)
Get a phonetic encoding name of the family and given name components of a DICOM delimited form of Person Name.
|
byte[] |
getVR()
Get the value representation of this attribute (PN).
|
static void |
main(java.lang.String[] arg)
Test read the DICOM files listed on the command line, get the patient name and make canonical form.
|
static java.lang.String |
swap(java.lang.String name)
Get the family and given name components of a DICOM delimited form of Person Name and swap them.
|
addValue, addValue, addValue, addValue, addValue, addValue, addValue, allowRepairOfIncorrectLength, allowRepairOfInvalidCharacterReplacement, areCharactersInValuesValid, areLengthsOfValuesValid, areValuesWellFormed, flushCachedCopies, getByteValues, getDoubleValues, getFloatValues, getIntegerValues, getInvalidCharacterReplacement, getLongValues, getOriginalStringValues, getPadByte, getPaddedVL, getShortValues, getSpecificCharacterSet, getStringValues, isCharacterInValueValid, isValid, removeValues, repairValues, setSpecificCharacterSet, toString, translateByteArrayToString, translateStringToByteArray, write
getByteValues, 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, getLengthOfEncodedValue, 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, setValues, setValues, setValues, toString, writeBase
protected static final int MAX_LENGTH_SINGLE_VALUE
public PersonNameAttribute(AttributeTag t)
Construct an (empty) attribute.
t
- the tag of the attributepublic PersonNameAttribute(AttributeTag t, long vl, DicomInputStream i, SpecificCharacterSet specificCharacterSet) throws java.io.IOException, DicomException
Read an attribute from an input stream.
t
- the tag of the attributevl
- the value length of the attributei
- the input streamspecificCharacterSet
- the character set to be used for the textjava.io.IOException
DicomException
public PersonNameAttribute(AttributeTag t, java.lang.Long vl, DicomInputStream i, SpecificCharacterSet specificCharacterSet) throws java.io.IOException, DicomException
Read an attribute from an input stream.
t
- the tag of the attributevl
- the value length of the attributei
- the input streamspecificCharacterSet
- the character set to be used for the textjava.io.IOException
DicomException
public PersonNameAttribute(AttributeTag t, SpecificCharacterSet specificCharacterSet)
Construct an (empty) attribute.
t
- the tag of the attributespecificCharacterSet
- the character set to be used for the textpublic static java.lang.String getCanonicalForm(java.lang.String value)
Get a canonical form of the supplied person name value.
value
- a single person name valuepublic static java.lang.String getCanonicalForm(java.lang.String value, boolean forQuery)
Get a canonical form of the supplied person name value.
For queries, wildcard characters for queries are left untouched; if a component is empty then a '*' is inserted instead of zero length.
value
- a single person name valueforQuery
- if application is query and wildcards need to be handledpublic final int getMaximumLengthOfSingleValue()
getMaximumLengthOfSingleValue
in class StringAttribute
public static java.util.Vector<java.lang.String> getNameComponentGroups(java.lang.String value)
Get the name component groups from a DICOM delimited form of Person Name.
value
- a single person name valuepublic static java.util.Vector<java.lang.String> getNameComponents(java.lang.String value)
Get the name components from a DICOM delimited form of Person Name.
value
- a single person name valuepublic static java.lang.String getPhoneticName(java.lang.String name)
Get a phonetic encoding name of the family and given name components of a DICOM delimited form of Person Name.
name
- a single person name value with family and given name componentspublic static java.lang.String getPhoneticName(java.lang.String name, boolean forQuery)
Get a phonetic encoding name of the family and given name components of a DICOM delimited form of Person Name.
Note that wildcards used in queries are removed by the encoding process, though initial and terminal wildcard characters are restored in each component if present.
name
- a single person name value with family and given name componentsforQuery
- if application is query and wildcards need to be handledpublic byte[] getVR()
Get the value representation of this attribute (PN).
getVR
in class Attribute
ValueRepresentation
public static void main(java.lang.String[] arg)
Test read the DICOM files listed on the command line, get the patient name and make canonical form.
arg
- a list of DICOM file names or directories to search for suchpublic static java.lang.String swap(java.lang.String name)
Get the family and given name components of a DICOM delimited form of Person Name and swap them.
name
- a single person name value with family and given name components