DCMTK  Version 3.6.1 20120515
OFFIS DICOM Toolkit
Public Types | Public Member Functions | Static Public Member Functions
DSRTypes Class Reference

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

+ Inheritance diagram for DSRTypes:

List of all members.

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_SpectaclePrescriptionReport,
  DT_MacularGridThicknessAndVolumeReport, DT_ImplantationPlanSRDocument, DT_last = DT_ImplantationPlanSRDocument
}
 SR document types. 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_last = VT_byReference
}
 SR value types. More...
enum  E_PresentationStateType {
  PT_invalid, PT_unknown = PT_invalid, PT_Grayscale, PT_Color,
  PT_PseudoColor, PT_Blending, PT_XAXRFGrayscale, PT_last = PT_XAXRFGrayscale
}
 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_Latin1,
  CS_Latin2, CS_Latin3, CS_Latin4, CS_Cyrillic,
  CS_Arabic, CS_Greek, CS_Hebrew, CS_Latin5,
  CS_Japanese, CS_Thai, CS_UTF8, CS_last = CS_UTF8
}
 Specific character set. More...
enum  E_AddMode { AM_afterCurrent, AM_beforeCurrent, AM_belowCurrent }
 Add node mode. More...

Public Member Functions

virtual ~DSRTypes ()
 destructor.

Static Public Member Functions

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 SR document type requires Enhanced General Equipment 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 OFStringcurrentDate (OFString &dateString)
 get current date in DICOM 'DA' format.
static const OFStringcurrentTime (OFString &timeString)
 get current time in DICOM 'TM' format.
static const OFStringcurrentDateTime (OFString &dateTimeString)
 get current date and time in DICOM 'DT' format.
static const OFStringdicomToReadableDate (const OFString &dicomDate, OFString &readableDate)
 convert DICOM date string to readable format.
static const OFStringdicomToReadableTime (const OFString &dicomTime, OFString &readableTime)
 convert DICOM time string to readable format.
static const OFStringdicomToReadableDateTime (const OFString &dicomDateTime, OFString &readableDateTime)
 convert DICOM date time string to readable format.
static const OFStringdicomToReadablePersonName (const OFString &dicomPersonName, OFString &readablePersonName)
 convert DICOM person name to readable format.
static const OFStringdicomToXMLPersonName (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)
 convert unsigned integer number to character string
static size_t stringToNumber (const char *stringValue)
 convert string to unsigned integer number
static const OFStringconvertToPrintString (const OFString &sourceString, OFString &printString)
 convert character string to print string.
static const OFStringconvertToHTMLString (const OFString &sourceString, OFString &markupString, const size_t flags=0, const OFBool newlineAllowed=OFFalse)
 convert character string to HTML mnenonic string.
static const OFStringconvertToXMLString (const OFString &sourceString, OFString &markupString)
 convert character string to XML mnenonic string.
static OFBool checkForValidUIDFormat (const OFString &stringValue)
 check string for valid UID format.
static DSRIODConstraintCheckercreateIODConstraintChecker (const E_DocumentType documentType)
 create specified SR IOD content relationship contraint checker object.
static DSRDocumentTreeNodecreateDocumentTreeNode (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 OFStringgetStringValueFromElement (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 OFStringgetPrintStringFromElement (const DcmElement &delem, OFString &stringValue)
 get string value from element and convert to "print" format.
static const OFStringgetMarkupStringFromElement (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)
 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 OFString &vm, const OFString &type, const OFCondition &searchCond=EC_Normal, const char *moduleName=NULL)
 check element value for correct value multipicity and type.
static OFCondition getAndCheckElementFromDataset (DcmItem &dataset, DcmElement &delem, const OFString &vm, const OFString &type, const char *moduleName=NULL)
 get element from dataset and check it for correct value multipicity and type.
static OFCondition getAndCheckStringValueFromDataset (DcmItem &dataset, const DcmTagKey &tagKey, OFString &stringValue, const OFString &vm, const OFString &type, const char *moduleName=NULL)
 get string value from dataset and check it for correct value multipicity 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.

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_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_printAllCodes
 shortcut: print all codes
checkByReferenceRelationships() modes

These flags 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

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

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)

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_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_Japanese 

