DCMTK Version 3.7.0 OFFIS DICOM Toolkit

Public Types | Public Member Functions | Static Public Member Functions | List of all members
DSRTypes Class Reference

General purpose class hiding global functions, constants and types from the global namespace. More...

Inheritance diagram for DSRTypes:

## Public Types
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_Waveform , PT_WaveformAcquisition , PT_last = PT_WaveformAcquisition }
| 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...

## Public Member Functions
virtual | ~DSRTypes ()
| destructor. More...

## Static Public Member Functions
static const char * | documentTypeToSOPClassUID (const E_DocumentType documentType)
| convert SR document type to SOP class UID More...
static const char * | documentTypeToModality (const E_DocumentType documentType)
| convert SR document type to modality More...
static const char * | documentTypeToReadableName (const E_DocumentType documentType)
| convert SR document type to readable name. More...
static const char * | documentTypeToDocumentTitle (const E_DocumentType documentType, OFString &documentTitle)
| convert SR document type to document title. More...
static OFBool | requiresEnhancedEquipmentModule (const E_DocumentType documentType)
| check whether a given SR document type requires the Enhanced General Equipment Module More...
static OFBool | requiresTimezoneModule (const E_DocumentType documentType)
| check whether a given SR document type requires the Timezone Module More...
static OFBool | requiresSynchronizationModule (const E_DocumentType documentType)
| check whether a given SR document type requires the Synchronization Module More...
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) More...
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) More...
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) More...
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) More...
static const char * | relationshipTypeToDefinedTerm (const E_RelationshipType relationshipType)
| convert relationship type to DICOM defined term More...
static const char * | relationshipTypeToReadableName (const E_RelationshipType relationshipType)
| convert relationship type to readable name. More...
static const char * | valueTypeToDefinedTerm (const E_ValueType valueType)
| convert value type to DICOM defined term More...
static const char * | valueTypeToXMLTagName (const E_ValueType valueType)
| convert value type to XML tag name More...
static const char * | valueTypeToReadableName (const E_ValueType valueType)
| convert value type to readable name. More...
static const char * | presentationStateTypeToShortName (const E_PresentationStateType pstateType)
| convert presentation state type to short name. More...
static const char * | graphicTypeToEnumeratedValue (const E_GraphicType graphicType)
| convert graphic type to DICOM enumerated value More...
static const char * | graphicTypeToReadableName (const E_GraphicType graphicType)
| convert graphic type to readable name. More...
static const char * | graphicType3DToEnumeratedValue (const E_GraphicType3D graphicType)
| convert graphic type (3D) to DICOM enumerated value More...
static const char * | graphicType3DToReadableName (const E_GraphicType3D graphicType)
| convert graphic type (3D) to readable name. More...
static const char * | temporalRangeTypeToEnumeratedValue (const E_TemporalRangeType temporalRangeType)
| convert temporal range type to DICOM enumerated value More...
static const char * | temporalRangeTypeToReadableName (const E_TemporalRangeType temporalRangeType)
| convert temporal range type to readable name. More...
static const char * | continuityOfContentToEnumeratedValue (const E_ContinuityOfContent continuityOfContent)
| convert continuity of content flag to DICOM enumerated value More...
static const char * | preliminaryFlagToEnumeratedValue (const E_PreliminaryFlag preliminaryFlag)
| convert preliminary flag to DICOM enumerated value More...
static const char * | completionFlagToEnumeratedValue (const E_CompletionFlag completionFlag)
| convert completion flag to DICOM enumerated value More...
static const char * | verificationFlagToEnumeratedValue (const E_VerificationFlag verificationFlag)
| convert verification flag to DICOM enumerated value More...
static const char * | characterSetToDefinedTerm (const E_CharacterSet characterSet)
| convert character set to DICOM defined term More...
static const char * | characterSetToHTMLName (const E_CharacterSet characterSet)
| convert character set to HTML name. More...
static const char * | characterSetToXMLName (const E_CharacterSet characterSet)
| convert character set to XML name. More...
static E_DocumentType | sopClassUIDToDocumentType (const OFString &sopClassUID)
| convert SOP class UID to SR document type More...
static E_RelationshipType | definedTermToRelationshipType (const OFString &definedTerm)
| convert DICOM defined term to relationship type More...
static E_ValueType | definedTermToValueType (const OFString &definedTerm)
| convert DICOM defined term to value type More...
static E_PresentationStateType | sopClassUIDToPresentationStateType (const OFString &sopClassUID)
| convert SOP class UID to presentation state type More...
static E_ValueType | xmlTagNameToValueType (const OFString &xmlTagName)
| convert XML tag name to value type More...
static E_GraphicType | enumeratedValueToGraphicType (const OFString &enumeratedValue)
| convert DICOM enumerated value to graphic type More...
static E_GraphicType3D | enumeratedValueToGraphicType3D (const OFString &enumeratedValue)
| convert DICOM enumerated value to graphic type (3D) More...
static E_TemporalRangeType | enumeratedValueToTemporalRangeType (const OFString &enumeratedValue)
| convert DICOM enumerated value to temporal range type More...
static E_ContinuityOfContent | enumeratedValueToContinuityOfContent (const OFString &enumeratedValue)
| convert DICOM enumerated value to continuity of content flag More...
static E_PreliminaryFlag | enumeratedValueToPreliminaryFlag (const OFString &enumeratedValue)
| convert DICOM enumerated value to preliminary flag More...
static E_CompletionFlag | enumeratedValueToCompletionFlag (const OFString &enumeratedValue)
| convert DICOM enumerated value to completion flag More...
static E_VerificationFlag | enumeratedValueToVerificationFlag (const OFString &enumeratedValue)
| convert DICOM enumerated value to verification flag More...
static E_CharacterSet | definedTermToCharacterSet (const OFString &definedTerm)
| convert DICOM defined term to character set. More...
static OFBool | isDocumentTypeSupported (const E_DocumentType documentType)
| check whether specified SR document type is supported by this library More...
static const OFString & | currentDate (OFString &dateString)
| get current date in DICOM 'DA' format. More...
static const OFString & | currentTime (OFString &timeString)
| get current time in DICOM 'TM' format. More...
static const OFString & | currentDateTime (OFString &dateTimeString)
| get current date and time in DICOM 'DT' format. More...
static const OFString & | localTimezone (OFString &timezoneString)
| get local timezone in DICOM format. More...
static const OFString & | dicomToReadableDate (const OFString &dicomDate, OFString &readableDate)
| convert DICOM date string to readable format. More...
static const OFString & | dicomToReadableTime (const OFString &dicomTime, OFString &readableTime)
| convert DICOM time string to readable format. More...
static const OFString & | dicomToReadableDateTime (const OFString &dicomDateTime, OFString &readableDateTime)
| convert DICOM date time string to readable format. More...
static const OFString & | dicomToReadablePersonName (const OFString &dicomPersonName, OFString &readablePersonName)
| convert DICOM person name to readable format. More...
static const OFString & | dicomToXMLPersonName (const OFString &dicomPersonName, OFString &xmlPersonName, const OFBool writeEmptyValue=OFFalse)
| convert DICOM person name to XML format. More...
static const char * | numberToString (const size_t number, char *stringValue, size_t stringLength)
| convert unsigned integer number to character string More...
static size_t | stringToNumber (const char *stringValue)
| convert string to unsigned integer number More...
static const OFString & | convertToPrintString (const OFString &sourceString, OFString &printString)
| convert character string to print string. More...
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. More...
static const OFString & | convertToXMLString (const OFString &sourceString, OFString &markupString)
| convert character string to XML mnenonic string. More...
static OFBool | checkForValidReference (const OFString &stringValue)
| check string for valid reference (as used for by-reference relationships). More...
static DSRIODConstraintChecker * | createIODConstraintChecker (const E_DocumentType documentType)
| create specified SR IOD content relationship constraint checker object. More...
static DSRDocumentTreeNode * | createDocumentTreeNode (const E_RelationshipType relationshipType, const E_ValueType valueType)
| create specified document tree node. More...
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. More...
static void | removeAttributeFromSequence (DcmSequenceOfItems &sequence, const DcmTagKey &tagKey)
| remove given attribute from the sequence. More...
static OFCondition | getElementFromDataset (DcmItem &dataset, DcmElement &delem)
| get element from dataset More...
static const char * | getStringValueFromElement (const DcmElement &delem)
| get string value from element More...
static const OFString & | getStringValueFromElement (const DcmElement &delem, OFString &stringValue)
| get string value from element. More...
static OFCondition | getStringValueFromElement (const DcmElement &delem, OFString &stringValue, const signed long pos)
| get string value from element More...
static const OFString & | getPrintStringFromElement (const DcmElement &delem, OFString &stringValue)
| get string value from element and convert to "print" format. More...
static const OFString & | getMarkupStringFromElement (const DcmElement &delem, OFString &stringValue, const OFBool convertNonASCII=OFFalse)
| get string value from element and convert to HTML/XML. More...
static OFCondition | getStringValueFromDataset (DcmItem &dataset, const DcmTagKey &tagKey, OFString &stringValue, const signed long pos=0)
| get string value from dataset More...
static OFCondition | putStringValueToDataset (DcmItem &dataset, const DcmTag &tag, const OFString &stringValue, const OFBool allowEmpty=OFTrue)
| put string value to dataset More...
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. More...
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. More...
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. More...
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. More...
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. More...
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. More...
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 More...
static OFBool | writeStringValueToXML (STD_NAMESPACE ostream &stream, const OFString &stringValue, const OFString &tagName, const OFBool writeEmptyValue=OFFalse)
| write string value to XML output stream. More...
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. More...
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. More...
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 More...
static OFCondition | appendStream (STD_NAMESPACE ostream &mainStream, OFOStringStream &tempStream, const char *heading=NULL)
| append one output stream to another. More...

