DCMTK: DcmDictEntry Class Reference

DCMTK Version 3.6.9 OFFIS DICOM Toolkit

Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
DcmDictEntry Class Reference

each object of this class manages one entry of the global DICOM data dictionary. More...

Inheritance diagram for DcmDictEntry:

## Public Member Functions
| DcmDictEntry (Uint16 g, Uint16 e, DcmVR vr, const char *nam, int vmMin, int vmMax, const char *vers, OFBool doCopyStrings, const char *pcreator)
| constructor
| DcmDictEntry (Uint16 g, Uint16 e, Uint16 ug, Uint16 ue, DcmVR vr, const char *nam, int vmMin, int vmMax, const char *vers, OFBool doCopyStrings, const char *pcreator)
| constructor for repeating tags
| DcmDictEntry (const DcmDictEntry &e)
| copy constructor
| ~DcmDictEntry ()
| destructor
DcmVR | getVR () const
| returns VR object by value
DcmEVR | getEVR () const
| returns VR code
const char * | getStandardVersion () const
| returns standard version string, may be NULL
const char * | getTagName () const
| returns tag name
const char * | getPrivateCreator () const
| returns private creator identifier, may be NULL
int | privateCreatorMatch (const char *c) const
| checks if the private creator identifier equals the given string
int | privateCreatorMatch (const DcmDictEntry &arg) const
| checks if the private creator identifier of this object matches the one of the given object.
int | getVMMin () const
| returns lower limit for VM (value multiplicity)
int | getVMMax () const
| returns upper limit for VM (value multiplicity), DcmVariableVM for unlimited
OFBool | isFixedSingleVM () const
| returns true if element has a single valid VM value
OFBool | isFixedRangeVM () const
| returns true if element has a fixed VM range
OFBool | isVariableRangeVM () const
| returns true if element has a variable VM range (no upper limit)
void | setUpper (const DcmTagKey &key)
| converts entry into repeating tag entry by defining an upper limit for group and element, taken from the given tag key.
void | setUpperGroup (Uint16 ug)
| converts entry into repeating tag entry by defining an upper limit for tag group
void | setUpperElement (Uint16 ue)
| converts entry into repeating tag entry by defining an upper limit for tag element
Uint16 | getUpperGroup () const
| returns upper limit for tag group
Uint16 | getUpperElement () const
| returns upper limit for tag element
DcmTagKey | getKey () const
| returns attribute tag as DcmTagKey object by value
DcmTagKey | getUpperKey () const
| returns upper limits for attribute tag as DcmTagKey object by value
int | isRepeatingGroup () const
| returns true if entry is has a repeating group
int | isRepeatingElement () const
| returns true if entry is has a repeating element
int | isRepeating () const
| returns true if entry is repeating (group or element)
DcmDictRangeRestriction | getGroupRangeRestriction () const
| returns group range restriction
void | setGroupRangeRestriction (DcmDictRangeRestriction rr)
| sets group range restriction
DcmDictRangeRestriction | getElementRangeRestriction () const
| returns element range restriction
void | setElementRangeRestriction (DcmDictRangeRestriction rr)
| sets element range restriction
int | contains (const DcmTagKey &key, const char *privCreator) const
| checks if the given tag key and private creator identifier are covered by this object.
int | contains (const char *name) const
| checks if this entry contains the given name
int | subset (const DcmDictEntry &e) const
| checks if this entry describes a true subset of tag range described by the given entry.
int | setEQ (const DcmDictEntry &e) const
| checks if this entry describes the same tag range as the given entry.
Public Member Functions inherited from DcmTagKey
| DcmTagKey ()
| default constructor
| DcmTagKey (const DcmTagKey &key)
| copy constructor
| DcmTagKey (Uint16 g, Uint16 e)
| constructor
virtual | ~DcmTagKey ()
| destructor
void | set (const DcmTagKey &key)
| set value to given tag key
void | set (Uint16 g, Uint16 e)
| set value to given group and element
void | setGroup (Uint16 g)
| set group to given number
void | setElement (Uint16 e)
| set element to given number
Uint16 | getGroup () const
| returns group number
Uint16 | getElement () const
| returns element number
DcmTagKey | getBaseTag () const
| returns base tag, i.e.
OFBool | isGroupLength () const
| checks whether the tag key is a valid group length element.
OFBool | isPrivate () const
| returns true if the tag key is private, i.e.
OFBool | isPrivateReservation () const
| returns true, if tag is a private reservation tag of the form (gggg,00xx) with "gggg" being odd and "xx" in the range of 10 and FF.
OFBool | hasValidGroup () const
| returns true, if group is valid (permitted in DICOM command or data sets).
Uint32 | hash () const
| generate a simple hash code for this attribute tag.
DcmTagKey & | operator= (const DcmTagKey &key)
| assignment operator for initializing this tag key from an existing one
OFBool | operator== (const DcmTagKey &key) const
| comparison operator.
OFBool | operator!= (const DcmTagKey &key) const
| negation operator.
OFBool | operator< (const DcmTagKey &key) const
| 'less than' operator.
OFBool | operator> (const DcmTagKey &key) const
| 'greater than' operator.
OFBool | operator<= (const DcmTagKey &key) const
| 'less or equal' operator.
OFBool | operator>= (const DcmTagKey &key) const
| 'greater or equal' operator.
OFString | toString () const
| convert tag key to string having the form "(gggg,eeee)".
OFBool | isSignableTag () const
| returns true if a data element with the given tag key can be digitally signed, false otherwise

