DCMTK  Version 3.6.1 20120515
OFFIS DICOM Toolkit
Public Member Functions | Static Public Member Functions | Protected Member Functions
DcmUniqueIdentifier Class Reference

a class representing the DICOM value representation 'Unique Identifier' (UI) More...

+ Inheritance diagram for DcmUniqueIdentifier:

List of all members.

Public Member Functions

 DcmUniqueIdentifier (const DcmTag &tag, const Uint32 len=0)
 constructor.
 DcmUniqueIdentifier (const DcmUniqueIdentifier &old)
 copy constructor
virtual ~DcmUniqueIdentifier ()
 destructor
DcmUniqueIdentifieroperator= (const DcmUniqueIdentifier &obj)
 assignment operator
virtual DcmObjectclone () const
 clone method
virtual OFCondition copyFrom (const DcmObject &rhs)
 Virtual object copying.
virtual DcmEVR ident () const
 get element type identifier
virtual OFCondition checkValue (const OFString &vm="1-n", const OFBool oldFormat=OFFalse)
 check whether stored value conforms to the VR and to the specified VM
virtual void print (STD_NAMESPACE ostream &out, const size_t flags=0, const int level=0, const char *pixelFileName=NULL, size_t *pixelCounter=NULL)
 print element to a stream.
virtual OFCondition getOFString (OFString &stringVal, const unsigned long pos, OFBool normalize=OFTrue)
 get a copy of a particular string component
virtual OFCondition putString (const char *stringVal)
 set element value from the given character string.
virtual OFCondition putString (const char *stringVal, const Uint32 stringLen)
 set element value from the given character string.

Static Public Member Functions

static OFCondition checkStringValue (const OFString &value, const OFString &vm="1-n")
 check whether given string value conforms to the VR "UI" (Unique Identifier) and to the specified VM.

Protected Member Functions

virtual OFCondition makeMachineByteString (const Uint32 length=0)
 convert currently stored string value to internal representation.

Detailed Description

a class representing the DICOM value representation 'Unique Identifier' (UI)


Constructor & Destructor Documentation

DcmUniqueIdentifier::DcmUniqueIdentifier ( const DcmTag tag,
const Uint32  len = 0 
)

constructor.

Create new element from given tag and length.

Parameters:
tagDICOM tag for the new element
lenvalue length for the new element

copy constructor

Parameters:
oldelement to be copied

Member Function Documentation

static OFCondition DcmUniqueIdentifier::checkStringValue ( const OFString value,
const OFString vm = "1-n" 
) [static]

check whether given string value conforms to the VR "UI" (Unique Identifier) and to the specified VM.

Parameters:
valuestring value to be checked (possibly multi-valued)
vmvalue multiplicity (according to the data dictionary) to be checked for. (See DcmElement::checkVM() for a list of valid values.)
Returns:
status of the check, EC_Normal if value is correct, an error code otherwise
virtual OFCondition DcmUniqueIdentifier::checkValue ( const OFString vm = "1-n",
const OFBool  oldFormat = OFFalse 
) [virtual]

check whether stored value conforms to the VR and to the specified VM

Parameters:
vmvalue multiplicity (according to the data dictionary) to be checked for. (See DcmElement::checkVM() for a list of valid values.)
oldFormatparameter not used for this VR (only for DA, TM, PN)
Returns:
status of the check, EC_Normal if value is correct, an error code otherwise

Reimplemented from DcmElement.

virtual DcmObject* DcmUniqueIdentifier::clone ( ) const [inline, virtual]

clone method

Returns:
deep copy of this object

Reimplemented from DcmByteString.

virtual OFCondition DcmUniqueIdentifier::copyFrom ( const DcmObject rhs) [virtual]

Virtual object copying.

This method can be used for DcmObject and derived classes to get a deep copy of an object. Internally the assignment operator is called if the given DcmObject parameter is of the same type as "this" object instance. If not, an error is returned. This function permits copying an object by value in a virtual way which therefore is different to just calling the assignment operator of DcmElement which could result in slicing the object.