ISO-IR 13: Japanese (Katakana/Romaji)

CS_Thai 

ISO-IR 166: Thai.

CS_last 

internal type used to mark the last entry

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

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

SR document types.

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_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_last 

internal type used to mark the last entry

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

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

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

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_last 

internal type used to mark the last entry

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

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

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_last 

internal type used to mark the last entry

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

virtual DSRTypes::~DSRTypes ( ) [virtual]

destructor.

(only needed to avoid compiler warnings)


Member Function Documentation

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:
resultreference to status variable (checked before adding and updated afterwards!)
datasetreference to DICOM dataset to which the element should be added
delempointer to DICOM element which should be added. deleted if not inserted.
vmvalue 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.
typevalue type (valid value: "1", "2" or something else which is not checked)
moduleNameoptional module name to be printed (default: "SR document" if NULL)
Returns:
current value of 'result', EC_Normal if successful, an error code otherwise
static OFCondition DSRTypes::appendStream ( STD_NAMESPACE ostream &  mainStream,
OFOStringStream &  tempStream,
const char *  heading = NULL 
) [static]

append one output stream to another.

Parameters:
mainStreamstream 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
static const char* DSRTypes::characterSetToDefinedTerm ( const E_CharacterSet  characterSet) [static]

convert character set to DICOM defined term

Parameters:
characterSetcharacter set to be converted
Returns:
defined term if character set is valid, empty string otherwise (never NULL)
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:
characterSetcharacter set to be converted
Returns:
HTML name if character set is valid, empty string or "?" otherwise (never NULL)
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:
characterSetcharacter set to be converted
Returns:
XML name if character set is valid, empty string or "?" otherwise (never NULL)
static OFBool DSRTypes::checkElementValue ( DcmElement delem,
const OFString vm,
const OFString type,
const OFCondition searchCond = EC_Normal,
const char *  moduleName = NULL 
) [static]

check element value for correct value multipicity and type.

Parameters:
delemDICOM element to be checked
vmvalue 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.
typevalue type (valid value: "1", "1C", "2", something else)
searchCondoptional flag indicating the status of a previous 'search' function call
moduleNameoptional module name to be printed (default: "SR document" if NULL)
Returns:
OFTrue if element value is correct, OFFalse otherwise
static OFBool DSRTypes::checkForValidUIDFormat ( const OFString stringValue) [static]

check string for valid UID format.

The string should be non-empty and consist only of integer numbers separated by "." where the first and the last character of the string are always figures (0..9). Example: 1 or 1.2.3. Please note that this test is not as strict as specified for value representation UI in the DICOM standard (e.g. regarding even length padding or leading '0' for the numbers).

Parameters:
stringValuecharacter string to be checked
Returns:
OFTrue if 'string' conforms to UID format, OFFalse otherwise
static const char* DSRTypes::completionFlagToEnumeratedValue ( const E_CompletionFlag  completionFlag) [static]

convert completion flag to DICOM enumerated value

Parameters:
completionFlagcompletion flag to be converted
Returns:
enumerated value if successful, empty string otherwise (never NULL)
static const char* DSRTypes::continuityOfContentToEnumeratedValue ( const E_ContinuityOfContent  continuityOfContent) [static]

convert continuity of content flag to DICOM enumerated value

Parameters:
continuityOfContentcontinuity of content flag to be converted
Returns:
enumerated value if flag is valid, empty string otherwise (never NULL)
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 '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:
sourceStringsource string to be converted
markupStringreference to variable where the result should be stored
flagsoptional flags, checking HF_convertNonASCIICharacters, HF_HTML32Compatibility and HF_XHTML11Compatibility only
newlineAllowedoptional 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)
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:
sourceStringsource string to be converted
printStringreference to variable where the result should be stored
Returns:
reference to resulting 'printString' (might be empty if 'sourceString' was empty)
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:
sourceStringsource string to be converted
markupStringreference to variable where the result should be stored
Returns:
reference to resulting 'markupString' (might be empty if 'sourceString' was empty)
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:
relationshipTyperelationship type of the node to be created
valueTypevalue type of the node to be created
Returns:
pointer to the new document tree nodeif successful, NULL otherwise
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:
docStreamoutput stream used for the main document
annexStreamoutput stream used for the document annex
referenceTextoptional text added to the main document (e.g. 'for details see')
annexNumberreference to the variable where the current annex number is stored. Value is increased automatically by 1 after the new entry has been added.
flagsoptional flag used to customize the output (see DSRTypes::HF_xxx)
Returns:
current annex number after the new entry has been added
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:
docStreamoutput stream used for the main document
footnoteStreamoutput stream used for the footnote text
footnoteNumberreference to the variable where the current footnote number is stored. Value is increased automatically by 1 after the new entry has been added.
nodeIDunique numerical identifier of the current node for which this footnote is created. Used to create a unique name for the hyperlink.
flagsoptional flag used to customize the output (see DSRTypes::HF_xxx)
Returns:
current footnote number after the new entry has been added

