public class AttributeFactory extends Object
The AttributeFactory class is a factory class of static methods for creating
concrete instances of the abstract class Attribute based on their
value representation.
This class is primarily used when reading a parsing a DICOM dataset, and needing to create attributes based on their value representation, either from a dictionary or from the explicit value representation in the dataset.
Attribute,
AttributeList| Modifier and Type | Method and Description |
|---|---|
static Class |
getClassOfAttributeFromValueRepresentation(AttributeTag tag,
byte[] vr,
boolean explicit,
int bytesPerSample,
boolean leaveOtherDataOnDisk,
boolean isSignedPixelRepresentation)
A static method to determine the
Class appropriate for storing an attribute based on the supplied value representation. |
static Class |
getClassOfAttributeFromValueRepresentation(AttributeTag tag,
byte[] vr,
boolean explicit,
int bytesPerSample,
long vl,
boolean isFile,
boolean isSignedPixelRepresentation)
A static method to determine the
Class appropriate for storing an attribute based on the supplied value representation. |
static Attribute |
newAttribute(AttributeTag tag)
A static method to create an
Attribute based on the value representation from the standard dictionary. |
static Attribute |
newAttribute(AttributeTag tag,
byte[] vr)
A static method to create an
Attribute based on the supplied value representation. |
static Attribute |
newAttribute(AttributeTag tag,
byte[] vr,
boolean explicit,
int bytesPerSample)
A static method to create an
Attribute based on the supplied value representation. |
static Attribute |
newAttribute(AttributeTag tag,
byte[] vr,
long vl,
DicomInputStream i,
SpecificCharacterSet specificCharacterSet,
boolean explicit,
int bytesPerSample,
long byteOffset,
boolean isSignedPixelRepresentation)
A static method to create and read an
Attribute from a DicomInputStream. |
static Attribute |
newAttribute(AttributeTag tag,
byte[] vr,
SpecificCharacterSet specificCharacterSet)
A static method to create an
Attribute based on the supplied value representation. |
static Attribute |
newAttribute(AttributeTag tag,
byte[] vr,
SpecificCharacterSet specificCharacterSet,
boolean explicit,
int bytesPerSample,
boolean isSignedPixelRepresentation)
A static method to create an
Attribute based on the supplied value representation. |
public static Class getClassOfAttributeFromValueRepresentation(AttributeTag tag, byte[] vr, boolean explicit, int bytesPerSample, boolean leaveOtherDataOnDisk, boolean isSignedPixelRepresentation)
A static method to determine the Class appropriate for storing an attribute based on the supplied value representation.
tag - the AttributeTag tag of the attribute (to check whether or not pixel data)vr - the value representation of the attributeexplicit - a flag indicating that the stream to read or write uses explicit value representation (affects pixel data encoding choice)bytesPerSample - 1 or 2 bytes per sample indicating whether to use OB or OW for pixel dataleaveOtherDataOnDisk - whether or not to leave OB or OW on disk or read it into memoryisSignedPixelRepresentation - the PixelRepresentation is signed (needed to choose VR for US/SS VR data elements)public static Class getClassOfAttributeFromValueRepresentation(AttributeTag tag, byte[] vr, boolean explicit, int bytesPerSample, long vl, boolean isFile, boolean isSignedPixelRepresentation)
A static method to determine the Class appropriate for storing an attribute based on the supplied value representation.
tag - the AttributeTag tag of the attribute (to check whether or not pixel data)vr - the value representation of the attributeexplicit - a flag indicating that the stream to read or write uses explicit value representation (affects pixel data encoding choice)bytesPerSample - 1 or 2 bytes per sample indicating whether to use OB or OW for pixel datavl - the value length, used to decide whether or not to leave OB or OW on disk (if in a file) or read it into memoryisFile - the attribute is stored in a fileisSignedPixelRepresentation - the PixelRepresentation is signed (needed to choose VR for US/SS VR data elements)public static Attribute newAttribute(AttributeTag tag) throws DicomException
A static method to create an Attribute based on the value representation from the standard dictionary.
Will return a UN attribute if the tag is unrecognized.
The PixelRepresentation is assumed to be unsigned (US will be used for US/SS VR data elements).
tag - the AttributeTag tag of the attribute to createDicomException - if cannot instantiate a new attributepublic static Attribute newAttribute(AttributeTag tag, byte[] vr) throws DicomException
A static method to create an Attribute based on the supplied value representation.
The PixelRepresentation is assumed to be unsigned (US will be used for US/SS VR data elements if the supplied VR from the dictionary is 'XS').
tag - the AttributeTag tag of the attribute to createvr - the value representation of the attribute to create (such as read from the stream, or from the dictionary)DicomException - if cannot instantiate a new attributepublic static Attribute newAttribute(AttributeTag tag, byte[] vr, boolean explicit, int bytesPerSample) throws DicomException
A static method to create an Attribute based on the supplied value representation.
The PixelRepresentation is assumed to be unsigned (US will be used for US/SS VR data elements if the supplied VR from the dictionary is 'XS').
tag - the AttributeTag tag of the attribute to createvr - the value representation of the attribute to create (such as read from the stream, or from the dictionary)explicit - a flag indicating that the stream is explicit value representation (affects pixel data encoding choice)bytesPerSample - 1 or 2 bytes per sample indicating whether to use OB or OW for pixel dataDicomException - if cannot instantiate a new attributepublic static Attribute newAttribute(AttributeTag tag, byte[] vr, long vl, DicomInputStream i, SpecificCharacterSet specificCharacterSet, boolean explicit, int bytesPerSample, long byteOffset, boolean isSignedPixelRepresentation) throws DicomException
A static method to create and read an Attribute from a DicomInputStream.
The stream is left positioned at the start of the next attribute.
tag - the AttributeTag tag of the attribute to create (already read from the stream)vr - the value representation of the attribute to create (already read from the stream, if present, else from the dictionary)vl - the value length of the attribute to create (already read from the stream)i - the DicomInputStream to read the attribute from, positioned at the start of the value(s) to readspecificCharacterSet - the SpecificCharacterSet to be used text valuesexplicit - a flag indicating that the stream is explicit value representation (affects pixel data encoding choice)bytesPerSample - 1 or 2 bytes per sample indicating whether to use OB or OW for pixel databyteOffset - the byte offset from the beginning of the DicomInputStreamisSignedPixelRepresentation - the PixelRepresentation is signed (needed to choose VR for US/SS VR data elements)DicomException - if cannot instantiate a new attributepublic static Attribute newAttribute(AttributeTag tag, byte[] vr, SpecificCharacterSet specificCharacterSet) throws DicomException
A static method to create an Attribute based on the supplied value representation.
The PixelRepresentation is assumed to be unsigned (US will be used for US/SS VR data elements if the supplied VR from the dictionary is 'XS').
tag - the AttributeTag tag of the attribute to createvr - the value representation of the attribute to create (such as read from the stream, or from the dictionary)specificCharacterSet - the SpecificCharacterSet to be used text valuesDicomException - if cannot instantiate a new attributepublic static Attribute newAttribute(AttributeTag tag, byte[] vr, SpecificCharacterSet specificCharacterSet, boolean explicit, int bytesPerSample, boolean isSignedPixelRepresentation) throws DicomException
A static method to create an Attribute based on the supplied value representation.
tag - the AttributeTag tag of the attribute to createvr - the value representation of the attribute to create (such as read from the stream, or from the dictionary)specificCharacterSet - the SpecificCharacterSet to be used text valuesexplicit - a flag indicating that the stream is explicit value representation (affects pixel data encoding choice)bytesPerSample - 1 or 2 bytes per sample indicating whether to use OB or OW for pixel dataisSignedPixelRepresentation - the PixelRepresentation is signed (needed to choose VR for US/SS VR data elements)DicomException - if cannot instantiate a new attribute