DCMTK: TID1600_ImageLibrary Class Reference

DCMTK Version 3.6.9 OFFIS DICOM Toolkit

Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | Static Protected Member Functions | List of all members
TID1600_ImageLibrary Class Reference

Implementation of DCMR Template: TID 1600 - Image Library (and included templates 1601-1607). More...

Inheritance diagram for TID1600_ImageLibrary:

## Public Types
enum | AddImageMode { withoutDescriptors , withAllDescriptors , withSelectedDescriptors , withoutSelectedDescriptors }
| add mode for image entries More...

## Public Member Functions
| TID1600_ImageLibrary (const OFBool createLibrary=OFTrue)
| (default) constructor
virtual OFBool | isValid () const
| check whether the current internal state is valid.
OFBool | hasImageLibrary () const
| check whether the content item 'Image Library' (TID 1600 - Row 1) is present.
OFBool | hasImageLibraryGroup () const
| check whether there is an image group in this image library (TID 1600 - Row 2)
OFCondition | createNewImageLibrary ()
| clear the internally stored tree of content items and create the mandatory content item 'Image Library' (TID 1600 - Row 1) as the root node of this template
OFCondition | addImageGroup ()
| add an image group to the image library.
OFCondition | addImageEntry (DcmItem &dataset, const AddImageMode mode, const ConceptNameList &descriptors=ConceptNameList(), const OFBool check=OFTrue)
| add an image entry to the current image group, i.e. add content items for TID 1601 (Image Library Entry).
OFCondition | addImageGroupDescriptors (DcmItem &dataset, const AddImageMode mode, const ConceptNameList &descriptors=ConceptNameList(), const OFBool check=OFTrue)
| add common image descriptors to the current image group, i.e. add content items items for TID 1602 (Image Library Entry Descriptors) and included templates.
OFCondition | getImageEntryModality (DSRCodedEntryValue &modalityCode)
| go to the most recently added image library entry and get the value of the descriptor 'Modality' (TID 1602 - Row 1)
OFCondition | moveCommonImageDescriptorsToImageGroups ()
| move common image descriptors from all image entries in this image library to their respective image groups.
OFCondition | setPETImageRadionuclide (const CID4020_PETRadionuclide &radionuclide, const OFBool check=OFTrue)
| set the value of the descriptor 'Radionuclide' (TID 1607 - Row 1) for the current (most recently added) PET image library entry.
OFCondition | setPETImageRadiopharmaceuticalAgent (const CID4021_PETRadiopharmaceutical &agent, const OFBool check=OFTrue)
| set the value of the descriptor 'Radiopharmaceutical Agent' (TID 1607 - Row 2) for the current (most recently added) PET image library entry.
OFCondition | setPETImageRadiopharmaceuticalStartDateTime (const OFString &dateTime, const OFBool check=OFTrue)
| set the value of the descriptor 'Radiopharmaceutical Start Date Time' (TID 1607 - Row 4) for the current (most recently added) PET image library entry.
OFCondition | setPETImageRadiopharmaceuticalStopDateTime (const OFString &dateTime, const OFBool check=OFTrue)
| set the value of the descriptor 'Radiopharmaceutical Stop Date Time' (TID 1607 - Row 5) for the current (most recently added) PET image library entry.
OFCondition | setPETImageRadiopharmaceuticalVolume (const CMR_SRNumericMeasurementValue &volume, const OFBool check=OFTrue)
| set the value of the descriptor 'Radiopharmaceutical Volume' (TID 1607 - Row 6) for the current (most recently added) PET image library entry.
OFCondition | setPETImageRadionuclideTotalDose (const CMR_SRNumericMeasurementValue &totalDose, const OFBool check=OFTrue)
| set the value of the descriptor 'Radiopharmaceutical Total Dose' (TID 1607 - Row 7) for the current (most recently added) PET image library entry.
Public Member Functions inherited from DSRSubTemplate
| DSRSubTemplate (const OFString &templateIdentifier, const OFString &mappingResource, const OFString &mappingResourceUID="")
| constructor
| DSRSubTemplate (const DSRSubTemplate &subTemplate)
| copy constructor.
virtual | ~DSRSubTemplate ()
| destructor
virtual DSRSubTemplate * | clone () const
| clone this template.
virtual DSRDocumentSubTree * | cloneTree () const
| clone the internally stored subtree of this template.
virtual void | clear ()
| clear internal member variables.
OFBool | isRootTemplate () const
| check whether this template is a root template, i.e. describes a complete SR document tree starting from the root node
virtual const DSRDocumentSubTree & | getTree ()
| get read-only access to internally stored subtree.
virtual OFCondition | addExtraContentItem (const E_RelationshipType relationshipType, const E_ValueType valueType, const E_AddMode addMode=AM_afterCurrent)
| add extra content item to the current one (if the template is extensible).
virtual OFCondition | insertExtraTemplate (const DSRSubTemplate &subTemplate, const E_AddMode addMode=AM_belowCurrent, const E_RelationshipType defaultRelType=RT_unknown)
| insert tree from given extra template to internally stored subtree.
virtual OFBool | isCursorValid () const
| check whether the internal cursor, which points to the current content item, is valid
virtual OFCondition | print (STD_NAMESPACE ostream &stream, const size_t flags=0, const DSRPositionCounter *posCounter=NULL)
| print current SR document tree to specified output stream
virtual OFCondition | writeXML (STD_NAMESPACE ostream &stream, const size_t flags=0)
| write current SR document tree in XML format
size_t | countNodes (const OFBool searchIntoSubTemplates=OFFalse, const OFBool countIncludedTemplateNodes=OFTrue) const
| count number of content items (nodes) in the document tree.
virtual size_t | gotoNamedNode (const DSRCodedEntryValue &conceptName, const OFBool startFromRoot=OFTrue, const OFBool searchIntoSub=OFTrue)
| set internal cursor to a named node.
virtual size_t | gotoNextNamedNode (const DSRCodedEntryValue &conceptName, const OFBool searchIntoSub=OFTrue)
| set internal cursor to the next named node.
virtual size_t | gotoAnnotatedNode (const OFString &annotationText, const OFBool startFromRoot=OFTrue)
| set internal cursor to an annotated node.
virtual size_t | gotoNextAnnotatedNode (const OFString &annotationText)
| set internal cursor to the next annotated node.
virtual DSRContentItem & | getCurrentContentItem ()
| get reference to current content item.
virtual OFCondition | updateByReferenceRelationships (const OFBool updateIncludedTemplates=OFFalse)
| update the position strings used to encode by-reference relationships (if any).
Public Member Functions inherited from DSRTemplateCommon
virtual OFBool | hasTemplateIdentification () const
| check whether template identification is set
virtual OFBool | isTemplateIdentificationValid (const OFBool check=OFTrue) const
| check whether template identification is valid
virtual OFBool | isExtensible () const
| check whether template is extensible
virtual OFBool | isOrderSignificant () const
| check whether the order of content items in this template is significant
virtual OFBool | compareTemplateIdentication (const OFString &templateIdentifier, const OFString &mappingResource, const OFString &mappingResourceUID="") const
| compare template identification with given values
const OFString & | getTemplateIdentifier () const
| get template identifier
const OFString & | getMappingResource () const
| get mapping resource
const OFString & | getMappingResourceUID () const
| get optional mapping resource UID
virtual void | setExtensible (const OFBool mode=OFTrue)
| change mode specifying whether the template is extensible or non-extensible
virtual void | setOrderSignificant (const OFBool mode=OFTrue)
| change mode specifying whether the order of content items in this template is significant or non-significant