create specified SR IOD content relationship contraint checker object.

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

Parameters:
documentTypeassociated 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
static const OFString& DSRTypes::currentDate ( OFString dateString) [static]

get current date in DICOM 'DA' format.

(YYYYMMDD)

Parameters:
dateStringstring used to store the current date. ('19000101' if current date could not be retrieved)
Returns:
resulting character string (see 'dateString')
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:
dateTimeStringstring used to store the current date and time ('19000101000000' if current date/time could not be retrieved)
Returns:
resulting character string (see 'dateTimeString')
static const OFString& DSRTypes::currentTime ( OFString timeString) [static]

get current time in DICOM 'TM' format.

(HHMMSS) The optional UTC notation (e.g. +0100) is currently not supported.

Parameters:
timeStringstring used to store the current time ('000000' if current time could not be retrieved)
Returns:
resulting character string (see 'timeString')
static E_CharacterSet DSRTypes::definedTermToCharacterSet ( const OFString definedTerm) [static]

convert DICOM defined term to character set

Parameters:
definedTermdefined term to be converted
Returns:
character set if successful, CS_invalid otherwise
static E_RelationshipType DSRTypes::definedTermToRelationshipType ( const OFString definedTerm) [static]

convert DICOM defined term to relationship type

Parameters:
definedTermdefined term to be converted
Returns:
relationship type if successful, RT_invalid otherwise
static E_ValueType DSRTypes::definedTermToValueType ( const OFString definedTerm) [static]

convert DICOM defined term to value type

Parameters:
definedTermdefined term to be converted
Returns:
value type if successful, VT_invalid otherwise
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:
dicomDatedate in DICOM DA format (YYYYMMDD)
readableDatereference to variable where the resulting string is stored
Returns:
reference to resulting string (might be empty)
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:
dicomDateTimetime in DICOM DT format (YYYYMMDDHHMMSS...). Possible suffixes (fractional second or UTC notation) are currently ignored.
readableDateTimereference to variable where the resulting string is stored
Returns:
reference to resulting string (might be empty)
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:
dicomPersonNameperson name in DICOM PN format (ln^fn^mn^p^s)
readablePersonNamereference to variable where the resulting string is stored
Returns:
reference to resulting string (might be empty)
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:
dicomTimetime in DICOM TM format (HHMM or HHMMSS...)
readableTimereference to variable where the resulting string is stored
Returns:
reference to resulting string (might be empty)
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:
dicomPersonNameperson name in DICOM PN format (ln^fn^mn^p^s)
xmlPersonNamereference to variable where the resulting string is stored
writeEmptyValueoptional flag indicating whether an empty value should be written
Returns:
reference to resulting string (might be empty)
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:
documentTypeSR document type to be converted
documentTitlereference to variable where the resulting string is stored
Returns:
document title if type is valid, empty string otherwise (never NULL)
static const char* DSRTypes::documentTypeToModality ( const E_DocumentType  documentType) [static]

convert SR document type to modality

Parameters:
documentTypeSR document type to be converted
Returns:
modality if type is valid, empty string otherwise (never NULL)
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:
documentTypeSR document type to be converted
Returns:
readable name if type is valid, "invalid ..." string otherwise (never NULL)
static const char* DSRTypes::documentTypeToSOPClassUID ( const E_DocumentType  documentType) [static]

convert SR document type to SOP class UID