## Static Public Attributes
read() flags
These flags can be combined and passed to the read() methods. The 'shortcut' flags can be used for common combinations.
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")
renderHTML() flags
These flags can be combined and passed to the renderHMTL() methods. Please note that only the 'external' flags can be used from outside this library. The 'shortcut' flags can be used for common combinations.
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
read/writeXML() flags
These flags can be combined and passed to the read/writeXML() methods. The 'shortcut' flags can be used for common combinations.
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)
print() flags
These flags can be combined and passed to the print() methods. The 'shortcut' flags can be used for common combinations.
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)
checkByReferenceRelationships() modes
These modes can be combined and passed to the checkByReferenceRelationships() method.
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
checkByReferenceRelationships() bit masks
These bit masks are used to "filter" valid flags passed to checkByReferenceRelationships().
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

General purpose class hiding global functions, constants and types from the global namespace.

Some of them might be moved to 'ofstd' later on. All functions and constants are static and can, therefore, be accessed without creating an instance of this class.

## Member Enumeration Documentation

## ◆ E_AddMode

enum DSRTypes::E_AddMode

Add node mode.

Enumerator
AM_afterCurrent | add new node after current one (sibling)
AM_beforeCurrent | add new node before current one (sibling)
AM_belowCurrent | add new node below current one (after last child)
AM_belowCurrentBeforeFirstChild | add new node below current one (before first child)

## ◆ E_CharacterSet

enum DSRTypes::E_CharacterSet

Specific character set.

Enumerator
CS_invalid | internal type used to indicate an error
CS_unknown | internal type used to indicate an unknown/unsupported character set
CS_ASCII | ISO 646 (ISO-IR 6): ASCII.
CS_default | internal type used to indicate the default character set
CS_Latin1 | ISO-IR 100: Latin alphabet No. 1.
CS_Latin2 | ISO-IR 101: Latin alphabet No. 2.
CS_Latin3 | ISO-IR 109: Latin alphabet No. 3.
CS_Latin4 | ISO-IR 110: Latin alphabet No. 4.
CS_Cyrillic | ISO-IR 144: Cyrillic.
CS_Arabic | ISO-IR 127: Arabic.
CS_Greek | ISO-IR 126: Greek.
CS_Hebrew | ISO-IR 138: Hebrew.
CS_Latin5 | ISO-IR 148: Latin alphabet No. 5.
CS_Latin9 | ISO-IR 203: Latin alphabet No. 9.
CS_Thai | ISO-IR 166: Thai.
CS_Japanese | ISO-IR 13/87: Japanese (Katakana/Romaji/Kanji)
CS_Korean | ISO-IR 6/149: Korean (Hangul/Hanja)
CS_ChineseISO | ISO-IR 6/58: Chinese.
CS_ChineseGB18030 | GB18030: Chinese.
CS_ChineseGBK | GBK: Chinese.
CS_UTF8 | UTF-8: Unicode in UTF-8.
CS_last | internal type used to mark the last entry

## ◆ E_CodeValueType

enum DSRTypes::E_CodeValueType

Code value type.

Enumerator
CVT_auto | determine code value type automatically
CVT_Short | short code value (VR=SH)
CVT_Long | long code value (VR=UC)
CVT_URN | URN code value (VR=UR)

## ◆ E_CompletionFlag

enum DSRTypes::E_CompletionFlag

SR document completion flag.

Enumerator
CF_invalid | internal type used to indicate an error
CF_Partial | DICOM enumerated value: PARTIAL.
CF_Complete | DICOM enumerated value: COMPLETE.
CF_last | internal type used to mark the last entry

## ◆ E_ContinuityOfContent

enum DSRTypes::E_ContinuityOfContent

SR continuity of content flag.

Used for content item CONTAINER.

Enumerator
COC_invalid | internal type used to indicate an error
COC_Separate | DICOM enumerated value: SEPARATE.
COC_Continuous | DICOM enumerated value: CONTINUOUS.
COC_last | internal type used to mark the last entry

## ◆ E_DocumentType

enum DSRTypes::E_DocumentType

SR document types (DICOM IOD)

Enumerator
DT_invalid | internal type used to indicate an error
DT_unknown | internal type used to indicate an unknown/unsupported document type
DT_BasicTextSR | DICOM IOD: Basic Text SR.
DT_EnhancedSR | DICOM IOD: Enhanced SR.
DT_ComprehensiveSR | DICOM IOD: Comprehensive SR.
DT_KeyObjectSelectionDocument | DICOM IOD: Key Object Selection Document.
DT_MammographyCadSR | DICOM IOD: Mammography CAD SR.
DT_ChestCadSR | DICOM IOD: Chest CAD SR.
DT_ColonCadSR | DICOM IOD: Colon CAD SR.
DT_ProcedureLog | DICOM IOD: Procedure Log.
DT_XRayRadiationDoseSR | DICOM IOD: X-Ray Radiation Dose SR.
DT_EnhancedXRayRadiationDoseSR | DICOM IOD: Enhanced X-Ray Radiation Dose SR (not yet implemented)
DT_SpectaclePrescriptionReport | DICOM IOD: Spectacle Prescription Report.
DT_MacularGridThicknessAndVolumeReport | DICOM IOD: Macular Grid Thickness and Volume Report.
DT_ImplantationPlanSRDocument | DICOM IOD: Implantation Plan SR Document.
DT_Comprehensive3DSR | DICOM IOD: Comprehensive 3D SR.
DT_RadiopharmaceuticalRadiationDoseSR | DICOM IOD: Radiopharmaceutical Radiation Dose SR.
DT_ExtensibleSR | DICOM IOD: Extensible SR (not yet implemented)
DT_AcquisitionContextSR | DICOM IOD: Acquisition Context SR.
DT_SimplifiedAdultEchoSR | DICOM IOD: Simplified Adult Echo SR.
DT_PatientRadiationDoseSR | DICOM IOD: Patient Radiation Dose SR.
DT_PerformedImagingAgentAdministrationSR | DICOM IOD: Performed Imaging Agent Administration SR.
DT_PlannedImagingAgentAdministrationSR | DICOM IOD: Planned Imaging Agent Administration SR.
DT_RenditionSelectionDocument | DICOM IOD: Rendition Selection Document.
DT_WaveformAnnotationSR | DICOM IOD: Waveform Annotation SR.
DT_last | internal type used to mark the last entry