## Protected Member Functions
OFCondition | createImageLibrary ()
| create the mandatory content item 'Image Library' (TID 1600 - Row 1) as the root node of this template.
OFCondition | addImageEntryDescriptors (DSRDocumentSubTree &tree, DcmItem &dataset, const AddImageMode mode, const ConceptNameList &descriptors, const OFBool check)
| add image library entry descriptors (TID 1602) to given document subtree.
OFCondition | addModalitySpecificDescriptors (DSRDocumentSubTree &tree, DcmItem &dataset, const OFString &modality, const AddImageMode mode, const ConceptNameList &descriptors, const OFBool check)
| add image library entry descriptors (TID 1603 to 1607) to given document subtree depending on the given 'modality'.
OFCondition | addProjectionRadiographyDescriptors (DSRDocumentSubTree &tree, DcmItem &dataset, const AddImageMode mode, const ConceptNameList &descriptors, const OFBool check)
| add image library entry descriptors for projection radiography (TID 1603)
OFCondition | addCrossSectionalModalitiesDescriptors (DSRDocumentSubTree &tree, DcmItem &dataset, const AddImageMode mode, const ConceptNameList &descriptors, const OFBool check)
| add image library entry descriptors for cross-sectional modalities (TID 1604)
OFCondition | addComputedTomographyDescriptors (DSRDocumentSubTree &tree, DcmItem &dataset, const AddImageMode mode, const ConceptNameList &descriptors, const OFBool check)
| add image library entry descriptors for CT (TID 1605)
OFCondition | addMagneticResonanceDescriptors (DSRDocumentSubTree &tree, DcmItem &dataset, const AddImageMode mode, const ConceptNameList &descriptors, const OFBool check)
| add image library entry descriptors for MR (TID 1606)
OFCondition | addPositronEmissionTomographyDescriptors (DSRDocumentSubTree &tree, DcmItem &dataset, const AddImageMode mode, const ConceptNameList &descriptors, const OFBool check)
| add image library entry descriptors for PET (TID 1607).
OFCondition | goAndCheckImageLibraryEntry (const DSRCodedEntryValue &modalityCode)
| go to the most recently added image library entry and check the value of the associated descriptor 'Modality' (TID 1602 - Row 1)
OFCondition | setStringContentItemFromValue (const E_ValueType valueType, const DSRCodedEntryValue &conceptName, const OFString &stringValue, const OFString &annotationText, const OFBool check)
| search for a particular content item (given by the concept name and value type) and set its string value.
OFCondition | setCodeContentItemFromValue (const DSRCodedEntryValue &conceptName, const DSRCodedEntryValue &codeValue, const OFString &annotationText, const OFBool check)
| search for a particular CODE content item (given by the concept name) and set its coded entry value.
OFCondition | setNumericContentItemFromValue (const DSRCodedEntryValue &conceptName, const DSRNumericMeasurementValue &numericValue, const DSRCodedEntryValue &measurementUnit, const OFString &annotationText, const OFBool check)
| search for a particular NUM content item (given by the concept name) and set its numeric measurement value.
Protected Member Functions inherited from DSRSubTemplate
virtual void | updateTreeForOutput ()
| update the tree for subsequent output, e.g. for being printed or added to an SR document.
Protected Member Functions inherited from DSRDocumentSubTree
| DSRDocumentSubTree (DSRDocumentTreeNode *rootNode)
| special constructor that receives a pointer to the root node.
| DSRDocumentSubTree (const DSRDocumentTreeNodeCursor &startCursor, size_t stopAfterNodeID)
| special copy constructor that clones a particular subtree only
void | swap (DSRDocumentSubTree &tree)
| fast, non-throwing swap function.
virtual DSRDocumentTreeNode * | getNode () const
| get pointer to current node.
virtual size_t | addNode (DSRDocumentTreeNode *node, const E_AddMode addMode=AM_afterCurrent)
| add new node to the current one.
virtual size_t | replaceNode (DSRDocumentTreeNode *node)
| replace current node by the given one.
virtual DSRDocumentTreeNode * | extractNode ()
| extract current node from tree.
virtual DSRDocumentTreeNode * | getAndRemoveRootNode ()
| get pointer to root node and "forget" the internal reference to this node.
virtual size_t | removeNode ()
| remove current node from tree.
virtual OFCondition | includeTemplate (const DSRSharedSubTemplate &subTemplate, const E_AddMode addMode=AM_belowCurrent, const E_RelationshipType defaultRelType=RT_unknown)
| include specified sub-template, i.e. add a new DSRIncludedTemplateTreeNode, which references this template, to the current content item.
virtual OFCondition | expandIncludedTemplates (DSRDocumentSubTree *tree) const
| expand all "included template" content items in a given (sub)tree.
template<typename T_Cursor>
OFCondition | checkByReferenceRelationships (const size_t mode=0, const size_t flags=0)
| check the by-reference relationships (if any) for validity.
virtual void | resetReferenceTargetFlag ()
| reset flag for all content items whether they are target of a by-reference relationship.
virtual OFCondition | checkSubTreeConstraints (const DSRDocumentSubTree *tree, const DSRIODConstraintChecker *checker) const
| check whether the given subtree complies with the constraints of the given checker
virtual OFBool | validByReferenceRelationship (const OFString &sourcePosition, const OFString &targetPosition)
| check whether a by-reference relationship from a given source to a target node (specified by the position strings) is valid, i.e. is allowed according to the DICOM standard.
| DSRDocumentSubTree ()
| default constructor
| DSRDocumentSubTree (const DSRDocumentSubTree &tree)
| copy constructor.
virtual | ~DSRDocumentSubTree ()
| destructor
DSRDocumentSubTree & | operator= (DSRDocumentSubTree tree)
| assignment operator.
virtual OFBool | isValidDocumentTree (const E_RelationshipType defaultRelType=RT_unknown) const
| check whether this subtree is a valid document tree.
virtual OFBool | isExpandedDocumentTree () const
| check whether this subtree is an expanded document tree.
virtual OFBool | hasTemplateIdentification () const
| check whether template identification is set
virtual OFBool | canUseTemplateIdentification () const
| check whether template identification is possible at all.
virtual const DSRDocumentTreeNode * | getCurrentNode () const
| get read-only access to current node (content item)
virtual OFBool | getCursorToRootNode (DSRDocumentTreeNodeCursor &cursor) const
| get a cursor to the root node of this document tree.
virtual OFBool | getCursorToRootNode (DSRIncludedTemplateNodeCursor &cursor) const
| get a cursor to the root node of this document tree.
virtual OFBool | getCursorToCurrentNode (DSRDocumentTreeNodeCursor &cursor) const
| get a cursor to the current node of this document tree.
virtual OFBool | getCursorToSubTree (DSRDocumentTreeNodeCursor &cursor) const
| get a cursor to the subtree below the current node.
size_t | countNodes (const OFBool searchIntoSubTemplates=OFFalse, const OFBool countIncludedTemplateNodes=OFTrue) const
| count number of content items (nodes) in the document tree.
virtual size_t | gotoMatchingNode (const DSRDocumentTreeNodeFilter &filter, const OFBool startFromRoot=OFTrue, const OFBool searchIntoSub=OFTrue)
| set internal cursor to a matching node.
virtual size_t | gotoNextMatchingNode (const DSRDocumentTreeNodeFilter &filter, const OFBool searchIntoSub=OFTrue)
| set internal cursor to the next matching node.
virtual size_t | gotoNamedChildNode (const DSRCodedEntryValue &conceptName)
| set internal cursor to a named node (starting from the first child of the current node and searching on this level only).
virtual size_t | gotoNamedNodeInSubTree (const DSRCodedEntryValue &conceptName, const OFBool searchIntoSub=OFTrue)
| set internal cursor to a named node in the subtree below the current node.
virtual OFBool | canAddContentItem (const E_RelationshipType relationshipType, const E_ValueType valueType, const E_AddMode addMode=AM_afterCurrent) const
| check whether specified content item can be added to the current one.
virtual OFBool | canAddByReferenceRelationship (const E_RelationshipType relationshipType, const E_ValueType targetValueType) const
| check whether specified by-reference relationship can be added to the current content item.
virtual size_t | addContentItem (const E_RelationshipType relationshipType, const E_ValueType valueType, const E_AddMode addMode=AM_afterCurrent)
| add specified content item to the current one.
virtual OFCondition | addContentItem (DSRDocumentTreeNode *node, const E_AddMode addMode=AM_afterCurrent, const OFBool deleteIfFail=OFFalse)
| add specified content item to the current one.
virtual OFCondition | addContentItem (const E_RelationshipType relationshipType, const E_ValueType valueType, const DSRCodedEntryValue &conceptName, const OFBool check=OFTrue)
| add specified content item after the current one.
virtual OFCondition | addChildContentItem (const E_RelationshipType relationshipType, const E_ValueType valueType, const DSRCodedEntryValue &conceptName, const OFBool check=OFTrue)
| add specified content item below the current one.
virtual size_t | addByReferenceRelationship (const E_RelationshipType relationshipType, const size_t referencedNodeID)
| add specified by-reference relationship to the current content item.
virtual OFBool | canInsertSubTree (const DSRDocumentSubTree *tree, const E_AddMode addMode=AM_belowCurrent, const E_RelationshipType defaultRelType=RT_unknown) const
| check whether specified subtree can be inserted at the current position, i.e. added to the current content item.
virtual OFCondition | insertSubTree (DSRDocumentSubTree *tree, const E_AddMode addMode=AM_belowCurrent, const E_RelationshipType defaultRelType=RT_unknown, const OFBool deleteIfFail=OFFalse)
| insert specified subtree to this tree, i.e. add it to the current content item.
virtual DSRDocumentSubTree * | extractSubTree ()
| extract a subtree, i.e. a fragment from this tree.
virtual size_t | removeCurrentContentItem ()
| remove current content item from tree.
virtual OFCondition | removeSubTree (const size_t searchID=0)
| remove a subtree from this tree.
virtual DSRDocumentTreeNode * | cloneCurrentTreeNode () const
| clone the current tree node.
virtual DSRDocumentSubTree * | cloneSubTree (const size_t stopAfterNodeID=0) const
| clone a subtree, i.e. a fragment of this tree.
virtual OFCondition | createExpandedSubTree (DSRDocumentSubTree *&tree) const
| created an expanded version of this (sub)tree.
virtual OFCondition | setObservationDateTime (const OFString &observationDateTime, const OFBool check=OFTrue)
| set observation date/time for all content items in the document tree.
virtual OFBool | compareTemplateIdentification (const OFString &templateIdentifier, const OFString &mappingResource, const OFString &mappingResourceUID="") const
| compare template identification of the root node with given values.
virtual OFCondition | getTemplateIdentification (OFString &templateIdentifier, OFString &mappingResource) const
| get template identifier and mapping resource from the root node of this tree.
virtual OFCondition | getTemplateIdentification (OFString &templateIdentifier, OFString &mappingResource, OFString &mappingResourceUID) const
| get template identifier, mapping resource and optional mapping resource UID from the root node of this tree.
virtual OFCondition | setTemplateIdentification (const OFString &templateIdentifier, const OFString &mappingResource, const OFString &mappingResourceUID="", const OFBool check=OFTrue)
| set template identifier and mapping resource to the root node of this tree.
Protected Member Functions inherited from DSRTree< DSRDocumentTreeNode >
| DSRTree (DSRDocumentTreeNode *rootNode)
| special constructor that receives a pointer to the root node.
| DSRTree (const DSRTreeNodeCursor< DSRDocumentTreeNode > &startCursor, size_t stopAfterNodeID)
| special copy constructor that clones a particular subtree only
void | swap (DSRTree< DSRDocumentTreeNode > &tree)
| fast, non-throwing swap function.
virtual DSRDocumentTreeNode * | getRoot () const
| get pointer to root node
virtual void | deleteTreeFromRootNode (DSRDocumentTreeNode *rootNode)
| delete a tree given by its root node.
| DSRTree ()
| default constructor
| DSRTree (const DSRTree< DSRDocumentTreeNode > &tree)
| copy constructor.
virtual | ~DSRTree ()
| destructor
DSRTree & | operator= (DSRTree< DSRDocumentTreeNode > tree)
| assignment operator.
void | clearAnnotations ()
| clear annotations of all tree nodes
OFBool | isEmpty () const
| check whether tree has any nodes
size_t | countNodes () const
| count number of nodes in the tree.
size_t | getNextNodeID () const
| get ID of the next node to be created.
size_t | gotoRoot ()
| set internal cursor to root node
size_t | gotoNode (const size_t searchID, const OFBool startFromRoot=OFTrue)
| set internal cursor to specified node
size_t | gotoNode (const OFString &reference, const OFBool startFromRoot=OFTrue)
| set internal cursor to specified node
size_t | gotoNode (const DSRTreeNodeAnnotation &annotation, const OFBool startFromRoot=OFTrue)
| set internal cursor to specified node
size_t | gotoNode (const DSRDocumentTreeNode &nodeValue, const OFBool startFromRoot=OFTrue)
| set internal cursor to specified node (given by its value).
Protected Member Functions inherited from DSRTreeNodeCursor< DSRDocumentTreeNode >
void | swap (DSRTreeNodeCursor< DSRDocumentTreeNode > &cursor)
| fast, non-throwing swap function.
void | clearNodeCursorStack ()
| clear the internal node cursor stack
const DSRTreeNodeCursor< DSRDocumentTreeNode > & | getCursor () const
| get cursor
void | setCursor (const DSRTreeNodeCursor< DSRDocumentTreeNode > &cursor)
| set cursor to specified object
size_t | setCursor (DSRDocumentTreeNode *node)
| set cursor to specified node.
DSRDocumentTreeNode * | getChild () const
| get pointer to first child node
| DSRTreeNodeCursor ()
| default constructor
| DSRTreeNodeCursor (const DSRTreeNodeCursor< DSRDocumentTreeNode > &cursor)
| copy constructor
| DSRTreeNodeCursor (DSRDocumentTreeNode *node, const DSRPositionCounter *position=NULL)
| constructor.
virtual | ~DSRTreeNodeCursor ()
| destructor
DSRTreeNodeCursor< DSRDocumentTreeNode > & | operator= (const DSRTreeNodeCursor< DSRDocumentTreeNode > &cursor)
| assignment operator
DSRTreeNodeCursor< DSRDocumentTreeNode > & | operator= (DSRDocumentTreeNode *node)
| assignment operator.
virtual size_t | countChildNodes (const OFBool searchIntoSub=OFTrue) const
| count number of children of the current node.
OFBool | hasParentNode () const
| check whether the current node has a parent
OFBool | hasChildNodes () const
| check whether the current node has any children
OFBool | hasPreviousNode () const
| check whether the current node has a preceding sibling
OFBool | hasNextNode () const
| check whether the current node has a following sibling
OFBool | hasSiblingNodes () const
| check whether the current node has any siblings
virtual const DSRDocumentTreeNode * | getParentNode () const
| get pointer to parent node.
virtual const DSRDocumentTreeNode * | getChildNode () const
| get pointer to first child node.
virtual const DSRDocumentTreeNode * | getPreviousNode () const
| get pointer to previous node.
virtual const DSRDocumentTreeNode * | getNextNode () const
| get pointer to next node.
virtual size_t | gotoFirst ()
| goto first node on the same level (first sibling).
virtual size_t | gotoLast ()
| goto last node on the same level (last sibling).
virtual size_t | gotoPrevious ()
| goto previous node on the same level (preceding sibling)
virtual size_t | gotoNext ()
| goto next node on the same level (following sibling)
virtual size_t | goUp ()
| goto parent node (one level up)
virtual size_t | goDown ()
| goto first child node (one level down)
virtual size_t | gotoParent ()
| goto parent node (one level up)
virtual size_t | gotoChild ()
| goto first child node (one level down)
virtual size_t | iterate (const OFBool searchIntoSub=OFTrue)
| iterate over all nodes (starting from current position!)
size_t | gotoNode (const size_t searchID)
| set cursor to specified node.
size_t | gotoNode (const OFString &position, const char separator='.')
| set cursor to specified node.
size_t | gotoNode (const DSRTreeNodeAnnotation &annotation)
| set cursor to specified node.
size_t | gotoNode (const DSRDocumentTreeNode &nodeValue)
| set cursor to specified node.
size_t | getNodeID () const
| get current node ID.
size_t | getLevel () const
| get current level.
DSRPositionCounter & | getPositionCounter ()
| get reference to internal position counter.
const OFString & | getPosition (OFString &position, const char separator='.') const
| get position string of the current node.
virtual | ~DSRTypes ()
| destructor.
Protected Member Functions inherited from DSRTemplateCommon
| DSRTemplateCommon (const OFString &templateIdentifier, const OFString &mappingResource, const OFString &mappingResourceUID="")
| constructor
virtual | ~DSRTemplateCommon ()
| destructor
void | clearEntriesInNodeList ()
| clear all entries in the list of node IDs, i.e. set them to their initial value, which is 0
void | reserveEntriesInNodeList (const size_t count, const OFBool initialize=OFFalse)
| reserve a certain number of entries in the list of node IDs.
void | storeEntryInNodeList (const size_t pos, const size_t nodeID)
| store given entry at a certain position in the list of node IDs
size_t | getEntryFromNodeList (const size_t pos) const
| get a particular entry from the list of node IDs
size_t | gotoEntryFromNodeList (DSRDocumentTreeNodeCursor &cursor, const size_t pos) const
| set given cursor to a specific node
size_t | gotoEntryFromNodeList (DSRDocumentSubTree *tree, const size_t pos)
| set internal cursor of a given document tree to a specific node
size_t | gotoLastEntryFromNodeList (DSRDocumentSubTree *tree, const size_t lastPos, const size_t firstPos=0)
| set internal cursor of a given document tree to a particular node.
virtual OFBool | hasTemplateIdentification () const
| check whether template identification is set
virtual OFBool | isTemplateIdentificationValid (const OFBool check=OFTrue) const
| check whether template identification is valid
virtual OFBool | isExtensible () const
| check whether template is extensible
virtual OFBool | isOrderSignificant () const
| check whether the order of content items in this template is significant
virtual OFBool | compareTemplateIdentication (const OFString &templateIdentifier, const OFString &mappingResource, const OFString &mappingResourceUID="") const
| compare template identification with given values
const OFString & | getTemplateIdentifier () const
| get template identifier
const OFString & | getMappingResource () const
| get mapping resource
const OFString & | getMappingResourceUID () const
| get optional mapping resource UID
virtual void | setExtensible (const OFBool mode=OFTrue)
| change mode specifying whether the template is extensible or non-extensible
virtual void | setOrderSignificant (const OFBool mode=OFTrue)
| change mode specifying whether the order of content items in this template is significant or non-significant