Parameters:
rhs- [in] The instance to copy from. Has to be of the same class type as "this" object
Returns:
EC_Normal if copying was successful, error otherwise

Reimplemented from DcmByteString.

virtual OFCondition DcmUniqueIdentifier::getOFString ( OFString stringVal,
const unsigned long  pos,
OFBool  normalize = OFTrue 
) [virtual]

get a copy of a particular string component

Parameters:
stringValvariable in which the result value is stored
posindex of the value in case of multi-valued elements (0..vm-1)
normalizedelete trailing NULL-byte(s) if OFTrue
Returns:
status, EC_Normal if successful, an error code otherwise

Reimplemented from DcmByteString.

virtual DcmEVR DcmUniqueIdentifier::ident ( ) const [virtual]

get element type identifier

Returns:
type identifier of this class (EVR_UI)

Reimplemented from DcmByteString.

virtual OFCondition DcmUniqueIdentifier::makeMachineByteString ( const Uint32  length = 0) [protected, virtual]

convert currently stored string value to internal representation.

It removes any leading, embedded and trailing space character and recomputes the string length. This manipulation attempts to correct problems with incorrectly encoded UIDs which have been observed in some images.

Parameters:
lengthnumber of characters of the string value (optional)
Returns:
status, EC_Normal if successful, an error code otherwise

Reimplemented from DcmByteString.

DcmUniqueIdentifier& DcmUniqueIdentifier::operator= ( const DcmUniqueIdentifier obj)

assignment operator

Parameters:
objelement to be assigned/copied
Returns:
reference to this object
virtual void DcmUniqueIdentifier::print ( STD_NAMESPACE ostream &  out,
const size_t  flags = 0,
const int  level = 0,
const char *  pixelFileName = NULL,
size_t *  pixelCounter = NULL 
) [virtual]

print element to a stream.

The output format of the value is a backslash separated sequence of string components. In case of a single component the UID number is mapped to the corresponding UID name (using "dcmFindNameOfUID()") if available. A "=" is used as a prefix to distinguish the UID name from the UID number. NB: This mapping of UID names only works for single-valued strings.

Parameters:
outoutput stream
flagsoptional flag used to customize the output (see DCMTypes::PF_xxx)
levelcurrent level of nested items. Used for indentation.
pixelFileNamenot used
pixelCounternot used

Reimplemented from DcmByteString.

virtual OFCondition DcmUniqueIdentifier::putString ( const char *  stringVal) [virtual]

set element value from the given character string.

If the string starts with a "=" the subsequent characters are interpreted as a UID name and mapped to the corresponding UID number (using "dcmFindUIDFromName()") if possible. Otherwise the leading "=" is removed. NB: This mapping of UID names only works for single-valued input strings.

Parameters:
stringValinput character string (possibly multi-valued)
Returns:
status, EC_Normal if successful, an error code otherwise

Reimplemented from DcmByteString.

virtual OFCondition DcmUniqueIdentifier::putString ( const char *  stringVal,
const Uint32  stringLen 
) [virtual]

set element value from the given character string.

If the string starts with a "=" the subsequent characters are interpreted as a UID name and mapped to the corresponding UID number (using "dcmFindUIDFromName()") if possible. Otherwise the leading "=" is removed. NB: This mapping of UID names only works for single-valued input strings. The length of the string has to be specified explicitly. The string can, therefore, also contain more than one NULL byte.

Parameters:
stringValinput character string (possibly multi-valued)
stringLenlength of the string (number of characters without the trailing NULL byte)
Returns:
status, EC_Normal if successful, an error code otherwise

Reimplemented from DcmByteString.


The documentation for this class was generated from the following file:


Generated on Tue May 15 2012 for DCMTK Version 3.6.1 20120515 by Doxygen 1.7.5.1-20111027