## ◆ E_GraphicType

enum DSRTypes::E_GraphicType

SR graphic types.

Used for content item SCOORD.

Enumerator
GT_invalid | internal type used to indicate an error
GT_unknown | internal type used to indicate an unknown graphic type (defined term)
GT_Point | DICOM Graphic Type: POINT.
GT_Multipoint | DICOM Graphic Type: MULTIPOINT.
GT_Polyline | DICOM Graphic Type: POLYLINE.
GT_Circle | DICOM Graphic Type: CIRCLE.
GT_Ellipse | DICOM Graphic Type: ELLIPSE.
GT_last | internal type used to mark the last entry

## ◆ E_GraphicType3D

enum DSRTypes::E_GraphicType3D

SR graphic types (3D).

Used for content item SCOORD3D.

Enumerator
GT3_invalid | internal type used to indicate an error
GT3_unknown | internal type used to indicate an unknown graphic type (defined term)
GT3_Point | DICOM Graphic Type: POINT.
GT3_Multipoint | DICOM Graphic Type: MULTIPOINT.
GT3_Polyline | DICOM Graphic Type: POLYLINE.
GT3_Polygon | DICOM Graphic Type: POLYGON.
GT3_Ellipse | DICOM Graphic Type: ELLIPSE.
GT3_Ellipsoid | DICOM Graphic Type: ELLIPSOID.
GT3_last | internal type used to mark the last entry

## ◆ E_PreliminaryFlag

enum DSRTypes::E_PreliminaryFlag

SR document preliminary flag.

Enumerator
PF_invalid | internal type used to indicate an error or the absence of this flag
PF_Preliminary | DICOM enumerated value: PRELIMINARY.
PF_Final | DICOM enumerated value: FINAL.
PF_last | internal type used to mark the last entry

## ◆ E_PresentationStateType

enum DSRTypes::E_PresentationStateType

Softcopy presentation state types.

Used for content item IMAGE.

Enumerator
PT_invalid | internal type used to indicate an error
PT_unknown | internal type used to indicate an unknown presentation state type (SOP class)
PT_Grayscale | Grayscale Softcopy Presentation State (GSPS)
PT_Color | Color Softcopy Presentation State (CSPS)
PT_PseudoColor | Pseudo-Color Softcopy Presentation State (PCSPS)
PT_Blending | Blending Softcopy Presentation State (BSPS)
PT_XAXRFGrayscale | XA/XRF Grayscale Softcopy Presentation State (XGSPS)
PT_GrayscalePlanarMPR | Grayscale Planar MPR Volumetric Presentation State (GP-VPS)
PT_CompositingPlanarMPR | Compositing Planar MPR Volumetric Presentation State (CP-VPS)
PT_AdvancedBlending | Advanced Blending Presentation State (ABPS)
PT_VolumeRendering | Volume Rendering Volumetric Presentation State (VR-VPS)
PT_SegmentedVolumeRendering | Segmented Volume Rendering Volumetric Presentation State (SVR-VPS)
PT_MultipleVolumeRendering | Multiple Volume Rendering Volumetric Presentation State (MVR-VPS)
PT_VariableModalityLUT | Variable Modality LUT Softcopy Presentation State (VML-SPS)
PT_Waveform | Waveform Presentation State (WPS)
PT_WaveformAcquisition | Waveform Acquisition Presentation State (WAPS)
PT_last | internal type used to mark the last entry

## ◆ E_RelationshipType

enum DSRTypes::E_RelationshipType

SR relationship types.

Enumerator
RT_invalid | internal type used to indicate an error
RT_unknown | internal type used to indicate an unknown relationship type (defined term)
RT_isRoot | internal type used for the document root
RT_contains | DICOM Relationship Type: CONTAINS.
RT_hasObsContext | DICOM Relationship Type: HAS OBS CONTEXT.
RT_hasAcqContext | DICOM Relationship Type: HAS ACQ CONTEXT.
RT_hasConceptMod | DICOM Relationship Type: HAS CONCEPT MOD.
RT_hasProperties | DICOM Relationship Type: HAS PROPERTIES.
RT_inferredFrom | DICOM Relationship Type: INFERRED FROM.
RT_selectedFrom | DICOM Relationship Type: SELECTED FROM.
RT_last | internal type used to mark the last entry

## ◆ E_TemporalRangeType

enum DSRTypes::E_TemporalRangeType

SR temporal range types.

Used for content item TCOORD.

Enumerator
TRT_invalid | internal type used to indicate an error
TRT_unknown | internal type used to indicate an unknown range type (defined term)
TRT_Point | DICOM Temporal Range Type: POINT.
TRT_Multipoint | DICOM Temporal Range Type: MULTIPOINT.
TRT_Segment | DICOM Temporal Range Type: SEGMENT.
TRT_Multisegment | DICOM Temporal Range Type: MULTISEGMENT.
TRT_Begin | DICOM Temporal Range Type: BEGIN.
TRT_End | DICOM Temporal Range Type: END.
TRT_last | internal type used to mark the last entry

## ◆ E_ValueType

enum DSRTypes::E_ValueType

SR value types.

Enumerator
VT_invalid | internal type used to indicate an error
VT_Text | DICOM Value Type: TEXT.
VT_Code | DICOM Value Type: CODE.
VT_Num | DICOM Value Type: NUM.
VT_DateTime | DICOM Value Type: DATETIME.
VT_Date | DICOM Value Type: DATE.
VT_Time | DICOM Value Type: TIME.
VT_UIDRef | DICOM Value Type: UIDREF.
VT_PName | DICOM Value Type: PNAME.
VT_SCoord | DICOM Value Type: SCOORD.
VT_SCoord3D | DICOM Value Type: SCOORD3D.
VT_TCoord | DICOM Value Type: TCOORD.
VT_Composite | DICOM Value Type: COMPOSITE.
VT_Image | DICOM Value Type: IMAGE.
VT_Waveform | DICOM Value Type: WAVEFORM.
VT_Container | DICOM Value Type: CONTAINER.
VT_byReference | internal type used to indicate by-reference relationships
VT_includedTemplate | internal type used to indicate (enclose) included templates
VT_last | internal type used to mark the last entry

## ◆ E_VerificationFlag

enum DSRTypes::E_VerificationFlag

SR document verification flag.

Enumerator
VF_invalid | internal type used to indicate an error
VF_Unverified | DICOM enumerated value: UNVERIFIED.
VF_Verified | DICOM enumerated value: VERIFIED.
VF_last | internal type used to mark the last entry

## Constructor & Destructor Documentation

## ◆ ~DSRTypes()

virtual DSRTypes::~DSRTypes | ( |  | ) |
| virtual

destructor.

(only needed to avoid compiler warnings)

## Member Function Documentation

## ◆ addElementToDataset()

static OFCondition DSRTypes::addElementToDataset | ( | OFCondition & | result,
|  | DcmItem & | dataset,
|  | DcmElement * | delem,
|  | const OFString & | vm,
|  | const OFString & | type,
|  | const char * | moduleName = `NULL`
| ) |  |
| static

add given element to the dataset.

The element is only added if 'result' is EC_Normal and the 'delem' pointer is not NULL.

Parameters

  result | reference to status variable (checked before adding and updated afterwards!)
  dataset | reference to DICOM dataset to which the element should be added
  delem | pointer to DICOM element which should be added. deleted if not inserted.
  vm | value multiplicity (according to the data dictionary) to be checked for. (See DcmElement::checkVM() for a list of valid values.) Interpreted as cardinality (number of items) for sequence attributes.
  type | value type (valid value: "1", "2" or something else which is not checked)
  moduleName | optional module name to be printed (default: "SR document" if NULL)

Returns
  current value of 'result', EC_Normal if successful, an error code otherwise

## ◆ appendStream()