## Private Member Functions
DcmDictEntry & | operator= (const DcmDictEntry &)
| private undefined copy assignment operator

## Private Attributes
DcmTagKey | upperKey
| upper limit of repeating group and element (lower limit is inherited from DcmTagKey)
DcmVR | valueRepresentation
| value representation
const char * | tagName
| attribute name
int | valueMultiplicityMin
| lower limit for VM
int | valueMultiplicityMax
| upper limit for VM
const char * | standardVersion
| standard version name, may be NULL
OFBool | stringsAreCopies
| true if strings are copies (i.e. should be deleted upon destruction)
DcmDictRangeRestriction | groupRangeRestriction
| restriction (even, odd, unrestricted) for group range
DcmDictRangeRestriction | elementRangeRestriction
| restriction (even, odd, unrestricted) for element range
const char * | privateCreator
| private creator identifier, may be NULL

## Friends
DCMTK_DCMDATA_EXPORT STD_NAMESPACE ostream & | operator<< (STD_NAMESPACE ostream &s, const DcmDictEntry &e)
| friend operator<<

## Additional Inherited Members
Protected Member Functions inherited from DcmTagKey
int | groupLT (const DcmTagKey &key) const
| less-than operation comparing only group numbers
int | groupGT (const DcmTagKey &key) const
| greater-than operation comparing only group numbers
int | groupEQ (const DcmTagKey &key) const
| comparison operation comparing only group numbers
int | elementLT (const DcmTagKey &key) const
| less-than operation comparing only element numbers
int | elementGT (const DcmTagKey &key) const
| greater-than operation comparing only element numbers
int | elementEQ (const DcmTagKey &key) const
| comparison operation comparing only element numbers

## Detailed Description

each object of this class manages one entry of the global DICOM data dictionary.

## Constructor & Destructor Documentation

## ◆ DcmDictEntry() [1/3]

DcmDictEntry::DcmDictEntry | ( | Uint16 | g,
|  | Uint16 | e,
|  | DcmVR | vr,
|  | const char * | nam,
|  | int | vmMin,
|  | int | vmMax,
|  | const char * | vers,
|  | OFBool | doCopyStrings,
|  | const char * | pcreator )

constructor

Parameters

  g | attribute tag group
  e | attribute tag element
  vr | value representation
  nam | attribute name
  vmMin | lower limit for value multiplicity
  vmMax | upper limit for value multiplicity, DcmVariableVM for unlimited
  vers | standard version name, may be NULL
  doCopyStrings | true if strings should be copied, false if only referenced
  pcreator | private creator identifier, may be NULL (for standard tags)

Referenced by DcmDictEntry(), operator<<, operator=(), privateCreatorMatch(), setEQ(), and subset().

## ◆ DcmDictEntry() [2/3]

DcmDictEntry::DcmDictEntry | ( | Uint16 | g,
|  | Uint16 | e,
|  | Uint16 | ug,
|  | Uint16 | ue,
|  | DcmVR | vr,
|  | const char * | nam,
|  | int | vmMin,
|  | int | vmMax,
|  | const char * | vers,
|  | OFBool | doCopyStrings,
|  | const char * | pcreator )

constructor for repeating tags

Parameters

  g | attribute tag group lower limit
  e | attribute tag element lower limit
  ug | attribute tag group upper limit
  ue | attribute tag element upper limit
  vr | value representation
  nam | attribute name
  vmMin | lower limit for value multiplicity
  vmMax | upper limit for value multiplicity, DcmVariableVM for unlimited
  vers | standard version name, may be NULL
  doCopyStrings | true if strings should be copied, false if only referenced
  pcreator | private creator identifier, may be NULL (for standard tags)

## ◆ DcmDictEntry() [3/3]