## Static Protected Member Functions
static OFBool | anyDescriptorsToBeAdded (const AddImageMode mode, const ConceptNameList &descriptors)
| check whether there are any descriptors to be added (based on given parameters)
static OFBool | checkDescriptorToBeAdded (const DSRBasicCodedEntry &conceptName, const AddImageMode mode, const ConceptNameList &descriptors)
| check whether a given descriptor should be added (based on further parameters)
static OFCondition | addStringContentItemFromDataset (DSRDocumentSubTree &tree, DcmItem &dataset, const DcmTagKey &tagKey, const signed long pos, const E_ValueType valueType, const DSRCodedEntryValue &conceptName, const OFString &annotationText, const OFBool check)
| add a content item with a string value copied from the given dataset.
static OFCondition | addCodeContentItemFromDataset (DSRDocumentSubTree &tree, DcmItem &dataset, const DcmTagKey &tagKey, const DSRCodedEntryValue &conceptName, const OFString &annotationText, const OFBool check)
| add a CODE content item with a coded entry value copied from the given dataset.
static OFCondition | addNumericContentItemFromDataset (DSRDocumentSubTree &tree, DcmItem &dataset, const DcmTagKey &tagKey, const signed long pos, const DSRCodedEntryValue &conceptName, const DSRCodedEntryValue &measurementUnit, const OFString &annotationText, const OFBool check)
| add a NUM content item with a numeric value copied from the given dataset.
Static Protected Member Functions inherited from DSRDocumentSubTree
static DSRDocumentSubTree * | cloneSubTree (const DSRDocumentTreeNodeCursor &startCursor, const size_t stopAfterNodeID=0)
| clone a particular subtree, i.e. a fragment of a tree
static const char * | documentTypeToSOPClassUID (const E_DocumentType documentType)
| convert SR document type to SOP class UID
static const char * | documentTypeToModality (const E_DocumentType documentType)
| convert SR document type to modality
static const char * | documentTypeToReadableName (const E_DocumentType documentType)
| convert SR document type to readable name.
static const char * | documentTypeToDocumentTitle (const E_DocumentType documentType, OFString &documentTitle)
| convert SR document type to document title.
static OFBool | requiresEnhancedEquipmentModule (const E_DocumentType documentType)
| check whether a given SR document type requires the Enhanced General Equipment Module
static OFBool | requiresTimezoneModule (const E_DocumentType documentType)
| check whether a given SR document type requires the Timezone Module
static OFBool | requiresSynchronizationModule (const E_DocumentType documentType)
| check whether a given SR document type requires the Synchronization Module
static OFBool | usesSRDocumentSeriesModule (const E_DocumentType documentType)
| check whether a given SR document type uses the SR Document Series Module (instead of the Key Object Document Series Module)
static OFBool | usesKeyObjectDocumentSeriesModule (const E_DocumentType documentType)
| check whether a given SR document type uses the Key Object Document Series Module (instead of the SR Document Series Module)
static OFBool | usesSRDocumentGeneralModule (const E_DocumentType documentType)
| check whether a given SR document type uses the SR Document General Module (instead of the Key Object Document Module)
static OFBool | usesKeyObjectDocumentModule (const E_DocumentType documentType)
| check whether a given SR document type uses the Key Object Document Module (instead of the SR Document General Module)
static const char * | relationshipTypeToDefinedTerm (const E_RelationshipType relationshipType)
| convert relationship type to DICOM defined term
static const char * | relationshipTypeToReadableName (const E_RelationshipType relationshipType)
| convert relationship type to readable name.
static const char * | valueTypeToDefinedTerm (const E_ValueType valueType)
| convert value type to DICOM defined term
static const char * | valueTypeToXMLTagName (const E_ValueType valueType)
| convert value type to XML tag name
static const char * | valueTypeToReadableName (const E_ValueType valueType)
| convert value type to readable name.
static const char * | presentationStateTypeToShortName (const E_PresentationStateType pstateType)
| convert presentation state type to short name.
static const char * | graphicTypeToEnumeratedValue (const E_GraphicType graphicType)
| convert graphic type to DICOM enumerated value
static const char * | graphicTypeToReadableName (const E_GraphicType graphicType)
| convert graphic type to readable name.
static const char * | graphicType3DToEnumeratedValue (const E_GraphicType3D graphicType)
| convert graphic type (3D) to DICOM enumerated value
static const char * | graphicType3DToReadableName (const E_GraphicType3D graphicType)
| convert graphic type (3D) to readable name.
static const char * | temporalRangeTypeToEnumeratedValue (const E_TemporalRangeType temporalRangeType)
| convert temporal range type to DICOM enumerated value
static const char * | temporalRangeTypeToReadableName (const E_TemporalRangeType temporalRangeType)
| convert temporal range type to readable name.
static const char * | continuityOfContentToEnumeratedValue (const E_ContinuityOfContent continuityOfContent)
| convert continuity of content flag to DICOM enumerated value
static const char * | preliminaryFlagToEnumeratedValue (const E_PreliminaryFlag preliminaryFlag)
| convert preliminary flag to DICOM enumerated value
static const char * | completionFlagToEnumeratedValue (const E_CompletionFlag completionFlag)
| convert completion flag to DICOM enumerated value
static const char * | verificationFlagToEnumeratedValue (const E_VerificationFlag verificationFlag)
| convert verification flag to DICOM enumerated value
static const char * | characterSetToDefinedTerm (const E_CharacterSet characterSet)
| convert character set to DICOM defined term
static const char * | characterSetToHTMLName (const E_CharacterSet characterSet)
| convert character set to HTML name.
static const char * | characterSetToXMLName (const E_CharacterSet characterSet)
| convert character set to XML name.
static E_DocumentType | sopClassUIDToDocumentType (const OFString &sopClassUID)
| convert SOP class UID to SR document type
static E_RelationshipType | definedTermToRelationshipType (const OFString &definedTerm)
| convert DICOM defined term to relationship type
static E_ValueType | definedTermToValueType (const OFString &definedTerm)
| convert DICOM defined term to value type
static E_PresentationStateType | sopClassUIDToPresentationStateType (const OFString &sopClassUID)
| convert SOP class UID to presentation state type
static E_ValueType | xmlTagNameToValueType (const OFString &xmlTagName)
| convert XML tag name to value type
static E_GraphicType | enumeratedValueToGraphicType (const OFString &enumeratedValue)
| convert DICOM enumerated value to graphic type
static E_GraphicType3D | enumeratedValueToGraphicType3D (const OFString &enumeratedValue)
| convert DICOM enumerated value to graphic type (3D)
static E_TemporalRangeType | enumeratedValueToTemporalRangeType (const OFString &enumeratedValue)
| convert DICOM enumerated value to temporal range type
static E_ContinuityOfContent | enumeratedValueToContinuityOfContent (const OFString &enumeratedValue)
| convert DICOM enumerated value to continuity of content flag
static E_PreliminaryFlag | enumeratedValueToPreliminaryFlag (const OFString &enumeratedValue)
| convert DICOM enumerated value to preliminary flag
static E_CompletionFlag | enumeratedValueToCompletionFlag (const OFString &enumeratedValue)
| convert DICOM enumerated value to completion flag
static E_VerificationFlag | enumeratedValueToVerificationFlag (const OFString &enumeratedValue)
| convert DICOM enumerated value to verification flag
static E_CharacterSet | definedTermToCharacterSet (const OFString &definedTerm)
| convert DICOM defined term to character set.
static OFBool | isDocumentTypeSupported (const E_DocumentType documentType)
| check whether specified SR document type is supported by this library
static const OFString & | currentDate (OFString &dateString)
| get current date in DICOM 'DA' format.
static const OFString & | currentTime (OFString &timeString)
| get current time in DICOM 'TM' format.
static const OFString & | currentDateTime (OFString &dateTimeString)
| get current date and time in DICOM 'DT' format.
static const OFString & | localTimezone (OFString &timezoneString)
| get local timezone in DICOM format.
static const OFString & | dicomToReadableDate (const OFString &dicomDate, OFString &readableDate)
| convert DICOM date string to readable format.
static const OFString & | dicomToReadableTime (const OFString &dicomTime, OFString &readableTime)
| convert DICOM time string to readable format.
static const OFString & | dicomToReadableDateTime (const OFString &dicomDateTime, OFString &readableDateTime)
| convert DICOM date time string to readable format.
static const OFString & | dicomToReadablePersonName (const OFString &dicomPersonName, OFString &readablePersonName)
| convert DICOM person name to readable format.
static const OFString & | dicomToXMLPersonName (const OFString &dicomPersonName, OFString &xmlPersonName, const OFBool writeEmptyValue=OFFalse)
| convert DICOM person name to XML format.
static const char * | numberToString (const size_t number, char *stringValue, size_t stringLength)
| convert unsigned integer number to character string
static size_t | stringToNumber (const char *stringValue)
| convert string to unsigned integer number
static const OFString & | convertToPrintString (const OFString &sourceString, OFString &printString)
| convert character string to print string.
static const OFString & | convertToHTMLString (const OFString &sourceString, OFString &markupString, const size_t flags=0, const OFBool newlineAllowed=OFFalse)
| convert character string to HTML mnenonic string.
static const OFString & | convertToXMLString (const OFString &sourceString, OFString &markupString)
| convert character string to XML mnenonic string.
static OFBool | checkForValidReference (const OFString &stringValue)
| check string for valid reference (as used for by-reference relationships).
static DSRIODConstraintChecker * | createIODConstraintChecker (const E_DocumentType documentType)
| create specified SR IOD content relationship constraint checker object.
static DSRDocumentTreeNode * | createDocumentTreeNode (const E_RelationshipType relationshipType, const E_ValueType valueType)
| create specified document tree node.
static OFCondition | addElementToDataset (OFCondition &result, DcmItem &dataset, DcmElement *delem, const OFString &vm, const OFString &type, const char *moduleName=NULL)
| add given element to the dataset.
static void | removeAttributeFromSequence (DcmSequenceOfItems &sequence, const DcmTagKey &tagKey)
| remove given attribute from the sequence.
static OFCondition | getElementFromDataset (DcmItem &dataset, DcmElement &delem)
| get element from dataset
static const char * | getStringValueFromElement (const DcmElement &delem)
| get string value from element
static const OFString & | getStringValueFromElement (const DcmElement &delem, OFString &stringValue)
| get string value from element.
static OFCondition | getStringValueFromElement (const DcmElement &delem, OFString &stringValue, const signed long pos)
| get string value from element
static const OFString & | getPrintStringFromElement (const DcmElement &delem, OFString &stringValue)
| get string value from element and convert to "print" format.
static const OFString & | getMarkupStringFromElement (const DcmElement &delem, OFString &stringValue, const OFBool convertNonASCII=OFFalse)
| get string value from element and convert to HTML/XML.
static OFCondition | getStringValueFromDataset (DcmItem &dataset, const DcmTagKey &tagKey, OFString &stringValue, const signed long pos=0)
| get string value from dataset
static OFCondition | putStringValueToDataset (DcmItem &dataset, const DcmTag &tag, const OFString &stringValue, const OFBool allowEmpty=OFTrue)
| put string value to dataset
static OFBool | checkElementValue (DcmElement *delem, const DcmTagKey &tagKey, const OFString &vm, const OFString &type, const OFCondition &searchCond=EC_Normal, const char *moduleName=NULL, const OFBool acceptViolation=OFFalse)
| check element value for correct value multiplicity and type.
static OFBool | checkElementValue (DcmElement &delem, const OFString &vm, const OFString &type, const OFCondition &searchCond=EC_Normal, const char *moduleName=NULL, const OFBool acceptViolation=OFFalse)
| check element value for correct value multiplicity and type.
static OFCondition | getAndCheckElementFromDataset (DcmItem &dataset, DcmElement &delem, const OFString &vm, const OFString &type, const char *moduleName=NULL, const OFBool acceptViolation=OFFalse)
| get element from dataset and check it for correct value multiplicity and type.
static OFCondition | getAndCheckStringValueFromDataset (DcmItem &dataset, const DcmTagKey &tagKey, OFString &stringValue, const OFString &vm, const OFString &type, const char *moduleName=NULL, const OFBool acceptViolation=OFFalse)
| get string value from dataset and check it for correct value multiplicity and type.
static void | printInvalidContentItemMessage (const char *action, const DSRDocumentTreeNode *node, const char *location=NULL)
| print the warning message that the current content item is invalid/incomplete.
static void | printContentItemErrorMessage (const char *action, const OFCondition &result, const DSRDocumentTreeNode *node, const char *location=NULL)
| print an error message for the current content item.
static void | printUnknownValueWarningMessage (const char *valueName, const char *readValue=NULL, const char *action="Reading")
| print a warning message that an unknown/unsupported value has been determined
static OFBool | writeStringValueToXML (STD_NAMESPACE ostream &stream, const OFString &stringValue, const OFString &tagName, const OFBool writeEmptyValue=OFFalse)
| write string value to XML output stream.
static OFBool | writeStringFromElementToXML (STD_NAMESPACE ostream &stream, DcmElement &delem, const OFString &tagName, const OFBool writeEmptyValue=OFFalse)
| write string value from DICOM element to XML output stream.
static size_t | createHTMLAnnexEntry (STD_NAMESPACE ostream &docStream, STD_NAMESPACE ostream &annexStream, const OFString &referenceText, size_t &annexNumber, const size_t flags=0)
| create an HTML annex entry with hyperlinks.
static size_t | createHTMLFootnote (STD_NAMESPACE ostream &docStream, STD_NAMESPACE ostream &footnoteStream, size_t &footnoteNumber, const size_t nodeID, const size_t flags=0)
| create an HTML footnote with hyperlinks
static OFCondition | appendStream (STD_NAMESPACE ostream &mainStream, OFOStringStream &tempStream, const char *heading=NULL)
| append one output stream to another.