static OFCondition DSRTypes::appendStream | ( | STD_NAMESPACE ostream & | mainStream,
|  | OFOStringStream & | tempStream,
|  | const char * | heading = `NULL`
| ) |  |
| static

append one output stream to another.

Parameters

  mainStream | stream to which the other should be added
  tempStream | (string) stream to be added to the other
  heading | (optional) string which is added to the 'mainStream' before the 'tempStream'. This string is only added if 'tempStream' is not empty.

Returns
  status, EC_Normal if stream has been added successfully, an error code otherwise

## ◆ characterSetToDefinedTerm()

static const char* DSRTypes::characterSetToDefinedTerm | ( | const E_CharacterSet | characterSet | ) |
| static

convert character set to DICOM defined term

Parameters

  characterSet | character set to be converted

Returns
  defined term if character set is valid, empty string otherwise (never NULL)

## ◆ characterSetToHTMLName()

static const char* DSRTypes::characterSetToHTMLName | ( | const E_CharacterSet | characterSet | ) |
| static

convert character set to HTML name.

This HTML (IANA) name is used to specify the character set in an HTML document.

Parameters

  characterSet | character set to be converted

Returns
  HTML name if character set is valid, empty string or "?" otherwise (never NULL)

## ◆ characterSetToXMLName()

static const char* DSRTypes::characterSetToXMLName | ( | const E_CharacterSet | characterSet | ) |
| static

convert character set to XML name.

This XML name is used to specify the character set in an XML document.

Parameters

  characterSet | character set to be converted

Returns
  XML name if character set is valid, empty string or "?" otherwise (never NULL)

## ◆ checkElementValue() [1/2]

static OFBool DSRTypes::checkElementValue | ( | DcmElement & | delem,
|  | const OFString & | vm,
|  | const OFString & | type,
|  | const OFCondition & | searchCond = `EC_Normal`,
|  | const char * | moduleName = `NULL`,
|  | const OFBool | acceptViolation = `OFFalse`
| ) |  |
| static

check element value for correct value multiplicity and type.

Parameters

  delem | DICOM element to be checked
  vm | value multiplicity (according to the data dictionary) to be checked for. (See DcmElement::checkVM() for a list of valid values.) Interpreted as cardinality (number of items) for sequence attributes.
  type | value type (valid value: "1", "1C", "2", something else)
  searchCond | optional flag indicating the status of a previous search() call
  moduleName | optional module name to be printed (default: "SR document" if NULL)
  acceptViolation | accept certain violations regarding the VR and VM if OFTrue. A warning message will always be reported if the value in incorrect.

Returns
  OFTrue if element value is correct, OFFalse otherwise

## ◆ checkElementValue() [2/2]