Parameters:
documentTypeSR document type to be converted
Returns:
SOP class UID if type is valid, empty string otherwise (never NULL)
static E_CompletionFlag DSRTypes::enumeratedValueToCompletionFlag ( const OFString enumeratedValue) [static]

convert DICOM enumerated value to completion flag

Parameters:
enumeratedValueenumerated value to be converted
Returns:
completion flag type if successful, CF_invalid otherwise

convert DICOM enumerated value to continuity of content flag

Parameters:
enumeratedValueenumerated value to be converted
Returns:
continuity of content flag type if successful, COC_invalid otherwise
static E_GraphicType DSRTypes::enumeratedValueToGraphicType ( const OFString enumeratedValue) [static]

convert DICOM enumerated value to graphic type

Parameters:
enumeratedValueenumerated value to be converted
Returns:
graphic type if successful, GT_invalid otherwise
static E_GraphicType3D DSRTypes::enumeratedValueToGraphicType3D ( const OFString enumeratedValue) [static]

convert DICOM enumerated value to graphic type (3D)

Parameters:
enumeratedValueenumerated value to be converted
Returns:
graphic type if successful, GT3_invalid otherwise
static E_PreliminaryFlag DSRTypes::enumeratedValueToPreliminaryFlag ( const OFString enumeratedValue) [static]

convert DICOM enumerated value to preliminary flag

Parameters:
enumeratedValueenumerated value to be converted
Returns:
preliminary flag type if successful, PF_invalid otherwise
static E_TemporalRangeType DSRTypes::enumeratedValueToTemporalRangeType ( const OFString enumeratedValue) [static]

convert DICOM enumerated value to temporal range type

Parameters:
enumeratedValueenumerated value to be converted
Returns:
temporal range type if successful, TRT_invalid otherwise
static E_VerificationFlag DSRTypes::enumeratedValueToVerificationFlag ( const OFString enumeratedValue) [static]

convert DICOM enumerated value to verification flag

Parameters:
enumeratedValueenumerated value to be converted
Returns:
verification flag type if successful, VF_invalid otherwise
static OFCondition DSRTypes::getAndCheckElementFromDataset ( DcmItem dataset,
DcmElement delem,
const OFString vm,
const OFString type,
const char *  moduleName = NULL 
) [static]

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

Parameters:
datasetDICOM dataset from which the element should be retrieved. (Would be 'const' if the methods from 'dcmdata' would also be 'const'.)
delemDICOM element used to store the value
vmvalue 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.
typevalue type (valid value: "1", "1C", "2", something else which is not checked)
moduleNameoptional module name to be printed (default: "SR document" if NULL)
Returns:
status, EC_Normal if element could be retrieved and value is correct, an error code otherwise
static OFCondition DSRTypes::getAndCheckStringValueFromDataset ( DcmItem dataset,
const DcmTagKey tagKey,
OFString stringValue,
const OFString vm,
const OFString type,
const char *  moduleName = NULL 
) [static]

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

Parameters:
datasetDICOM dataset from which the element should be retrieved. (Would be 'const' if the methods from 'dcmdata' would also be 'const'.)
tagKeyDICOM tag specifying the attribute from which the string should be retrieved
stringValuereference 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.)
vmvalue 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.
typevalue type (valid value: "1", "1C", "2", something else which is not checked)
moduleNameoptional module name to be printed (default: "SR document" if NULL)
Returns:
status, EC_Normal if element could be retrieved and value is correct, an error code otherwise
static OFCondition DSRTypes::getElementFromDataset ( DcmItem dataset,
DcmElement delem 
) [static]

get element from dataset