## Additional Inherited Members
Protected Types inherited from DSRTypes
enum | E_DocumentType { DT_invalid , DT_unknown = DT_invalid , DT_BasicTextSR , DT_EnhancedSR , DT_ComprehensiveSR , DT_KeyObjectSelectionDocument , DT_MammographyCadSR , DT_ChestCadSR , DT_ColonCadSR , DT_ProcedureLog , DT_XRayRadiationDoseSR , DT_EnhancedXRayRadiationDoseSR , DT_SpectaclePrescriptionReport , DT_MacularGridThicknessAndVolumeReport , DT_ImplantationPlanSRDocument , DT_Comprehensive3DSR , DT_RadiopharmaceuticalRadiationDoseSR , DT_ExtensibleSR , DT_AcquisitionContextSR , DT_SimplifiedAdultEchoSR , DT_PatientRadiationDoseSR , DT_PerformedImagingAgentAdministrationSR , DT_PlannedImagingAgentAdministrationSR , DT_RenditionSelectionDocument , DT_WaveformAnnotationSR , DT_last = DT_WaveformAnnotationSR }
| SR document types (DICOM IOD) More...
enum | E_RelationshipType { RT_invalid , RT_unknown , RT_isRoot , RT_contains , RT_hasObsContext , RT_hasAcqContext , RT_hasConceptMod , RT_hasProperties , RT_inferredFrom , RT_selectedFrom , RT_last = RT_selectedFrom }
| SR relationship types. More...
enum | E_ValueType { VT_invalid , VT_Text , VT_Code , VT_Num , VT_DateTime , VT_Date , VT_Time , VT_UIDRef , VT_PName , VT_SCoord , VT_SCoord3D , VT_TCoord , VT_Composite , VT_Image , VT_Waveform , VT_Container , VT_byReference , VT_includedTemplate , VT_last = VT_includedTemplate }
| SR value types. More...
enum | E_PresentationStateType { PT_invalid , PT_unknown = PT_invalid , PT_Grayscale , PT_Color , PT_PseudoColor , PT_Blending , PT_XAXRFGrayscale , PT_GrayscalePlanarMPR , PT_CompositingPlanarMPR , PT_AdvancedBlending , PT_VolumeRendering , PT_SegmentedVolumeRendering , PT_MultipleVolumeRendering , PT_VariableModalityLUT , PT_last = PT_VariableModalityLUT }
| Softcopy presentation state types. More...
enum | E_GraphicType { GT_invalid , GT_unknown = GT_invalid , GT_Point , GT_Multipoint , GT_Polyline , GT_Circle , GT_Ellipse , GT_last = GT_Ellipse }
| SR graphic types. More...
enum | E_GraphicType3D { GT3_invalid , GT3_unknown = GT3_invalid , GT3_Point , GT3_Multipoint , GT3_Polyline , GT3_Polygon , GT3_Ellipse , GT3_Ellipsoid , GT3_last = GT3_Ellipsoid }
| SR graphic types (3D). More...
enum | E_TemporalRangeType { TRT_invalid , TRT_unknown = TRT_invalid , TRT_Point , TRT_Multipoint , TRT_Segment , TRT_Multisegment , TRT_Begin , TRT_End , TRT_last = TRT_End }
| SR temporal range types. More...
enum | E_ContinuityOfContent { COC_invalid , COC_Separate , COC_Continuous , COC_last = COC_Continuous }
| SR continuity of content flag. More...
enum | E_PreliminaryFlag { PF_invalid , PF_Preliminary , PF_Final , PF_last = PF_Final }
| SR document preliminary flag. More...
enum | E_CompletionFlag { CF_invalid , CF_Partial , CF_Complete , CF_last = CF_Complete }
| SR document completion flag. More...
enum | E_VerificationFlag { VF_invalid , VF_Unverified , VF_Verified , VF_last = VF_Verified }
| SR document verification flag. More...
enum | E_CharacterSet { CS_invalid , CS_unknown = CS_invalid , CS_ASCII , CS_default = CS_ASCII , CS_Latin1 , CS_Latin2 , CS_Latin3 , CS_Latin4 , CS_Cyrillic , CS_Arabic , CS_Greek , CS_Hebrew , CS_Latin5 , CS_Latin9 , CS_Thai , CS_Japanese , CS_Korean , CS_ChineseISO , CS_ChineseGB18030 , CS_ChineseGBK , CS_UTF8 , CS_last = CS_UTF8 }
| Specific character set. More...
enum | E_CodeValueType { CVT_auto , CVT_Short , CVT_Long , CVT_URN }
| Code value type. More...
enum | E_AddMode { AM_afterCurrent , AM_beforeCurrent , AM_belowCurrent , AM_belowCurrentBeforeFirstChild }
| Add node mode. More...
Protected Attributes inherited from DSRDocumentSubTree
DSRIODConstraintChecker * | ConstraintChecker
| check relationship content constraints of the associated IOD
Protected Attributes inherited from DSRTreeNodeCursor< DSRDocumentTreeNode >
DSRDocumentTreeNode * | NodeCursor
| pointer to current node
OFStack< DSRDocumentTreeNode * > | NodeCursorStack
| stack of node pointers. Used to store the cursor position of upper levels.
DSRPositionCounter | Position
| counter for the current position within the current level and on upper levels
Static Protected Attributes inherited from DSRTypes
static const size_t | RF_readDigitalSignatures
| read digital signatures from dataset
static const size_t | RF_acceptUnknownRelationshipType
| accept unknown/missing relationship type
static const size_t | RF_acceptInvalidContentItemValue
| accept invalid content item value (e.g. violation of VR or VM definition)
static const size_t | RF_ignoreRelationshipConstraints
| ignore relationship constraints for this document class
static const size_t | RF_ignoreContentItemErrors
| do not abort on content item errors (e.g. missing value type specific attributes)
static const size_t | RF_skipInvalidContentItems
| do not abort when detecting an invalid content item, skip invalid sub-tree instead
static const size_t | RF_showCurrentlyProcessedItem
| show the currently processed content item (e.g. "1.2.3")
static const size_t | HF_neverExpandChildrenInline
| external: never expand child nodes inline
static const size_t | HF_alwaysExpandChildrenInline
| external: always expand child nodes inline
static const size_t | HF_renderInlineCodes
| external: render codes even if they appear inline
static const size_t | HF_useCodeDetailsTooltip
| external: render code details as a tooltip (not with HTML 3.2)
static const size_t | HF_renderConceptNameCodes
| external: render concept name codes (default: code meaning only)
static const size_t | HF_renderNumericUnitCodes
| external: render the code of the numeric measurement unit
static const size_t | HF_useCodeMeaningAsUnit
| external: use code meaning for the numeric measurement unit (default: code value)
static const size_t | HF_renderPatientTitle
| external: use patient information as document title (default: document type)
static const size_t | HF_renderNoDocumentHeader
| external: render no general document information (header)
static const size_t | HF_renderDcmtkFootnote
| external: render dcmtk/dcmsr comment at the end of the document
static const size_t | HF_renderFullData
| external: render the full data of all content items
static const size_t | HF_renderSectionTitlesInline
| external: render section titles inline (default: separate paragraph)
static const size_t | HF_copyStyleSheetContent
| external: copy Cascading Style Sheet (CSS) content to HTML file
static const size_t | HF_HTML32Compatibility
| external: output compatible to HTML version 3.2 (default: 4.01)
static const size_t | HF_XHTML11Compatibility
| external: output compatible to XHTML version 1.1 (default: HTML 4.01)
static const size_t | HF_addDocumentTypeReference
| external: add explicit reference to HTML document type (DTD)
static const size_t | HF_omitGeneratorMetaElement
| external: omit generator meta element referring to the DCMTK
static const size_t | HF_renderItemsSeparately
| internal: render items separately (for container with SEPARATE flag)
static const size_t | HF_renderItemInline
| internal: expand items inline when they are short and have no child nodes
static const size_t | HF_currentlyInsideAnnex
| internal: content item is rendered fully inside the annex
static const size_t | HF_createFootnoteReferences
| internal: create footnote references
static const size_t | HF_convertNonASCIICharacters
| internal: convert non-ASCII characters (> #127) to &#nnn;
static const size_t | HF_renderAllCodes
| shortcut: render all codes
static const size_t | HF_internalUseOnly
| shortcut: filter all flags that are only used internally
static const size_t | XF_writeEmptyTags
| write: write all tags even if their value is empty
static const size_t | XF_writeTemplateIdentification
| write: write template identification information (TID and mapping resource)
static const size_t | XF_alwaysWriteItemIdentifier
| write: always write item identifier "id", not only when item is referenced
static const size_t | XF_codeComponentsAsAttribute
| write: encode code value, coding scheme designator and coding scheme version as attribute instead of element text
static const size_t | XF_relationshipTypeAsAttribute
| write: encode relationship type as attribute instead of element text
static const size_t | XF_valueTypeAsAttribute
| write: encode value type as attribute instead of element text
static const size_t | XF_templateIdentifierAsAttribute
| write: encode template identifier as attribute instead of element text
static const size_t | XF_useDcmsrNamespace
| write: add DCMSR namespace declaration to the XML output
static const size_t | XF_addSchemaReference
| write: add Schema reference to XML document
static const size_t | XF_validateSchema
| read: validate content of XML document against Schema
static const size_t | XF_templateElementEnclosesItems
| read/write: template identification element encloses content items
static const size_t | XF_addCommentsForIncludedTemplate
| write: add comments with details at beginning/end of included template (might be useful for debugging purposes)
static const size_t | XF_acceptEmptyStudySeriesInstanceUID
| read: accept empty Study/Series/SOP Instance UID attribute values (must be filled later)
static const size_t | XF_encodeEverythingAsAttribute
| shortcut: combines all XF_xxxAsAttribute write flags (see above)
static const size_t | PF_printItemPosition
| print item position ("1.2.3") instead of line indentation
static const size_t | PF_shortenLongItemValues
| shorten long item value (e.g. long texts)
static const size_t | PF_printSOPInstanceUID
| print SOP instance UID of referenced objects
static const size_t | PF_printConceptNameCodes
| print coding scheme designator/version and code value of concept names
static const size_t | PF_printNoDocumentHeader
| print no general document information (header)
static const size_t | PF_printTemplateIdentification
| print template identification (TID and mapping resource)
static const size_t | PF_useANSIEscapeCodes
| use ANSI escape codes for output
static const size_t | PF_printLongSOPClassName
| print long SOP class name of referenced objects (default: short name for images)
static const size_t | PF_printSOPClassUID
| print SOP class UID of referenced objects (instead of the name)
static const size_t | PF_printInvalidCodes
| print code triple for invalid codes (instead of the text "invalid code")
static const size_t | PF_printNodeID
| print node ID at the beginning of each line (might be useful for debugging purposes)
static const size_t | PF_indicateEnhancedEncodingMode
| indicate with a "*" that the "enhanced encoding mode" is used for codes
static const size_t | PF_printAnnotation
| print annotation of a content item (optional, e.g. user-defined information)
static const size_t | PF_hideIncludedTemplateNodes
| do not print internal "included template" nodes (position counter is still increased)
static const size_t | PF_dontCountIncludedTemplateNodes
| do not count internal "included template" nodes (only with PF_hideIncludedTemplateNodes)
static const size_t | PF_printEmptyCodes
| print text "empty code" for empty codes (instead of "invalid code")
static const size_t | PF_printAllCodes
| shortcut: print all codes (combines all PF_printXxxCodes flags, see above)
static const size_t | CM_updatePositionString
| update the position string using the node ID
static const size_t | CM_updateNodeID
| update the node ID using the position string
static const size_t | CM_resetReferenceTargetFlag
| reset the reference target flag for all nodes
static const size_t | CB_maskPrintFlags
| bit mask (filter) for valid print flags (see PF_xxx)
static const size_t | CB_maskReadFlags
| bit mask (filter) for valid read flags (see RF_xxx)

## Detailed Description

Implementation of DCMR Template: TID 1600 - Image Library (and included templates 1601-1607).

All added content items are annotated with a text in the format "TID 1600 - Row [n]".

Note
  Please note that most DICOM element values are copied from the main dataset only and not yet from the respective functional group macros.

## Member Enumeration Documentation

## ◆ AddImageMode

enum TID1600_ImageLibrary::AddImageMode

add mode for image entries

Enumerator
withoutDescriptors | add image entry without descriptors
withAllDescriptors | add image entry with all descriptors from TID 1602 (and included templates)
withSelectedDescriptors | add image entry with selected descriptors only (from given list of concept names)
withoutSelectedDescriptors | add image entry with all but the selected descriptors (from given list of concept names)

## Constructor & Destructor Documentation

## ◆ TID1600_ImageLibrary()

TID1600_ImageLibrary::TID1600_ImageLibrary | ( | const OFBool | createLibrary = OFTrue | ) |

(default) constructor

Parameters

  createLibrary | flag indicating whether to create an empty image library by calling createImageLibrary() during startup (default)

## Member Function Documentation

## ◆ addCodeContentItemFromDataset()

static OFCondition TID1600_ImageLibrary::addCodeContentItemFromDataset | ( | DSRDocumentSubTree & | tree,
|  | DcmItem & | dataset,
|  | const DcmTagKey & | tagKey,
|  | const DSRCodedEntryValue & | conceptName,
|  | const OFString & | annotationText,
|  | const OFBool | check )
| staticprotected

add a CODE content item with a coded entry value copied from the given dataset.

The content item is only created and added to the subtree if the specified code sequence is present in the 'dataset' and its value is valid (not empty).

Parameters

  tree | subtree to which the content items should be added
  dataset | DICOM dataset from which the values should be copied
  tagKey | DICOM tag specifying the code sequence attribute from which the coded entry should be retrieved
  conceptName | concept name of the content item to be added
  annotationText | optional text used to annotate the content item
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

References DSRDocumentSubTree::DSRDocumentSubTree().

## ◆ addComputedTomographyDescriptors()

OFCondition TID1600_ImageLibrary::addComputedTomographyDescriptors | ( | DSRDocumentSubTree & | tree,
|  | DcmItem & | dataset,
|  | const AddImageMode | mode,
|  | const ConceptNameList & | descriptors,
|  | const OFBool | check )
| protected

add image library entry descriptors for CT (TID 1605)

Parameters

  tree | subtree to which the content items should be added
  dataset | DICOM dataset from which the values should be copied
  mode | mode specifying which optional content items are to be added
  descriptors | list with concept names of descriptors (depends on 'mode')
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

References DSRDocumentSubTree::DSRDocumentSubTree().

## ◆ addCrossSectionalModalitiesDescriptors()

OFCondition TID1600_ImageLibrary::addCrossSectionalModalitiesDescriptors | ( | DSRDocumentSubTree & | tree,
|  | DcmItem & | dataset,
|  | const AddImageMode | mode,
|  | const ConceptNameList & | descriptors,
|  | const OFBool | check )
| protected

add image library entry descriptors for cross-sectional modalities (TID 1604)

Parameters

  tree | subtree to which the content items should be added
  dataset | DICOM dataset from which the values should be copied
  mode | mode specifying which optional content items are to be added
  descriptors | list with concept names of descriptors (depends on 'mode')
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

References DSRDocumentSubTree::DSRDocumentSubTree().

## ◆ addImageEntry()

OFCondition TID1600_ImageLibrary::addImageEntry | ( | DcmItem & | dataset,
|  | const AddImageMode | mode,
|  | const ConceptNameList & | descriptors = ConceptNameList(),
|  | const OFBool | check = OFTrue )

add an image entry to the current image group, i.e. add content items for TID 1601 (Image Library Entry).

The values of the content items (including the image reference) are copied from the data elements of the given 'dataset'. If no descriptors were added, CMR_EC_NoImageLibraryEntryDescriptorsToBeAdded is returned, which is not regarded as an error.

Parameters

  dataset | DICOM dataset from which the values should be copied
  mode | mode specifying which optional content items are to be added
  descriptors | optional list with concept names of descriptors. Its use and interpretation depends on the value of 'mode'.
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise. If no image group exists, CMR_EC_NoImageLibraryGroup is returned.

## ◆ addImageEntryDescriptors()

OFCondition TID1600_ImageLibrary::addImageEntryDescriptors | ( | DSRDocumentSubTree & | tree,
|  | DcmItem & | dataset,
|  | const AddImageMode | mode,
|  | const ConceptNameList & | descriptors,
|  | const OFBool | check )
| protected

add image library entry descriptors (TID 1602) to given document subtree.

This method also calls addModalitySpecificDescriptors() in order to add the included templates (TID 1603 to 1607).

Parameters

  tree | subtree to which the content items should be added
  dataset | DICOM dataset from which the values should be copied
  mode | mode specifying which optional content items are to be added
  descriptors | list with concept names of descriptors (depends on 'mode')
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

References DSRDocumentSubTree::DSRDocumentSubTree().

## ◆ addImageGroup()

OFCondition TID1600_ImageLibrary::addImageGroup | ( |  | ) |

add an image group to the image library.

Image descriptors that are common to all images in this group can be added by calling addImageGroupDescriptors().

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ addImageGroupDescriptors()

OFCondition TID1600_ImageLibrary::addImageGroupDescriptors | ( | DcmItem & | dataset,
|  | const AddImageMode | mode,
|  | const ConceptNameList & | descriptors = ConceptNameList(),
|  | const OFBool | check = OFTrue )

add common image descriptors to the current image group, i.e. add content items items for TID 1602 (Image Library Entry Descriptors) and included templates.

The values of the content items are copied from the data elements of the given 'dataset'. If none were added, CMR_EC_NoImageLibraryEntryDescriptorsToBeAdded is returned, which is not regarded as an error. Please note that this method should be called only once for each image group. Alternatively, moveCommonImageDescriptorsToImageGroups() could be called to move common image descriptors to their respective image groups automatically.

Parameters

  dataset | DICOM dataset from which the values should be copied
  mode | mode specifying which optional content items are to be added
  descriptors | optional list with concept names of descriptors. Its use and interpretation depends on the value of 'mode'.
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise. If no image group exists, CMR_EC_NoImageLibraryGroup is returned.

## ◆ addMagneticResonanceDescriptors()

OFCondition TID1600_ImageLibrary::addMagneticResonanceDescriptors | ( | DSRDocumentSubTree & | tree,
|  | DcmItem & | dataset,
|  | const AddImageMode | mode,
|  | const ConceptNameList & | descriptors,
|  | const OFBool | check )
| protected

add image library entry descriptors for MR (TID 1606)

Parameters

  tree | subtree to which the content items should be added
  dataset | DICOM dataset from which the values should be copied
  mode | mode specifying which optional content items are to be added
  descriptors | list with concept names of descriptors (depends on 'mode')
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

References DSRDocumentSubTree::DSRDocumentSubTree().

## ◆ addModalitySpecificDescriptors()

OFCondition TID1600_ImageLibrary::addModalitySpecificDescriptors | ( | DSRDocumentSubTree & | tree,
|  | DcmItem & | dataset,
|  | const OFString & | modality,
|  | const AddImageMode | mode,
|  | const ConceptNameList & | descriptors,
|  | const OFBool | check )
| protected

add image library entry descriptors (TID 1603 to 1607) to given document subtree depending on the given 'modality'.

Warning
  The mapping of modality to included templates is probably not perfect yet. Also please note that most DICOM element values are copied from the main dataset and not from the respective functional group macros.

Parameters

  tree | subtree to which the content items should be added
  dataset | DICOM dataset from which the values should be copied
  modality | value of the Modality (0008,0060) attribute from 'dataset'
  mode | mode specifying which optional content items are to be added
  descriptors | list with concept names of descriptors (depends on 'mode')
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

References DSRDocumentSubTree::DSRDocumentSubTree().

## ◆ addNumericContentItemFromDataset()

static OFCondition TID1600_ImageLibrary::addNumericContentItemFromDataset | ( | DSRDocumentSubTree & | tree,
|  | DcmItem & | dataset,
|  | const DcmTagKey & | tagKey,
|  | const signed long | pos,
|  | const DSRCodedEntryValue & | conceptName,
|  | const DSRCodedEntryValue & | measurementUnit,
|  | const OFString & | annotationText,
|  | const OFBool | check )
| staticprotected

add a NUM content item with a numeric value copied from the given dataset.

The content item is only created and added to the subtree if the specified data element is present in the 'dataset' and its value (retrieved as a string) is not empty.

Parameters

  tree | subtree to which the content items should be added
  dataset | DICOM dataset from which the values should be copied
  tagKey | DICOM tag specifying the attribute from which the string value should be retrieved
  pos | index of the value to get (0..vm-1), -1 for all components
  conceptName | concept name of the content item to be added
  measurementUnit | measurement unit to be used for the numeric content item
  annotationText | optional text used to annotate the content item
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

References DSRDocumentSubTree::DSRDocumentSubTree().

## ◆ addPositronEmissionTomographyDescriptors()

OFCondition TID1600_ImageLibrary::addPositronEmissionTomographyDescriptors | ( | DSRDocumentSubTree & | tree,
|  | DcmItem & | dataset,
|  | const AddImageMode | mode,
|  | const ConceptNameList & | descriptors,
|  | const OFBool | check )
| protected

add image library entry descriptors for PET (TID 1607).

Note
  The template rows 10 to 15 are not yet supported by this method.

Parameters

  tree | subtree to which the content items should be added
  dataset | DICOM dataset from which the values should be copied
  mode | mode specifying which optional content items are to be added
  descriptors | list with concept names of descriptors (depends on 'mode')
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

References DSRDocumentSubTree::DSRDocumentSubTree().

## ◆ addProjectionRadiographyDescriptors()

OFCondition TID1600_ImageLibrary::addProjectionRadiographyDescriptors | ( | DSRDocumentSubTree & | tree,
|  | DcmItem & | dataset,
|  | const AddImageMode | mode,
|  | const ConceptNameList & | descriptors,
|  | const OFBool | check )
| protected

add image library entry descriptors for projection radiography (TID 1603)

Parameters

  tree | subtree to which the content items should be added
  dataset | DICOM dataset from which the values should be copied
  mode | mode specifying which optional content items are to be added
  descriptors | list with concept names of descriptors (depends on 'mode')
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

References DSRDocumentSubTree::DSRDocumentSubTree().

## ◆ addStringContentItemFromDataset()

static OFCondition TID1600_ImageLibrary::addStringContentItemFromDataset | ( | DSRDocumentSubTree & | tree,
|  | DcmItem & | dataset,
|  | const DcmTagKey & | tagKey,
|  | const signed long | pos,
|  | const E_ValueType | valueType,
|  | const DSRCodedEntryValue & | conceptName,
|  | const OFString & | annotationText,
|  | const OFBool | check )
| staticprotected

add a content item with a string value copied from the given dataset.

The content item is only created and added to the subtree if the specified data element is present in the 'dataset' and its string value is not empty.

Parameters

  tree | subtree to which the content items should be added
  dataset | DICOM dataset from which the values should be copied
  tagKey | DICOM tag specifying the attribute from which the string value should be retrieved
  pos | index of the value to get (0..vm-1), -1 for all components
  valueType | value type of the content item to be added
  conceptName | concept name of the content item to be added
  annotationText | optional text used to annotate the content item
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

References DSRDocumentSubTree::DSRDocumentSubTree().

## ◆ anyDescriptorsToBeAdded()

static OFBool TID1600_ImageLibrary::anyDescriptorsToBeAdded | ( | const AddImageMode | mode,
|  | const ConceptNameList & | descriptors )
| staticprotected

check whether there are any descriptors to be added (based on given parameters)

Parameters

  mode | mode specifying what should be checked and how
  descriptors | list with concept names of descriptors (depends on 'mode')

Returns
  OFTrue if there are any descriptors to be added, OFFalse if not

## ◆ checkDescriptorToBeAdded()

static OFBool TID1600_ImageLibrary::checkDescriptorToBeAdded | ( | const DSRBasicCodedEntry & | conceptName,
|  | const AddImageMode | mode,
|  | const ConceptNameList & | descriptors )
| staticprotected

check whether a given descriptor should be added (based on further parameters)

Parameters

  conceptName | concept name of the descriptor to be checked
  mode | mode specifying what should be checked and how
  descriptors | list with concept names of descriptors to be checked (depending on the given 'mode')

Returns
  OFTrue if given descriptor should be added, OFFalse if not

## ◆ createImageLibrary()

OFCondition TID1600_ImageLibrary::createImageLibrary | ( |  | ) |
| protected

create the mandatory content item 'Image Library' (TID 1600 - Row 1) as the root node of this template.

It is expected that the tree is currently empty.

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ createNewImageLibrary()

OFCondition TID1600_ImageLibrary::createNewImageLibrary | ( |  | ) |

clear the internally stored tree of content items and create the mandatory content item 'Image Library' (TID 1600 - Row 1) as the root node of this template

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ getImageEntryModality()

OFCondition TID1600_ImageLibrary::getImageEntryModality | ( | DSRCodedEntryValue & | modalityCode | ) |

go to the most recently added image library entry and get the value of the descriptor 'Modality' (TID 1602 - Row 1)

Parameters

  modalityCode | reference to coded entry that will store the result (cleared if an error occurs)

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ goAndCheckImageLibraryEntry()

OFCondition TID1600_ImageLibrary::goAndCheckImageLibraryEntry | ( | const DSRCodedEntryValue & | modalityCode | ) |
| protected

go to the most recently added image library entry and check the value of the associated descriptor 'Modality' (TID 1602 - Row 1)

Parameters

  modalityCode | coded entry (from CID 29) associated with the modality. Used to check the image library entry.

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ hasImageLibrary()

OFBool TID1600_ImageLibrary::hasImageLibrary | ( |  | ) | const

check whether the content item 'Image Library' (TID 1600 - Row 1) is present.

Initially, this mandatory content item is created by the constructor of this class (if not disabled). After clear() has been called, it can be created again by calling createNewImageLibrary().

Returns
  OFTrue if the image library is present, OFFalse otherwise

## ◆ hasImageLibraryGroup()

OFBool TID1600_ImageLibrary::hasImageLibraryGroup | ( |  | ) | const

check whether there is an image group in this image library (TID 1600 - Row 2)

Returns
  OFTrue if at least one image group is present, OFFalse otherwise

## ◆ isValid()

virtual OFBool TID1600_ImageLibrary::isValid | ( |  | ) | const
| virtual

check whether the current internal state is valid.

That means, whether the base class is valid and hasImageLibrary() returns true.

Returns
  OFTrue if valid, OFFalse otherwise

Reimplemented from DSRSubTemplate.

## ◆ moveCommonImageDescriptorsToImageGroups()

OFCondition TID1600_ImageLibrary::moveCommonImageDescriptorsToImageGroups | ( |  | ) |

move common image descriptors from all image entries in this image library to their respective image groups.

This method should usually be called after all image entries have been added using addImageEntry(). If no descriptors were moved, CMR_EC_NoImageLibraryEntryDescriptorsToBeMoved is returned, which is not regarded as an error.

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ setCodeContentItemFromValue()

OFCondition TID1600_ImageLibrary::setCodeContentItemFromValue | ( | const DSRCodedEntryValue & | conceptName,
|  | const DSRCodedEntryValue & | codeValue,
|  | const OFString & | annotationText,
|  | const OFBool | check )
| protected

search for a particular CODE content item (given by the concept name) and set its coded entry value.

If not found, a new content item is added to the current position and the value is set.

Parameters

  conceptName | concept name of the content item to be set/added
  codeValue | coded entry value of the content item to be set/added
  annotationText | text used to annotate the content item (might be empty)
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ setNumericContentItemFromValue()

OFCondition TID1600_ImageLibrary::setNumericContentItemFromValue | ( | const DSRCodedEntryValue & | conceptName,
|  | const DSRNumericMeasurementValue & | numericValue,
|  | const DSRCodedEntryValue & | measurementUnit,
|  | const OFString & | annotationText,
|  | const OFBool | check )
| protected

search for a particular NUM content item (given by the concept name) and set its numeric measurement value.

If not found, a new content item is added to the current position and the value is set.

Parameters

  conceptName | concept name of the content item to be set/added
  numericValue | numeric measurement value of the content item to be set/added
  measurementUnit | measurement unit that should be used by 'numericValue' (optional, might be empty). Used for checking purposes.
  annotationText | text used to annotate the content item (might be empty)
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ setPETImageRadionuclide()

OFCondition TID1600_ImageLibrary::setPETImageRadionuclide | ( | const CID4020_PETRadionuclide & | radionuclide,
|  | const OFBool | check = OFTrue )

set the value of the descriptor 'Radionuclide' (TID 1607 - Row 1) for the current (most recently added) PET image library entry.

If the content item already exists, its value is overwritten. Otherwise, a new content item is added to the end of the list of image library entry descriptors.

Parameters

  radionuclide | coded entry to be set (from CID 4020 - PET Radionuclide)
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ setPETImageRadionuclideTotalDose()

OFCondition TID1600_ImageLibrary::setPETImageRadionuclideTotalDose | ( | const CMR_SRNumericMeasurementValue & | totalDose,
|  | const OFBool | check = OFTrue )

set the value of the descriptor 'Radiopharmaceutical Total Dose' (TID 1607 - Row 7) for the current (most recently added) PET image library entry.

If the content item already exists, its value is overwritten. Otherwise, a new content item is added to the end of the list of image library entry descriptors.

Parameters

  totalDose | numeric measurement value to be set (measurement unit should be CODE_UCUM_Bq or a coded entry that is identical to this)
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ setPETImageRadiopharmaceuticalAgent()

OFCondition TID1600_ImageLibrary::setPETImageRadiopharmaceuticalAgent | ( | const CID4021_PETRadiopharmaceutical & | agent,
|  | const OFBool | check = OFTrue )

set the value of the descriptor 'Radiopharmaceutical Agent' (TID 1607 - Row 2) for the current (most recently added) PET image library entry.

If the content item already exists, its value is overwritten. Otherwise, a new content item is added to the end of the list of image library entry descriptors.

Parameters

  agent | coded entry to be set (from CID 4021 - PET Radiopharmaceutical)
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ setPETImageRadiopharmaceuticalStartDateTime()

OFCondition TID1600_ImageLibrary::setPETImageRadiopharmaceuticalStartDateTime | ( | const OFString & | dateTime,
|  | const OFBool | check = OFTrue )

set the value of the descriptor 'Radiopharmaceutical Start Date Time' (TID 1607 - Row 4) for the current (most recently added) PET image library entry.

If the content item already exists, its value is overwritten. Otherwise, a new content item is added to the end of the list of image library entry descriptors.

Parameters

  dateTime | date/time value to be set (associated DICOM VR=DT)
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ setPETImageRadiopharmaceuticalStopDateTime()

OFCondition TID1600_ImageLibrary::setPETImageRadiopharmaceuticalStopDateTime | ( | const OFString & | dateTime,
|  | const OFBool | check = OFTrue )

set the value of the descriptor 'Radiopharmaceutical Stop Date Time' (TID 1607 - Row 5) for the current (most recently added) PET image library entry.

If the content item already exists, its value is overwritten. Otherwise, a new content item is added to the end of the list of image library entry descriptors.

Parameters

  dateTime | date/time value to be set (associated DICOM VR=DT)
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ setPETImageRadiopharmaceuticalVolume()

OFCondition TID1600_ImageLibrary::setPETImageRadiopharmaceuticalVolume | ( | const CMR_SRNumericMeasurementValue & | volume,
|  | const OFBool | check = OFTrue )

set the value of the descriptor 'Radiopharmaceutical Volume' (TID 1607 - Row 6) for the current (most recently added) PET image library entry.

If the content item already exists, its value is overwritten. Otherwise, a new content item is added to the end of the list of image library entry descriptors.

Parameters

  volume | numeric measurement value to be set (measurement unit should be CODE_UCUM_cm3 or a coded entry that is identical to this)
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ setStringContentItemFromValue()

OFCondition TID1600_ImageLibrary::setStringContentItemFromValue | ( | const E_ValueType | valueType,
|  | const DSRCodedEntryValue & | conceptName,
|  | const OFString & | stringValue,
|  | const OFString & | annotationText,
|  | const OFBool | check )
| protected

search for a particular content item (given by the concept name and value type) and set its string value.

If not found, a new content item is added to the current position and the value is set.

Parameters

  valueType | value type of the content item to be set/added
  conceptName | concept name of the content item to be set/added
  stringValue | string value of the content item to be set/added
  annotationText | text used to annotate the content item (might be empty)
  check | if enabled, check values for validity before setting them

Returns
  status, EC_Normal if successful, an error code otherwise

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

- dcmsr/include/dcmtk/dcmsr/cmr/tid1600.h

Generated on Sat Mar 1 2025 for DCMTK Version 3.6.9 by Doxygen 1.13.2