static OFBool DSRTypes::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`
| ) |  |
| static

check element value for correct value multiplicity and type.

Parameters

  delem | pointer to DICOM element to be checked (might be NULL)
  tagKey | DICOM tag of the DICOM element the parameter 'delem' points to
  vm | value multiplicity (according to the data dictionary) to be checked for. (See DcmElement::checkVM() for a list of valid values.) Interpreted as cardinality (number of items) for sequence attributes.
  type | value type (valid value: "1", "1C", "2", something else)
  searchCond | optional flag indicating the status of a previous search() call
  moduleName | optional module name to be printed (default: "SR document" if NULL)
  acceptViolation | accept certain violations regarding the VR and VM if OFTrue. A warning message will always be reported if the value in incorrect.

Returns
  OFTrue if element value is correct, OFFalse otherwise

## ◆ checkForValidReference()

static OFBool DSRTypes::checkForValidReference | ( | const OFString & | stringValue | ) |
| static

check string for valid reference (as used for by-reference relationships).

The string should be non-empty and consist of integer numbers only separated by a "." where the first and the last character of the string are always figures (0..9). Example: 1 or 1.2.3. Both the integer number 0 and a leading 0 for the numbers are forbidden.

Parameters

  stringValue | character string to be checked

Returns
  OFTrue if 'string' conforms to UID format, OFFalse otherwise

## ◆ completionFlagToEnumeratedValue()

static const char* DSRTypes::completionFlagToEnumeratedValue | ( | const E_CompletionFlag | completionFlag | ) |
| static

convert completion flag to DICOM enumerated value

Parameters

  completionFlag | completion flag to be converted

Returns
  enumerated value if successful, empty string otherwise (never NULL)

## ◆ continuityOfContentToEnumeratedValue()

static const char* DSRTypes::continuityOfContentToEnumeratedValue | ( | const E_ContinuityOfContent | continuityOfContent | ) |
| static

convert continuity of content flag to DICOM enumerated value

Parameters

  continuityOfContent | continuity of content flag to be converted

Returns
  enumerated value if flag is valid, empty string otherwise (never NULL)

## ◆ convertToHTMLString()

static const OFString& DSRTypes::convertToHTMLString | ( | const OFString & | sourceString,
|  | OFString & | markupString,
|  | const size_t | flags = `0`,
|  | const OFBool | newlineAllowed = `OFFalse`
| ) |  |
| static

convert character string to HTML mnenonic string.

Characters with special meaning for HTML (e.g. '<' and '&') are replace by the corresponding mnenonics (e.g. "&lt;" and "&amp;"). If flag DSRTypes::HF_convertNonASCIICharacters is set, all characters > #127 are also converted (useful if only HTML 3.2 is supported which does not allow to specify the character set).

Parameters

  sourceString | source string to be converted
  markupString | reference to variable where the result should be stored
  flags | optional flags, only checking DSRTypes::HF_convertNonASCIICharacters, DSRTypes::HF_HTML32Compatibility and DSRTypes::HF_XHTML11Compatibility
  newlineAllowed | optional flag indicating whether newlines are allowed or not. If they are allowed the text "<br>" is used, "&para;" otherwise. The following combinations are accepted: LF, CR, LF CR, CF LF.

Returns
  reference to resulting 'markupString' (might be empty if 'sourceString' was empty)

## ◆ convertToPrintString()

static const OFString& DSRTypes::convertToPrintString | ( | const OFString & | sourceString,
|  | OFString & | printString
| ) |  |
| static

convert character string to print string.

This method is used to convert character strings for text "print" output. Newline characters "\n" are replaced by "\\n", return characters "\r" by "\\r", etc.

Parameters

  sourceString | source string to be converted
  printString | reference to variable where the result should be stored

Returns
  reference to resulting 'printString' (might be empty if 'sourceString' was empty)

## ◆ convertToXMLString()

static const OFString& DSRTypes::convertToXMLString | ( | const OFString & | sourceString,
|  | OFString & | markupString
| ) |  |
| static

convert character string to XML mnenonic string.

Characters with special meaning for XML (e.g. '<' and '&') are replace by the corresponding mnenonics (e.g. "&lt;" and "&amp;").

Parameters

  sourceString | source string to be converted
  markupString | reference to variable where the result should be stored

Returns
  reference to resulting 'markupString' (might be empty if 'sourceString' was empty)

## ◆ createDocumentTreeNode()

static DSRDocumentTreeNode* DSRTypes::createDocumentTreeNode | ( | const E_RelationshipType | relationshipType,
|  | const E_ValueType | valueType
| ) |  |
| static

create specified document tree node.

This is a shortcut and the only location where document tree nodes are created. It facilitates the introduction of new relationship/value types and the maintenance.

Parameters

  relationshipType | relationship type of the node to be created
  valueType | value type of the node to be created

Returns
  pointer to the new document tree node if successful, NULL otherwise

## ◆ createHTMLAnnexEntry()

static size_t DSRTypes::createHTMLAnnexEntry | ( | STD_NAMESPACE ostream & | docStream,
|  | STD_NAMESPACE ostream & | annexStream,
|  | const OFString & | referenceText,
|  | size_t & | annexNumber,
|  | const size_t | flags = `0`
| ) |  |
| static

create an HTML annex entry with hyperlinks.

A reference text is added to the main document and a new annex entry to the document annex with HTML hyperlinks between both. Example for a reference: '[for details see Annex 1]'

Parameters

  docStream | output stream used for the main document
  annexStream | output stream used for the document annex
  referenceText | optional text added to the main document (e.g. 'for details see')
  annexNumber | reference to the variable where the current annex number is stored. Value is increased automatically by 1 after the new entry has been added.
  flags | optional flag used to customize the output (see DSRTypes::HF_xxx)

Returns
  current annex number after the new entry has been added

## ◆ createHTMLFootnote()

static size_t DSRTypes::createHTMLFootnote | ( | STD_NAMESPACE ostream & | docStream,
|  | STD_NAMESPACE ostream & | footnoteStream,
|  | size_t & | footnoteNumber,
|  | const size_t | nodeID,
|  | const size_t | flags = `0`
| ) |  |
| static

create an HTML footnote with hyperlinks

Parameters

  docStream | output stream used for the main document
  footnoteStream | output stream used for the footnote text
  footnoteNumber | reference to the variable where the current footnote number is stored. Value is increased automatically by 1 after the new entry has been added.
  nodeID | unique numerical identifier of the current node for which this footnote is created. Used to create a unique name for the hyperlink.
  flags | optional flag used to customize the output (see DSRTypes::HF_xxx)

Returns
  current footnote number after the new entry has been added

## ◆ createIODConstraintChecker()

static DSRIODConstraintChecker* DSRTypes::createIODConstraintChecker | ( | const E_DocumentType | documentType | ) |
| static

create specified SR IOD content relationship constraint checker object.

Please note that the created object has to be deleted by the caller.

Parameters

  documentType | associated SR document type for which the checker object is created

Returns
  pointer to new IOD checker object if successful, NULL if document type is not supported

## ◆ currentDate()

static const OFString& DSRTypes::currentDate | ( | OFString & | dateString | ) |
| static

get current date in DICOM 'DA' format.

(YYYYMMDD)

Parameters

  dateString | string used to store the current date. ('19000101' if current date could not be retrieved)

Returns
  resulting character string (see 'dateString')

## ◆ currentDateTime()

static const OFString& DSRTypes::currentDateTime | ( | OFString & | dateTimeString | ) |
| static

get current date and time in DICOM 'DT' format.

(YYYYMMDDHHMMSS) The optional UTC notation (e.g. +0100) as well as the optional fractional second part are currently not supported.

Parameters

  dateTimeString | string used to store the current date and time ('19000101000000' if current date/time could not be retrieved)

Returns
  resulting character string (see 'dateTimeString')

## ◆ currentTime()

static const OFString& DSRTypes::currentTime | ( | OFString & | timeString | ) |
| static

get current time in DICOM 'TM' format.

(HHMMSS)

Parameters

  timeString | string used to store the current time ('000000' if current time could not be retrieved)

Returns
  resulting character string (see 'timeString')

## ◆ definedTermToCharacterSet()

static E_CharacterSet DSRTypes::definedTermToCharacterSet | ( | const OFString & | definedTerm | ) |
| static

convert DICOM defined term to character set.

An empty defined term is mapped to DSRTypes::CS_default (which is ASCII).

Parameters

  definedTerm | defined term to be converted

Returns
  character set if successful, DSRTypes::CS_invalid otherwise

## ◆ definedTermToRelationshipType()

static E_RelationshipType DSRTypes::definedTermToRelationshipType | ( | const OFString & | definedTerm | ) |
| static

convert DICOM defined term to relationship type

Parameters

  definedTerm | defined term to be converted

Returns
  relationship type if successful, DSRTypes::RT_invalid otherwise

## ◆ definedTermToValueType()

static E_ValueType DSRTypes::definedTermToValueType | ( | const OFString & | definedTerm | ) |
| static

convert DICOM defined term to value type

Parameters

  definedTerm | defined term to be converted

Returns
  value type if successful, DSRTypes::VT_invalid otherwise

## ◆ dicomToReadableDate()

static const OFString& DSRTypes::dicomToReadableDate | ( | const OFString & | dicomDate,
|  | OFString & | readableDate
| ) |  |
| static

convert DICOM date string to readable format.

The ISO format "YYYY-MM-DD" is used for the readable format.

Parameters

  dicomDate | date in DICOM DA format (YYYYMMDD)
  readableDate | reference to variable where the resulting string is stored

Returns
  reference to resulting string (might be empty)

## ◆ dicomToReadableDateTime()

static const OFString& DSRTypes::dicomToReadableDateTime | ( | const OFString & | dicomDateTime,
|  | OFString & | readableDateTime
| ) |  |
| static

convert DICOM date time string to readable format.

The format "YYYY-MM-DD, HH:MM" or "YYYY-MM-DD, HH:MM:SS" is used for the readable format.

Parameters

  dicomDateTime | time in DICOM DT format (YYYYMMDDHHMMSS...). Possible suffixes (fractional second or UTC notation) are currently ignored.
  readableDateTime | reference to variable where the resulting string is stored

Returns
  reference to resulting string (might be empty)

## ◆ dicomToReadablePersonName()

static const OFString& DSRTypes::dicomToReadablePersonName | ( | const OFString & | dicomPersonName,
|  | OFString & | readablePersonName
| ) |  |
| static

convert DICOM person name to readable format.

The format "<prefix> <first_name> <middle_name> <last_name>, <suffix>" is used for the readable format. Please note that only the first component group (characters before the first '=') of the DICOM person name is used - see DcmPersonName::getNameComponents() for details.

Parameters

  dicomPersonName | person name in DICOM PN format (ln^fn^mn^p^s)
  readablePersonName | reference to variable where the resulting string is stored

Returns
  reference to resulting string (might be empty)

## ◆ dicomToReadableTime()

static const OFString& DSRTypes::dicomToReadableTime | ( | const OFString & | dicomTime,
|  | OFString & | readableTime
| ) |  |
| static

convert DICOM time string to readable format.

The ISO format "HH:MM" or "HH:MM:SS" (if seconds are available) is used for the readable format.

Parameters

  dicomTime | time in DICOM TM format (HHMM or HHMMSS...)
  readableTime | reference to variable where the resulting string is stored

Returns
  reference to resulting string (might be empty)

## ◆ dicomToXMLPersonName()

static const OFString& DSRTypes::dicomToXMLPersonName | ( | const OFString & | dicomPersonName,
|  | OFString & | xmlPersonName,
|  | const OFBool | writeEmptyValue = `OFFalse`
| ) |  |
| static

convert DICOM person name to XML format.

The tags <prefix>, <first>, <middle>, <last> and <suffix> are used for the XML format of a person name. The string is automatically converted to the markup notation (see convertToMarkupString()). Two tags are separated by a newline. Please note that only the first component group (characters before the first '=') of the DICOM person name is used - see DcmPersonName::getNameComponents() for details.

Parameters

  dicomPersonName | person name in DICOM PN format (ln^fn^mn^p^s)
  xmlPersonName | reference to variable where the resulting string is stored
  writeEmptyValue | optional flag indicating whether an empty value should be written

Returns
  reference to resulting string (might be empty)

## ◆ documentTypeToDocumentTitle()

static const char* DSRTypes::documentTypeToDocumentTitle | ( | const E_DocumentType | documentType,
|  | OFString & | documentTitle
| ) |  |
| static

convert SR document type to document title.

This document title is used for printing/rendering.

Parameters

  documentType | SR document type to be converted
  documentTitle | reference to variable where the resulting string is stored

Returns
  document title if type is valid, empty string otherwise (never NULL)

## ◆ documentTypeToModality()

static const char* DSRTypes::documentTypeToModality | ( | const E_DocumentType | documentType | ) |
| static

convert SR document type to modality

Parameters

  documentType | SR document type to be converted

Returns
  modality if type is valid, empty string otherwise (never NULL)

## ◆ documentTypeToReadableName()

static const char* DSRTypes::documentTypeToReadableName | ( | const E_DocumentType | documentType | ) |
| static

convert SR document type to readable name.

Such a readable name is better suited for printing/rendering.

Parameters

  documentType | SR document type to be converted

Returns
  readable name if type is valid, "invalid ..." string otherwise (never NULL)

## ◆ documentTypeToSOPClassUID()

static const char* DSRTypes::documentTypeToSOPClassUID | ( | const E_DocumentType | documentType | ) |
| static

convert SR document type to SOP class UID

Parameters

  documentType | SR document type to be converted

Returns
  SOP class UID if type is valid, empty string otherwise (never NULL)

## ◆ enumeratedValueToCompletionFlag()

static E_CompletionFlag DSRTypes::enumeratedValueToCompletionFlag | ( | const OFString & | enumeratedValue | ) |
| static

convert DICOM enumerated value to completion flag

Parameters

  enumeratedValue | enumerated value to be converted

Returns
  completion flag type if successful, DSRTypes::CF_invalid otherwise

## ◆ enumeratedValueToContinuityOfContent()

static E_ContinuityOfContent DSRTypes::enumeratedValueToContinuityOfContent | ( | const OFString & | enumeratedValue | ) |
| static

convert DICOM enumerated value to continuity of content flag

Parameters

  enumeratedValue | enumerated value to be converted

Returns
  continuity of content flag type if successful, DSRTypes::COC_invalid otherwise

## ◆ enumeratedValueToGraphicType()

static E_GraphicType DSRTypes::enumeratedValueToGraphicType | ( | const OFString & | enumeratedValue | ) |
| static

convert DICOM enumerated value to graphic type

Parameters

  enumeratedValue | enumerated value to be converted

Returns
  graphic type if successful, DSRTypes::GT_invalid otherwise

## ◆ enumeratedValueToGraphicType3D()

static E_GraphicType3D DSRTypes::enumeratedValueToGraphicType3D | ( | const OFString & | enumeratedValue | ) |
| static

convert DICOM enumerated value to graphic type (3D)

Parameters

  enumeratedValue | enumerated value to be converted

Returns
  graphic type if successful, DSRTypes::GT3_invalid otherwise

## ◆ enumeratedValueToPreliminaryFlag()

static E_PreliminaryFlag DSRTypes::enumeratedValueToPreliminaryFlag | ( | const OFString & | enumeratedValue | ) |
| static

convert DICOM enumerated value to preliminary flag

Parameters

  enumeratedValue | enumerated value to be converted

Returns
  preliminary flag type if successful, DSRTypes::PF_invalid otherwise

## ◆ enumeratedValueToTemporalRangeType()

static E_TemporalRangeType DSRTypes::enumeratedValueToTemporalRangeType | ( | const OFString & | enumeratedValue | ) |
| static

convert DICOM enumerated value to temporal range type

Parameters

  enumeratedValue | enumerated value to be converted

Returns
  temporal range type if successful, DSRTypes::TRT_invalid otherwise

## ◆ enumeratedValueToVerificationFlag()

static E_VerificationFlag DSRTypes::enumeratedValueToVerificationFlag | ( | const OFString & | enumeratedValue | ) |
| static

convert DICOM enumerated value to verification flag

Parameters

  enumeratedValue | enumerated value to be converted

Returns
  verification flag type if successful, DSRTypes::VF_invalid otherwise

## ◆ getAndCheckElementFromDataset()

static OFCondition DSRTypes::getAndCheckElementFromDataset | ( | DcmItem & | dataset,
|  | DcmElement & | delem,
|  | const OFString & | vm,
|  | const OFString & | type,
|  | const char * | moduleName = `NULL`,
|  | const OFBool | acceptViolation = `OFFalse`
| ) |  |
| static

get element from dataset and check it for correct value multiplicity and type.

Parameters

  dataset | DICOM dataset from which the element should be retrieved. (Would be 'const' if the methods from 'dcmdata' would also be 'const'.)
  delem | DICOM element used to store the value (always creates a copy!)
  vm | value multiplicity (according to the data dictionary) to be checked for. (See DcmElement::checkVM() for a list of valid values.) Interpreted as cardinality (number of items) for sequence attributes.
  type | value type (valid value: "1", "1C", "2", something else which is not checked)
  moduleName | optional module name to be printed (default: "SR document" if NULL)
  acceptViolation | accept certain violations regarding the VR and VM if OFTrue. A warning message will always be reported if the value in incorrect.

Returns
  status, EC_Normal if element could be retrieved and value is correct, an error code otherwise

## ◆ getAndCheckStringValueFromDataset()

static OFCondition DSRTypes::getAndCheckStringValueFromDataset | ( | DcmItem & | dataset,
|  | const DcmTagKey & | tagKey,
|  | OFString & | stringValue,
|  | const OFString & | vm,
|  | const OFString & | type,
|  | const char * | moduleName = `NULL`,
|  | const OFBool | acceptViolation = `OFFalse`
| ) |  |
| static

get string value from dataset and check it for correct value multiplicity and type.

Parameters

  dataset | DICOM dataset from which the element should be retrieved. (Would be 'const' if the methods from 'dcmdata' would also be 'const'.)
  tagKey | DICOM tag specifying the attribute from which the string should be retrieved
  stringValue | reference to variable in which the result should be stored. (This parameter is automatically cleared if the tag could not be found. It is not cleared if the retrieved string is invalid, e.g. violates VR or VM definition.)
  vm | value multiplicity (according to the data dictionary) to be checked for. (See DcmElement::checkVM() for a list of valid values.) Interpreted as cardinality (number of items) for sequence attributes.
  type | value type (valid value: "1", "1C", "2", something else which is not checked)
  moduleName | optional module name to be printed (default: "SR document" if NULL)
  acceptViolation | accept certain violations regarding the VR and VM if OFTrue. A warning message will always be reported if the value in incorrect.

Returns
  status, EC_Normal if element could be retrieved and value is correct, an error code otherwise

## ◆ getElementFromDataset()

static OFCondition DSRTypes::getElementFromDataset | ( | DcmItem & | dataset,
|  | DcmElement & | delem
| ) |  |
| static

get element from dataset

Parameters

  dataset | reference to DICOM dataset from which the element should be retrieved. (Would be 'const' if the methods from 'dcmdata' would also be 'const'.)
  delem | reference to DICOM element which should be retrieved. The return value is also stored in this parameter.

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ getMarkupStringFromElement()

static const OFString& DSRTypes::getMarkupStringFromElement | ( | const DcmElement & | delem,
|  | OFString & | stringValue,
|  | const OFBool | convertNonASCII = `OFFalse`
| ) |  |
| static

get string value from element and convert to HTML/XML.

Please note that only the first element value is retrieved (in case of multiple values).

Parameters

  delem | DICOM element from which the string value should be retrieved
  stringValue | reference to variable in which the result should be stored
  convertNonASCII | convert non-ASCII characters (> #127) to numeric value (&#nnn;) if OFTrue

Returns
  reference character string if successful, empty string otherwise

## ◆ getPrintStringFromElement()

static const OFString& DSRTypes::getPrintStringFromElement | ( | const DcmElement & | delem,
|  | OFString & | stringValue
| ) |  |
| static

get string value from element and convert to "print" format.

Please note that only the first element value is retrieved (in case of multiple values).

Parameters

  delem | DICOM element from which the string value should be retrieved
  stringValue | reference to variable in which the result should be stored

Returns
  reference character string if successful, empty string otherwise

## ◆ getStringValueFromDataset()

static OFCondition DSRTypes::getStringValueFromDataset | ( | DcmItem & | dataset,
|  | const DcmTagKey & | tagKey,
|  | OFString & | stringValue,
|  | const signed long | pos = `0`
| ) |  |
| static

get string value from dataset

Parameters

  dataset | DICOM dataset from which the string should be retrieved. (Would be 'const' if the methods from 'dcmdata' would also be 'const'.)
  tagKey | DICOM tag specifying the attribute from which the string should be retrieved
  stringValue | reference to variable in which the result should be stored (This parameter is automatically cleared if the tag could not be found.)
  pos | index of the value to get (0..vm-1), -1 for all components

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ getStringValueFromElement() [1/3]

static const char* DSRTypes::getStringValueFromElement | ( | const DcmElement & | delem | ) |
| static

get string value from element

Parameters

  delem | DICOM element from which the string value should be retrieved

Returns
  pointer to character string if successful, NULL otherwise

## ◆ getStringValueFromElement() [2/3]

static const OFString& DSRTypes::getStringValueFromElement | ( | const DcmElement & | delem,
|  | OFString & | stringValue
| ) |  |
| static

get string value from element.

Please note that only the first element value is retrieved (in case of multiple values).

Parameters

  delem | DICOM element from which the string value should be retrieved
  stringValue | reference to variable where the result should be stored

Returns
  reference character string if successful, empty string otherwise

## ◆ getStringValueFromElement() [3/3]

static OFCondition DSRTypes::getStringValueFromElement | ( | const DcmElement & | delem,
|  | OFString & | stringValue,
|  | const signed long | pos
| ) |  |
| static

get string value from element

Parameters

  delem | DICOM element from which the string value should be retrieved
  stringValue | reference to variable in which the result should be stored (This parameter is automatically cleared if an error occurs.)
  pos | index of the value to get (0..vm-1), -1 for all components

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ graphicType3DToEnumeratedValue()

static const char* DSRTypes::graphicType3DToEnumeratedValue | ( | const E_GraphicType3D | graphicType | ) |
| static

convert graphic type (3D) to DICOM enumerated value

Parameters

  graphicType | graphic type (3D) to be converted

Returns
  enumerated value if type is valid, empty string otherwise (never NULL)

## ◆ graphicType3DToReadableName()

static const char* DSRTypes::graphicType3DToReadableName | ( | const E_GraphicType3D | graphicType | ) |
| static

convert graphic type (3D) to readable name.

Such a readable name is better suited for printing/rendering.

Parameters

  graphicType | graphic type (3D) to be converted

Returns
  readable name if type is valid, "invalid ..." string otherwise (never NULL)

## ◆ graphicTypeToEnumeratedValue()

static const char* DSRTypes::graphicTypeToEnumeratedValue | ( | const E_GraphicType | graphicType | ) |
| static

convert graphic type to DICOM enumerated value

Parameters

  graphicType | graphic type to be converted

Returns
  enumerated value if type is valid, empty string otherwise (never NULL)

## ◆ graphicTypeToReadableName()

static const char* DSRTypes::graphicTypeToReadableName | ( | const E_GraphicType | graphicType | ) |
| static

convert graphic type to readable name.

Such a readable name is better suited for printing/rendering.

Parameters

  graphicType | graphic type to be converted

Returns
  readable name if type is valid, "invalid ..." string otherwise (never NULL)

## ◆ isDocumentTypeSupported()

static OFBool DSRTypes::isDocumentTypeSupported | ( | const E_DocumentType | documentType | ) |
| static

check whether specified SR document type is supported by this library

Parameters

  documentType | SR document type to be checked

Returns
  status, OFTrue if SR document type is supported, OFFalse otherwise

## ◆ localTimezone()

static const OFString& DSRTypes::localTimezone | ( | OFString & | timezoneString | ) |
| static

get local timezone in DICOM format.

(&ZZXX)

Parameters

  timezoneString | string used to store the local timezone ('+0000' if timezone could not be retrieved)

Returns
  resulting character string (see 'timezoneString')

## ◆ numberToString()

static const char* DSRTypes::numberToString | ( | const size_t | number,
|  | char * | stringValue,
|  | size_t | stringLength
| ) |  |
| static

convert unsigned integer number to character string

Parameters

  number | unsigned integer number to be converted
  stringValue | character string used to store the result
  stringLength | size of the character string buffer used to store the result

Returns
  pointer to the first character of the resulting string (may be NULL if 'string' was NULL)

## ◆ preliminaryFlagToEnumeratedValue()

static const char* DSRTypes::preliminaryFlagToEnumeratedValue | ( | const E_PreliminaryFlag | preliminaryFlag | ) |
| static

convert preliminary flag to DICOM enumerated value

Parameters

  preliminaryFlag | preliminary flag to be converted

Returns
  enumerated value if flag is valid, empty string otherwise (never NULL)

## ◆ presentationStateTypeToShortName()

static const char* DSRTypes::presentationStateTypeToShortName | ( | const E_PresentationStateType | pstateType | ) |
| static

convert presentation state type to short name.

Such a short name (e.g. "GSPS") is better suited for printing/rendering than a UID.

Parameters

  pstateType | presentation state type to be converted

Returns
  short name if type is valid, "invalid ..." string otherwise (never NULL)

## ◆ printContentItemErrorMessage()

static void DSRTypes::printContentItemErrorMessage | ( | const char * | action,
|  | const OFCondition & | result,
|  | const DSRDocumentTreeNode * | node,
|  | const char * | location = `NULL`
| ) |  |
| static

print an error message for the current content item.

The value type (for DEBUG mode also the node ID) is added if the 'node' if specified.

Parameters

  action | text describing the current action (e.g. 'Reading'), 'Processing' if NULL
  result | status used to print more information on the error (no message if EC_Normal)
  node | pointer to document tree node for which the message should be printed
  location | position of the affected content item (e.g. '1.2.3', not printed if NULL)

## ◆ printInvalidContentItemMessage()

static void DSRTypes::printInvalidContentItemMessage | ( | const char * | action,
|  | const DSRDocumentTreeNode * | node,
|  | const char * | location = `NULL`
| ) |  |
| static

print the warning message that the current content item is invalid/incomplete.

The value type (for DEBUG mode also the node ID) is added if the 'node' if specified.

Parameters

  action | text describing the current action (e.g. 'Reading'), 'Processing' if NULL
  node | pointer to document tree node for which the message should be printed
  location | position of the affected content item (e.g. '1.2.3', not printed if NULL)

## ◆ printUnknownValueWarningMessage()

static void DSRTypes::printUnknownValueWarningMessage | ( | const char * | valueName,
|  | const char * | readValue = `NULL`,
|  | const char * | action = `"Reading"`
| ) |  |
| static

print a warning message that an unknown/unsupported value has been determined

Parameters

  valueName | name of the unknown/unsupported value
  readValue | value that has been read (optional)
  action | text describing the current action (default: 'Reading'), 'Processing' if NULL

## ◆ putStringValueToDataset()

static OFCondition DSRTypes::putStringValueToDataset | ( | DcmItem & | dataset,
|  | const DcmTag & | tag,
|  | const OFString & | stringValue,
|  | const OFBool | allowEmpty = `OFTrue`
| ) |  |
| static

put string value to dataset

Parameters

  dataset | reference to DICOM dataset to which the string should be put.
  tag | DICOM tag specifying the attribute to which the string should be put
  stringValue | character string specifying the value to be set
  allowEmpty | allow empty element to be inserted if OFTrue. Do not insert empty element otherwise.

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ relationshipTypeToDefinedTerm()

static const char* DSRTypes::relationshipTypeToDefinedTerm | ( | const E_RelationshipType | relationshipType | ) |
| static

convert relationship type to DICOM defined term

Parameters

  relationshipType | relationship type to be converted

Returns
  defined term if type is valid, empty string otherwise (never NULL)

## ◆ relationshipTypeToReadableName()

static const char* DSRTypes::relationshipTypeToReadableName | ( | const E_RelationshipType | relationshipType | ) |
| static

convert relationship type to readable name.

Such a readable name is better suited for printing/rendering.

Parameters

  relationshipType | relationship type to be converted

Returns
  readable name if type is valid, "invalid ..." string otherwise (never NULL)

## ◆ removeAttributeFromSequence()

static void DSRTypes::removeAttributeFromSequence | ( | DcmSequenceOfItems & | sequence,
|  | const DcmTagKey & | tagKey
| ) |  |
| static

remove given attribute from the sequence.

All occurrences of the attribute in all items of the sequence are removed.

Parameters

  sequence | reference to DICOM sequence from which the attribute should be removed
  tagKey | DICOM tag specifying the attribute which should be removed

## ◆ requiresEnhancedEquipmentModule()

static OFBool DSRTypes::requiresEnhancedEquipmentModule | ( | const E_DocumentType | documentType | ) |
| static

check whether a given SR document type requires the Enhanced General Equipment Module

Parameters

  documentType | SR document type to be checked

Returns
  OFTrue if the Enhanced General Equipment Module is required, OFFalse otherwise

## ◆ requiresSynchronizationModule()

static OFBool DSRTypes::requiresSynchronizationModule | ( | const E_DocumentType | documentType | ) |
| static

check whether a given SR document type requires the Synchronization Module

Parameters

  documentType | SR document type to be checked

Returns
  OFTrue if the Synchronization Module is required, OFFalse otherwise

## ◆ requiresTimezoneModule()

static OFBool DSRTypes::requiresTimezoneModule | ( | const E_DocumentType | documentType | ) |
| static

check whether a given SR document type requires the Timezone Module

Parameters

  documentType | SR document type to be checked

Returns
  OFTrue if the Timezone Module is required, OFFalse otherwise

## ◆ sopClassUIDToDocumentType()

static E_DocumentType DSRTypes::sopClassUIDToDocumentType | ( | const OFString & | sopClassUID | ) |
| static

convert SOP class UID to SR document type

Parameters

  sopClassUID | SOP class UID to be converted

Returns
  SR document type if successful, DSRTypes::DT_invalid otherwise

## ◆ sopClassUIDToPresentationStateType()

static E_PresentationStateType DSRTypes::sopClassUIDToPresentationStateType | ( | const OFString & | sopClassUID | ) |
| static

convert SOP class UID to presentation state type

Parameters

  sopClassUID | SOP class UID to be converted

Returns
  presentation state type if successful, DSRTypes::PT_invalid otherwise

## ◆ stringToNumber()

static size_t DSRTypes::stringToNumber | ( | const char * | stringValue | ) |
| static

convert string to unsigned integer number

Parameters

  stringValue | character string to be converted

Returns
  resulting unsigned integer number if successful, 0 otherwise

Referenced by DSRTreeNodeCursor< T >::gotoNode().

## ◆ temporalRangeTypeToEnumeratedValue()

static const char* DSRTypes::temporalRangeTypeToEnumeratedValue | ( | const E_TemporalRangeType | temporalRangeType | ) |
| static

convert temporal range type to DICOM enumerated value

Parameters

  temporalRangeType | temporal range type to be converted

Returns
  enumerated value if type is valid, "invalid ..." string otherwise (never NULL)

## ◆ temporalRangeTypeToReadableName()

static const char* DSRTypes::temporalRangeTypeToReadableName | ( | const E_TemporalRangeType | temporalRangeType | ) |
| static

convert temporal range type to readable name.

Such a readable name is better suited for printing/rendering.

Parameters

  temporalRangeType | temporal range type to be converted

Returns
  readable name if type is valid, "invalid ..." string otherwise (never NULL)

## ◆ usesKeyObjectDocumentModule()

static OFBool DSRTypes::usesKeyObjectDocumentModule | ( | const E_DocumentType | documentType | ) |
| static

check whether a given SR document type uses the Key Object Document Module (instead of the SR Document General Module)

Parameters

  documentType | SR document type to be checked

Returns
  OFTrue if the Key Object Document Module is used, OFFalse otherwise

## ◆ usesKeyObjectDocumentSeriesModule()

static OFBool DSRTypes::usesKeyObjectDocumentSeriesModule | ( | const E_DocumentType | documentType | ) |
| static

check whether a given SR document type uses the Key Object Document Series Module (instead of the SR Document Series Module)

Parameters

  documentType | SR document type to be checked

Returns
  OFTrue if the Key Object Document Series Module is used, OFFalse otherwise

## ◆ usesSRDocumentGeneralModule()

static OFBool DSRTypes::usesSRDocumentGeneralModule | ( | const E_DocumentType | documentType | ) |
| static

check whether a given SR document type uses the SR Document General Module (instead of the Key Object Document Module)

Parameters

  documentType | SR document type to be checked

Returns
  OFTrue if the SR Document General Module is used, OFFalse otherwise

## ◆ usesSRDocumentSeriesModule()

static OFBool DSRTypes::usesSRDocumentSeriesModule | ( | const E_DocumentType | documentType | ) |
| static

check whether a given SR document type uses the SR Document Series Module (instead of the Key Object Document Series Module)

Parameters

  documentType | SR document type to be checked

Returns
  OFTrue if the SR Document Series Module is used, OFFalse otherwise

## ◆ valueTypeToDefinedTerm()

static const char* DSRTypes::valueTypeToDefinedTerm | ( | const E_ValueType | valueType | ) |
| static

convert value type to DICOM defined term

Parameters

  valueType | value type to be converted

Returns
  defined term if type is valid, empty string otherwise (never NULL)

## ◆ valueTypeToReadableName()

static const char* DSRTypes::valueTypeToReadableName | ( | const E_ValueType | valueType | ) |
| static

convert value type to readable name.

Such a readable name is better suited for printing/rendering.

Parameters

  valueType | value type to be converted

Returns
  readable name if type is valid, "invalid ..." string otherwise (never NULL)

## ◆ valueTypeToXMLTagName()

static const char* DSRTypes::valueTypeToXMLTagName | ( | const E_ValueType | valueType | ) |
| static

convert value type to XML tag name

Parameters

  valueType | value type to be converted

Returns
  XML tag name if type is valid, "item" otherwise (never NULL)

## ◆ verificationFlagToEnumeratedValue()

static const char* DSRTypes::verificationFlagToEnumeratedValue | ( | const E_VerificationFlag | verificationFlag | ) |
| static

convert verification flag to DICOM enumerated value

Parameters

  verificationFlag | verification flag to be converted

Returns
  enumerated value if flag is valid, empty string otherwise (never NULL)

## ◆ writeStringFromElementToXML()

static OFBool DSRTypes::writeStringFromElementToXML | ( | STD_NAMESPACE ostream & | stream,
|  | DcmElement & | delem,
|  | const OFString & | tagName,
|  | const OFBool | writeEmptyValue = `OFFalse`
| ) |  |
| static

write string value from DICOM element to XML output stream.

The output looks like this: "<" tagName ">" stringValue "</" tagName ">" For elements with DICOM VR=PN the function dicomToXMLPersonName() is used internally.

Parameters

  stream | output stream to which the XML document is written
  delem | DICOM element from which the value is retrieved
  tagName | name of the XML tag used to surround the string value
  writeEmptyValue | optional flag indicating whether an empty value should be written

Returns
  OFTrue if tag/value has been written, OFFalse otherwise

## ◆ writeStringValueToXML()

static OFBool DSRTypes::writeStringValueToXML | ( | STD_NAMESPACE ostream & | stream,
|  | const OFString & | stringValue,
|  | const OFString & | tagName,
|  | const OFBool | writeEmptyValue = `OFFalse`
| ) |  |
| static

write string value to XML output stream.

The output looks like this: "<" tagName ">" stringValue "</" tagName ">"

Parameters

  stream | output stream to which the XML document is written
  stringValue | string value to be written
  tagName | name of the XML tag used to surround the string value
  writeEmptyValue | optional flag indicating whether an empty value should be written

Returns
  OFTrue if tag/value has been written, OFFalse otherwise

## ◆ xmlTagNameToValueType()

static E_ValueType DSRTypes::xmlTagNameToValueType | ( | const OFString & | xmlTagName | ) |
| static

convert XML tag name to value type

Parameters

  xmlTagName | XML tag name to be converted

Returns
  value type if successful, DSRTypes::VT_invalid otherwise

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

- dcmsr/include/dcmtk/dcmsr/dsrtypes.h

Generated on Mon Dec 15 2025 for DCMTK Version 3.7.0 by Doxygen 1.9.1