DcmDataDictionary Class Reference

this class implements a loadable DICOM Data Dictionary More...

List of all members.

Public Member Functions

 DcmDataDictionary (OFBool loadBuiltin, OFBool loadExternal)
 constructor
 ~DcmDataDictionary ()
 destructor
OFBool isDictionaryLoaded () const
 checks if a data dictionary is loaded (excluding the skeleton dictionary)
int numberOfNormalTagEntries () const
 returns the number of normal (non-repeating) tag entries
int numberOfRepeatingTagEntries () const
 returns the number of repeating tag entries
int numberOfEntries () const
 returns the number of dictionary entries that were loaded either from file or from a built-in dictionary or both.
int numberOfSkeletonEntries () const
 returns the number of skeleton entries.
OFBool loadDictionary (const char *fileName, OFBool errorIfAbsent=OFTrue)
 load a particular dictionary from file.
const DcmDictEntryfindEntry (const DcmTagKey &key, const char *privCreator) const
 dictionary lookup for the given tag key and private creator name.
const DcmDictEntryfindEntry (const char *name) const
 dictionary lookup for the given attribute name.
void clear ()
 deletes all dictionary entries
void addEntry (DcmDictEntry *entry)
 adds an entry to the dictionary.
DcmHashDictIterator normalBegin ()
 returns an iterator to the start of the normal (non-repeating) dictionary
DcmHashDictIterator normalEnd ()
 returns an iterator to the end of the normal (non-repeating) dictionary
DcmDictEntryListIterator repeatingBegin ()
 returns an iterator to the start of the repeating tag dictionary
DcmDictEntryListIterator repeatingEnd ()
 returns an iterator to the end of the repeating tag dictionary

Private Member Functions

DcmDataDictionaryoperator= (const DcmDataDictionary &)
 private undefined assignment operator
 DcmDataDictionary (const DcmDataDictionary &)
 private undefined copy constructor
OFBool loadExternalDictionaries ()
 loads external dictionaries defined via environment variables
void loadBuiltinDictionary ()
 loads a builtin (compiled) data dictionary.
OFBool loadSkeletonDictionary ()
 loads the skeleton dictionary (the bare minimum needed to run)
const DcmDictEntryfindEntry (const DcmDictEntry &entry) const
 looks up the given directory entry in the two dictionaries.
void deleteEntry (const DcmDictEntry &entry)
 deletes the given entry from either dictionary

Private Attributes

DcmHashDict hashDict
 dictionary of normal tags
DcmDictEntryList repDict
 dictionary of repeating tags
int skeletonCount
 the number of skeleton entries
OFBool dictionaryLoaded
 is a dictionary loaded (more than skeleton)


Detailed Description

this class implements a loadable DICOM Data Dictionary

Definition at line 64 of file dcdict.h.


Constructor & Destructor Documentation

DcmDataDictionary::DcmDataDictionary OFBool  loadBuiltin,
OFBool  loadExternal
 

constructor

Parameters:
loadBuiltin flag indicating if a built-in data dictionary (if any) should be loaded.
loadExternal flag indicating if an external data dictionary should be read from file.


Member Function Documentation

void DcmDataDictionary::addEntry DcmDictEntry entry  ) 
 

adds an entry to the dictionary.

Must be allocated via new. The entry becomes the property of the dictionary and will be deallocated (via delete) upon clear() or dictionary destruction. If an equivalent entry already exists it will be replaced by the new entry and the old entry deallocated (via delete).

Parameters:
entry pointer to new entry

const DcmDictEntry* DcmDataDictionary::findEntry const DcmDictEntry entry  )  const [private]
 

looks up the given directory entry in the two dictionaries.

Returns:
pointer to entry if found, NULL otherwise

const DcmDictEntry* DcmDataDictionary::findEntry const char *  name  )  const
 

dictionary lookup for the given attribute name.

First the normal tag dictionary is searched. If not found then the repeating tag dictionary is searched. Only considers standard attributes (i. e. without private creator)

Parameters:
name attribute name

const DcmDictEntry* DcmDataDictionary::findEntry const DcmTagKey key,
const char *  privCreator
const
 

dictionary lookup for the given tag key and private creator name.

First the normal tag dictionary is searched. If not found then the repeating tag dictionary is searched.

Parameters:
key tag key
privCreator private creator name, may be NULL

OFBool DcmDataDictionary::isDictionaryLoaded  )  const [inline]
 

checks if a data dictionary is loaded (excluding the skeleton dictionary)

Returns:
true if loaded, false if no dictionary is present

Definition at line 82 of file dcdict.h.

References dictionaryLoaded.

void DcmDataDictionary::loadBuiltinDictionary  )  [private]
 

loads a builtin (compiled) data dictionary.

Depending on which code is in use, this function may not do anything.

OFBool DcmDataDictionary::loadDictionary const char *  fileName,
OFBool  errorIfAbsent = OFTrue
 

load a particular dictionary from file.

Parameters:
fileName filename
errorIfAbsent causes the method to return false if the file cannot be opened
Returns:
false if the file contains a parse error or if the file could not be opened and errorIfAbsent was set, true otherwise.

OFBool DcmDataDictionary::loadExternalDictionaries  )  [private]
 

loads external dictionaries defined via environment variables

Returns:
true if successful

OFBool DcmDataDictionary::loadSkeletonDictionary  )  [private]
 

loads the skeleton dictionary (the bare minimum needed to run)

Returns:
true if successful

int DcmDataDictionary::numberOfSkeletonEntries  )  const [inline]
 

returns the number of skeleton entries.

The skeleton is a collection of dictionary entries which are always present, even if neither internal nor external dictionary have been loaded. It contains very basic things like item delimitation and sequence delimitation.

Definition at line 102 of file dcdict.h.

References skeletonCount.


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


Generated on 20 Dec 2005 for OFFIS DCMTK Version 3.5.4 by Doxygen 1.4.5