Parameters:
datasetreference to DICOM dataset from which the element should be retrieved. (Would be 'const' if the methods from 'dcmdata' would also be 'const'.)
delemreference 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
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:
delemDICOM element from which the string value should be retrieved
stringValuereference to variable in which the result should be stored
convertNonASCIIconvert non-ASCII characters (> #127) to numeric value (&#nnn;) if OFTrue
Returns:
reference character string if successful, empty string otherwise
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:
delemDICOM element from which the string value should be retrieved
stringValuereference to variable in which the result should be stored
Returns:
reference character string if successful, empty string otherwise
static OFCondition DSRTypes::getStringValueFromDataset ( DcmItem dataset,
const DcmTagKey tagKey,
OFString stringValue 
) [static]

get string value from dataset.

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

Parameters:
datasetDICOM dataset from which the string should be retrieved. (Would be 'const' if the methods from 'dcmdata' would also be 'const'.)
tagKeyDICOM tag specifying the attribute from which the string should be retrieved
stringValuereference to variable in which the result should be stored. (This parameter is automatically cleared if the tag could not be found.)
Returns:
status, EC_Normal if successful, an error code otherwise
static const char* DSRTypes::getStringValueFromElement ( const DcmElement delem) [static]

get string value from element

Parameters:
delemDICOM element from which the string value should be retrieved
Returns:
pointer to character string if successful, NULL otherwise
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:
delemDICOM element from which the string value should be retrieved
stringValuereference to variable where the result should be stored
Returns:
reference character string if successful, empty string otherwise
static OFCondition DSRTypes::getStringValueFromElement ( const DcmElement delem,
OFString stringValue,
const signed long  pos 
) [static]

get string value from element

Parameters:
delemDICOM element from which the string value should be retrieved
stringValuereference to variable in which the result should be stored. (This parameter is automatically cleared if an error occurs.)
posindex of the value to get (0..vm-1), -1 for all components
Returns:
status, EC_Normal if successful, an error code otherwise
static const char* DSRTypes::graphicType3DToEnumeratedValue ( const E_GraphicType3D  graphicType) [static]

convert graphic type (3D) to DICOM enumerated value

Parameters:
graphicTypegraphic type (3D) to be converted
Returns:
enumerated value if type is valid, empty string otherwise (never NULL)
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:
graphicTypegraphic type (3D) to be converted
Returns:
readable name if type is valid, "invalid ..." string otherwise (never NULL)
static const char* DSRTypes::graphicTypeToEnumeratedValue ( const E_GraphicType  graphicType) [static]

convert graphic type to DICOM enumerated value

Parameters:
graphicTypegraphic type to be converted
Returns:
enumerated value if type is valid, empty string otherwise (never NULL)
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:
graphicTypegraphic type to be converted
Returns:
readable name if type is valid, "invalid ..." string otherwise (never NULL)
static OFBool DSRTypes::isDocumentTypeSupported ( const E_DocumentType  documentType) [static]

check whether specified SR document type is supported by this library.

Currently all three general SOP classes, the Key Object Selection Document, the Mammography and Chest CAD SR class as defined in the DICOM 2003 standard are supported.

Parameters:
documentTypeSR document type to be checked
Returns:
status, OFTrue if SR document type is supported, OFFalse otherwise
static const char* DSRTypes::numberToString ( const size_t  number,
char *  stringValue 
) [static]

convert unsigned integer number to character string

Parameters:
numberunsigned integer number to be converted
stringValuecharacter string used to store the result
Returns:
pointer to the first character of the resulting string (may be NULL if 'string' was NULL)
static const char* DSRTypes::preliminaryFlagToEnumeratedValue ( const E_PreliminaryFlag  preliminaryFlag) [static]

convert preliminary flag to DICOM enumerated value

Parameters:
preliminaryFlagpreliminary flag to be converted
Returns:
enumerated value if flag is valid, empty string otherwise (never NULL)
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:
pstateTypepresentation state type to be converted
Returns:
short name if type is valid, "invalid ..." string otherwise (never NULL)
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:
actiontext describing the current action (e.g. 'Reading'), 'Processing' if NULL
resultstatus used to print more information on the error (no message if EC_Normal)
nodepointer to document tree node for which the message should be printed
locationposition of the affected content item (e.g. '1.2.3', not printed if NULL)
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:
actiontext describing the current action (e.g. 'Reading'), 'Processing' if NULL
nodepointer to document tree node for which the message should be printed
locationposition of the affected content item (e.g. '1.2.3', not printed if NULL)
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:
valueNamename of the unknown/unsupported value
readValuevalue that has been read (optional)
actiontext describing the current action (default: 'Reading'), 'Processing' if NULL
static OFCondition DSRTypes::putStringValueToDataset ( DcmItem dataset,
const DcmTag tag,
const OFString stringValue,
const OFBool  allowEmpty = OFTrue 
) [static]

put string value to dataset

Parameters:
datasetreference to DICOM dataset to which the string should be put.
tagDICOM tag specifying the attribute to which the string should be put
stringValuecharacter string specifying the value to be set
allowEmptyallow empty element to be inserted if OFTrue. Do not insert empty element otherwise.
Returns:
status, EC_Normal if successful, an error code otherwise
static const char* DSRTypes::relationshipTypeToDefinedTerm ( const E_RelationshipType  relationshipType) [static]

convert relationship type to DICOM defined term

Parameters:
relationshipTyperelationship type to be converted
Returns:
defined term if type is valid, empty string otherwise (never NULL)
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:
relationshipTyperelationship type to be converted
Returns:
readable name if type is valid, "invalid ..." string otherwise (never NULL)
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:
sequencereference to DICOM sequence from which the attribute should be removed
tagKeyDICOM tag specifying the attribute which should be removed
static OFBool DSRTypes::requiresEnhancedEquipmentModule ( const E_DocumentType  documentType) [static]

check whether SR document type requires Enhanced General Equipment Module

Parameters:
documentTypeSR document type to be checked
Returns:
OFTrue if Enhanced General Equipment Module is required, OFFalse otherwise
static E_DocumentType DSRTypes::sopClassUIDToDocumentType ( const OFString sopClassUID) [static]

convert SOP class UID to SR document type

Parameters:
sopClassUIDSOP class UID to be converted
Returns:
SR document type if successful, DT_invalid otherwise

convert SOP class UID to presentation state type

Parameters:
sopClassUIDSOP class UID to be converted
Returns:
presentation state type if successful, PT_invalid otherwise
static size_t DSRTypes::stringToNumber ( const char *  stringValue) [static]

convert string to unsigned integer number

Parameters:
stringValuecharacter string to be converted
Returns:
resulting unsigned integer number if successful, 0 otherwise
static const char* DSRTypes::temporalRangeTypeToEnumeratedValue ( const E_TemporalRangeType  temporalRangeType) [static]

convert temporal range type to DICOM enumerated value

Parameters:
temporalRangeTypetemporal range type to be converted
Returns:
enumerated value if type is valid, "invalid ..." string otherwise (never NULL)
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:
temporalRangeTypetemporal range type to be converted
Returns:
readable name if type is valid, "invalid ..." string otherwise (never NULL)
static const char* DSRTypes::valueTypeToDefinedTerm ( const E_ValueType  valueType) [static]

convert value type to DICOM defined term

Parameters:
valueTypevalue type to be converted
Returns:
defined term if type is valid, empty string otherwise (never NULL)
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:
valueTypevalue type to be converted
Returns:
readable name if type is valid, "invalid ..." string otherwise (never NULL)
static const char* DSRTypes::valueTypeToXMLTagName ( const E_ValueType  valueType) [static]

convert value type to XML tag name

Parameters:
valueTypevalue type to be converted
Returns:
XML tag name if type is valid, "item" otherwise (never NULL)
static const char* DSRTypes::verificationFlagToEnumeratedValue ( const E_VerificationFlag  verificationFlag) [static]

convert verification flag to DICOM enumerated value

Parameters:
verificationFlagverification flag to be converted
Returns:
enumerated value if flag is valid, empty string otherwise (never NULL)
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:
streamoutput stream to which the XML document is written
delemDICOM element from which the value is retrieved
tagNamename of the XML tag used to surround the string value
writeEmptyValueoptional flag indicating whether an empty value should be written
Returns:
OFTrue if tag/value has been written, OFFalse otherwise
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:
streamoutput stream to which the XML document is written
stringValuestring value to be written
tagNamename of the XML tag used to surround the string value
writeEmptyValueoptional flag indicating whether an empty value should be written
Returns:
OFTrue if tag/value has been written, OFFalse otherwise
static E_ValueType DSRTypes::xmlTagNameToValueType ( const OFString xmlTagName) [static]

convert XML tag name to value type

Parameters:
xmlTagNameXML tag name to be converted
Returns:
value type if successful, VT_invalid otherwise

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


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