DcmDictEntry::DcmDictEntry | ( | const DcmDictEntry & | e | ) |

copy constructor

Parameters

  e | the entry to copy

References DcmDictEntry().

## Member Function Documentation

## ◆ contains() [1/2]

int DcmDictEntry::contains | ( | const char * | name | ) | const
| inline

checks if this entry contains the given name

Parameters

  name | attribute name, must not be NULL

Returns
  true if tagName matches the given string

References tagName.

## ◆ contains() [2/2]

int DcmDictEntry::contains | ( | const DcmTagKey & | key,
|  | const char * | privCreator ) const
| inline

checks if the given tag key and private creator identifier are covered by this object.

Parameters

  key | tag key
  privCreator | private creator identifier, may be NULL

Returns
  true if this entry contains the given tag for the given private creator identifier

References DcmTagKey::DcmTagKey(), DcmTagKey::getElement(), getElementRangeRestriction(), DcmTagKey::getGroup(), getGroupRangeRestriction(), getUpperElement(), getUpperGroup(), and privateCreatorMatch().

## ◆ privateCreatorMatch() [1/2]

int DcmDictEntry::privateCreatorMatch | ( | const char * | c | ) | const
| inline

checks if the private creator identifier equals the given string

Parameters

  c | string to compare with, may be NULL

Returns
  true if equal, false otherwise

References privateCreator.

Referenced by contains(), privateCreatorMatch(), setEQ(), and subset().

## ◆ privateCreatorMatch() [2/2]

int DcmDictEntry::privateCreatorMatch | ( | const DcmDictEntry & | arg | ) | const
| inline

checks if the private creator identifier of this object matches the one of the given object.

Parameters

  arg | dictionary entry to compare with

Returns
  true if private creator identifiers are equal, false otherwise

References DcmDictEntry(), privateCreator, and privateCreatorMatch().

## ◆ setElementRangeRestriction()

void DcmDictEntry::setElementRangeRestriction | ( | DcmDictRangeRestriction | rr | ) |
| inline

sets element range restriction

Parameters

  rr | the new range restriction

References elementRangeRestriction.

## ◆ setEQ()

int DcmDictEntry::setEQ | ( | const DcmDictEntry & | e | ) | const
| inline

checks if this entry describes the same tag range as the given entry.

Parameters

  e | entry to compare with

Returns
  true if objects describe the same tag range

References DcmDictEntry(), DcmTagKey::getElement(), getElementRangeRestriction(), DcmTagKey::getGroup(), getGroupRangeRestriction(), getUpperElement(), getUpperGroup(), and privateCreatorMatch().

## ◆ setGroupRangeRestriction()

void DcmDictEntry::setGroupRangeRestriction | ( | DcmDictRangeRestriction | rr | ) |
| inline

sets group range restriction

Parameters

  rr | the new range restriction

References groupRangeRestriction.

## ◆ setUpper()

void DcmDictEntry::setUpper | ( | const DcmTagKey & | key | ) |
| inline

converts entry into repeating tag entry by defining an upper limit for group and element, taken from the given tag key.

Parameters

  key | tag key containing upper limit for group and element

References DcmTagKey::DcmTagKey(), and upperKey.

## ◆ setUpperElement()

void DcmDictEntry::setUpperElement | ( | Uint16 | ue | ) |
| inline

converts entry into repeating tag entry by defining an upper limit for tag element

Parameters

  ue | upper limit for tag element

References upperKey.

## ◆ setUpperGroup()

void DcmDictEntry::setUpperGroup | ( | Uint16 | ug | ) |
| inline

converts entry into repeating tag entry by defining an upper limit for tag group

Parameters

  ug | upper limit for tag group

References upperKey.

## ◆ subset()

int DcmDictEntry::subset | ( | const DcmDictEntry & | e | ) | const
| inline

checks if this entry describes a true subset of tag range described by the given entry.

Parameters

  e | entry to compare with

Returns
  true if this object is subset of e

References DcmDictEntry(), DcmTagKey::getElement(), DcmTagKey::getGroup(), getUpperElement(), getUpperGroup(), and privateCreatorMatch().

## Related Definitions

## ◆ operator<<

DCMTK_DCMDATA_EXPORT STD_NAMESPACE ostream & operator<< | ( | STD_NAMESPACE ostream & | s,
|  | const DcmDictEntry & | e )
| friend

friend operator<<

Parameters

  s | the ostream to append upon
  e | the dictionary entry

Returns
  the appended on ostream

References DcmDictEntry().

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

- dcmdata/include/dcmtk/dcmdata/dcdicent.h

Generated on Wed Apr 30 2025 for DCMTK Version 3.6.9 by Doxygen 1.13.2