OFFIS DCMTK  Version 3.6.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | List of all members
DSRPNameTreeNode Class Reference

Class for content item PNAME. More...

Inheritance diagram for DSRPNameTreeNode:
[legend]
Collaboration diagram for DSRPNameTreeNode:
[legend]

Public Member Functions

 DSRPNameTreeNode (const E_RelationshipType relationshipType)
 constructor
 
 DSRPNameTreeNode (const E_RelationshipType relationshipType, const OFString &stringValue)
 constructor
 
virtual ~DSRPNameTreeNode ()
 destructor
 
virtual void clear ()
 clear all member variables.
 
virtual OFBool isValid () const
 check whether the content item is valid.
 
virtual OFCondition print (STD_NAMESPACE ostream &stream, const size_t flags) const
 print content item.
 
virtual OFCondition writeXML (STD_NAMESPACE ostream &stream, const size_t flags) const
 write content item in XML format
 
- Public Member Functions inherited from DSRDocumentTreeNode
 DSRDocumentTreeNode (const E_RelationshipType relationshipType, const E_ValueType valueType)
 constructor.
 
virtual ~DSRDocumentTreeNode ()
 destructor
 
virtual OFBool isShort (const size_t flags) const
 check whether the content is short.
 
virtual OFCondition read (DcmItem &dataset, const DSRIODConstraintChecker *constraintChecker, const size_t flags)
 read content item from dataset.
 
virtual OFCondition write (DcmItem &dataset, DcmStack *markedItems=NULL)
 write content item to dataset.
 
virtual OFCondition readXML (const DSRXMLDocument &doc, DSRXMLCursor cursor, const E_DocumentType documentType, const size_t flags)
 read general XML document tree node data
 
virtual OFCondition renderHTML (STD_NAMESPACE ostream &docStream, STD_NAMESPACE ostream &annexStream, const size_t nestingLevel, size_t &annexNumber, const size_t flags) const
 render content item in HTML/XHTML format.
 
OFBool isSigned ()
 check whether content item is digitally signed.
 
OFBool isMarked () const
 check whether content item is marked.
 
void setMark (const OFBool flag)
 mark/unmark the current content item.
 
OFBool isReferenceTarget () const
 check whether the current content item is target of a by-reference relationship
 
void setReferenceTarget (const OFBool isTarget=OFTrue)
 specify whether the current content item is target of a by-reference relationship
 
OFBool hasChildNodes () const
 check whether the current content item has any children
 
OFBool hasSiblingNodes () const
 check whether the current content item has any siblings
 
size_t getNodeID () const
 get ID of the current tree node
 
E_RelationshipType getRelationshipType () const
 get relationship type of the current content item
 
E_ValueType getValueType () const
 get value type of the current content item
 
const DSRCodedEntryValuegetConceptName () const
 get reference to the concept name
 
OFCondition getConceptName (DSRCodedEntryValue &conceptName) const
 get copy of the concept name.
 
virtual OFCondition setConceptName (const DSRCodedEntryValue &conceptName)
 set the concept name.
 
const OFStringgetObservationDateTime () const
 get observation date time.
 
virtual OFCondition setObservationDateTime (const OFString &observationDateTime)
 set observation date time.
 
OFCondition getTemplateIdentification (OFString &templateIdentifier, OFString &mappingResource) const
 get template identifier and mapping resource.
 
virtual OFCondition setTemplateIdentification (const OFString &templateIdentifier, const OFString &mappingResource)
 set template identifier and mapping resource.
 
void removeSignatures ()
 remove digital signatures from content item.
 
- Public Member Functions inherited from DSRTreeNode
 DSRTreeNode ()
 default constructor
 
virtual ~DSRTreeNode ()
 destructor
 
- Public Member Functions inherited from DSRStringValue
 DSRStringValue ()
 default contructor
 
 DSRStringValue (const OFString &stringValue)
 constructor The string value is only set if it passed the validity check (see setValue()).
 
 DSRStringValue (const DSRStringValue &stringValue)
 copy constructor
 
virtual ~DSRStringValue ()
 destructor
 
DSRStringValueoperator= (const DSRStringValue &stringValue)
 assignment operator
 
void print (STD_NAMESPACE ostream &stream, const size_t maxLength=0) const
 print string value.
 
OFCondition read (DcmItem &dataset, const DcmTagKey &tagKey)
 read string value from dataset.
 
OFCondition write (DcmItem &dataset, const DcmTagKey &tagKey) const
 write string value to dataset
 
OFCondition readXML (const DSRXMLDocument &doc, DSRXMLCursor cursor, const OFBool encoding=OFFalse)
 read string value from XML document
 
OFCondition renderHTML (STD_NAMESPACE ostream &docStream, const size_t flags) const
 render string value in HTML/XHTML format
 
const OFStringgetValue () const
 get string value
 
OFCondition setValue (const OFString &stringValue)
 set string value.
 

Static Public Member Functions

static OFStringgetValueFromXMLNodeContent (const DSRXMLDocument &doc, DSRXMLCursor cursor, OFString &nameValue)
 get DICOM Person Name from XML elements.
 

Protected Member Functions

virtual OFCondition readContentItem (DcmItem &dataset)
 read content item (value) from dataset
 
virtual OFCondition writeContentItem (DcmItem &dataset) const
 write content item (value) to dataset
 
virtual OFCondition readXMLContentItem (const DSRXMLDocument &doc, DSRXMLCursor cursor)
 read content item specific XML data
 
virtual OFCondition renderHTMLContentItem (STD_NAMESPACE ostream &docStream, STD_NAMESPACE ostream &annexStream, const size_t nestingLevel, size_t &annexNumber, const size_t flags) const
 render content item (value) in HTML/XHTML format
 
- Protected Member Functions inherited from DSRDocumentTreeNode
DSRCodedEntryValuegetConceptNamePtr ()
 get pointer to the concept name
 
OFCondition createAndAppendNewNode (DSRDocumentTreeNode *&previousNode, const E_RelationshipType relationshipType, const E_ValueType valueType, const DSRIODConstraintChecker *constraintChecker=NULL)
 create a new node and append it to the current one
 
void writeXMLItemStart (STD_NAMESPACE ostream &stream, const size_t flags, const OFBool closingBracket=OFTrue) const
 write common item start (XML tag)
 
void writeXMLItemEnd (STD_NAMESPACE ostream &stream, const size_t flags) const
 write common item start (XML tag)
 
OFCondition readSRDocumentContentModule (DcmItem &dataset, const DSRIODConstraintChecker *constraintChecker, const size_t flags)
 read SR document content module
 
OFCondition writeSRDocumentContentModule (DcmItem &dataset, DcmStack *markedItems)
 write SR document content module
 
OFCondition readDocumentRelationshipMacro (DcmItem &dataset, const DSRIODConstraintChecker *constraintChecker, const OFString &posString, const size_t flags)
 read document relationship macro
 
OFCondition writeDocumentRelationshipMacro (DcmItem &dataset, DcmStack *markedItems)
 write document relationship macro
 
OFCondition readDocumentContentMacro (DcmItem &dataset, const OFString &posString, const size_t flags)
 read document content macro
 
OFCondition writeDocumentContentMacro (DcmItem &dataset) const
 write document content macro
 
OFCondition readContentSequence (DcmItem &dataset, const DSRIODConstraintChecker *constraintChecker, const OFString &posString, const size_t flags)
 read content sequence
 
OFCondition writeContentSequence (DcmItem &dataset, DcmStack *markedItems) const
 write content sequence
 
OFCondition renderHTMLConceptName (STD_NAMESPACE ostream &docStream, const size_t flags) const
 render concept name in HTML/XHTML format.
 
OFCondition renderHTMLChildNodes (STD_NAMESPACE ostream &docStream, STD_NAMESPACE ostream &annexStream, const size_t nestingLevel, size_t &annexNumber, const size_t flags) const
 render child nodes in HTML/XHTML format
 
- Protected Member Functions inherited from DSRStringValue
virtual OFBool checkValue (const OFString &stringValue) const
 check the specified string value for validity.
 

Private Member Functions

 DSRPNameTreeNode (const DSRPNameTreeNode &)
 
DSRPNameTreeNodeoperator= (const DSRPNameTreeNode &)
 

Additional Inherited Members

- Protected Types inherited from DSRTypes
enum  E_DocumentType {
  DT_invalid, DT_unknown = DT_invalid, DT_BasicTextSR, DT_EnhancedSR,
  DT_ComprehensiveSR, DT_KeyObjectSelectionDocument, DT_MammographyCadSR, DT_ChestCadSR,
  DT_ColonCadSR, DT_ProcedureLog, DT_XRayRadiationDoseSR, DT_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_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...
 
- Static Protected Member Functions inherited from DSRDocumentTreeNode
static const OFStringgetRelationshipText (const E_RelationshipType relationshipType, OFString &relationshipText, const size_t flags)
 convert relationship type into a text used for HTML rendering
 
- Protected Attributes inherited from DSRTreeNode
DSRTreeNodePrev
 pointer to previous tree node (if any)
 
DSRTreeNodeNext
 pointer to next tree node (if any)
 
DSRTreeNodeDown
 pointer to first child node (if any)
 
const size_t Ident
 unique identifier (created automatically)
 
- Static Protected Attributes inherited from DSRTypes
static const size_t RF_readDigitalSignatures
 read digital signatures from dataset
 
static const size_t RF_acceptUnknownRelationshipType
 accept unknown/missing relationship type
 
static const size_t RF_ignoreRelationshipConstraints
 ignore relationship constraints for this document class
 
static const size_t RF_ignoreContentItemErrors
 do not abort on content item errors (e.g. missing value type specific attributes)
 
static const size_t RF_skipInvalidContentItems
 do not abort when detecting an invalid content item, skip invalid sub-tree instead
 
static const size_t RF_showCurrentlyProcessedItem
 show the currently processed content item (e.g. "1.2.3")
 
static const size_t HF_neverExpandChildrenInline
 external: never expand child nodes inline
 
static const size_t HF_alwaysExpandChildrenInline
 external: always expand child nodes inline
 
static const size_t HF_renderInlineCodes
 external: render codes even if they appear inline
 
static const size_t HF_useCodeDetailsTooltip
 external: render code details as a tooltip (not with HTML 3.2)
 
static const size_t HF_renderConceptNameCodes
 external: render concept name codes (default: code meaning only)
 
static const size_t HF_renderNumericUnitCodes
 external: render the code of the numeric measurement unit
 
static const size_t HF_useCodeMeaningAsUnit
 external: use code meaning for the numeric measurement unit (default: code value)
 
static const size_t HF_renderPatientTitle
 external: use patient information as document title (default: document type)
 
static const size_t HF_renderNoDocumentHeader
 external: render no general document information (header)
 
static const size_t HF_renderDcmtkFootnote
 external: render dcmtk/dcmsr comment at the end of the document
 
static const size_t HF_renderFullData
 external: render the full data of all content items
 
static const size_t HF_renderSectionTitlesInline
 external: render section titles inline (default: separate paragraph)
 
static const size_t HF_copyStyleSheetContent
 external: copy Cascading Style Sheet (CSS) content to HTML file
 
static const size_t HF_HTML32Compatibility
 external: output compatible to HTML version 3.2 (default: 4.01)
 
static const size_t HF_XHTML11Compatibility
 external: output compatible to XHTML version 1.1 (default: HTML 4.01)
 
static const size_t HF_addDocumentTypeReference
 external: add explicit reference to HTML document type (DTD)
 
static const size_t HF_omitGeneratorMetaElement
 external: omit generator meta element referring to the DCMTK
 
static const size_t HF_renderItemsSeparately
 internal: render items separately (for container with SEPARATE flag)
 
static const size_t HF_renderItemInline
 internal: expand items inline when they are short and have no child nodes
 
static const size_t HF_currentlyInsideAnnex
 internal: content item is rendered fully inside the annex
 
static const size_t HF_createFootnoteReferences
 internal: create footnote references
 
static const size_t HF_convertNonASCIICharacters
 internal: convert non-ASCII characters (> #127) to &#nnn;
 
static const size_t HF_renderAllCodes
 shortcut: render all codes
 
static const size_t HF_internalUseOnly
 shortcut: filter all flags that are only used internally
 
static const size_t XF_writeEmptyTags
 write: write all tags even if their value is empty
 
static const size_t XF_writeTemplateIdentification
 write: write template identification information (TID and mapping resource)
 
static const size_t XF_alwaysWriteItemIdentifier
 write: always write item identifier "id", not only when item is referenced
 
static const size_t XF_codeComponentsAsAttribute
 write: encode code value, coding scheme designator and coding scheme version as attribute instead of element text
 
static const size_t XF_relationshipTypeAsAttribute
 write: encode relationship type as attribute instead of element text
 
static const size_t XF_valueTypeAsAttribute
 write: encode value type as attribute instead of element text
 
static const size_t XF_templateIdentifierAsAttribute
 write: encode template identifier as attribute instead of element text
 
static const size_t XF_useDcmsrNamespace
 write: add DCMSR namespace declaration to the XML output
 
static const size_t XF_addSchemaReference
 write: add Schema reference to XML document
 
static const size_t XF_validateSchema
 read: validate content of XML document against Schema
 
static const size_t XF_templateElementEnclosesItems
 read/write: template identification element encloses content items
 
static const size_t XF_encodeEverythingAsAttribute
 shortcut: combines all XF_xxxAsAttribute write flags (see above)
 
static const size_t PF_printItemPosition
 print item position ("1.2.3") instead of line indentation
 
static const size_t PF_shortenLongItemValues
 shorten long item value (e.g. long texts)
 
static const size_t PF_printSOPInstanceUID
 print SOP instance UID of referenced objects
 
static const size_t PF_printConceptNameCodes
 print coding scheme designator/version and code value of concept names
 
static const size_t PF_printNoDocumentHeader
 print no general document information (header)
 
static const size_t PF_printTemplateIdentification
 print template identification (TID and mapping resource)
 
static const size_t PF_printAllCodes
 shortcut: print all codes
 
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

Class for content item PNAME.

Definition at line 46 of file dsrpnmtn.h.

Constructor & Destructor Documentation

DSRPNameTreeNode::DSRPNameTreeNode ( const E_RelationshipType  relationshipType)

constructor

Parameters
relationshipTypetype of relationship to the parent tree node. Should not be RT_invalid or RT_isRoot.
DSRPNameTreeNode::DSRPNameTreeNode ( const E_RelationshipType  relationshipType,
const OFString stringValue 
)

constructor

Parameters
relationshipTypetype of relationship to the parent tree node. Should not be RT_invalid or RT_isRoot.
stringValueinitial string value to be set

Member Function Documentation

virtual void DSRPNameTreeNode::clear ( )
virtual

clear all member variables.

Please note that the content item might become invalid afterwards.

Reimplemented from DSRDocumentTreeNode.

static OFString& DSRPNameTreeNode::getValueFromXMLNodeContent ( const DSRXMLDocument doc,
DSRXMLCursor  cursor,
OFString nameValue 
)
static

get DICOM Person Name from XML elements.

The five components of a DICOM Person Name (PN) are expected to be stored in the XML elements "prefix", "first", "middle", "last" and "suffix" as created by writeXML().

Parameters
docdocument containing the XML file content
cursorcursor pointing to the starting node
nameValuereference to string object in which the value should be stored
Returns
reference to string object (might be empty)
virtual OFBool DSRPNameTreeNode::isValid ( ) const
virtual

check whether the content item is valid.

The content item is valid if the two base classes and the concept name are valid.

Returns
OFTrue if tree node is valid, OFFalse otherwise

Reimplemented from DSRDocumentTreeNode.

virtual OFCondition DSRPNameTreeNode::print ( STD_NAMESPACE ostream &  stream,
const size_t  flags 
) const
virtual

print content item.

A typical output looks like this: contains PNAME:(,,"Code")="Riesmeier^Joerg"

Parameters
streamoutput stream to which the content item should be printed
flagsflag used to customize the output (see DSRTypes::PF_xxx)
Returns
status, EC_Normal if successful, an error code otherwise

Reimplemented from DSRDocumentTreeNode.

virtual OFCondition DSRPNameTreeNode::readContentItem ( DcmItem dataset)
protectedvirtual

read content item (value) from dataset

Parameters
datasetDICOM dataset from which the content item should be read
Returns
status, EC_Normal if successful, an error code otherwise

Reimplemented from DSRDocumentTreeNode.

virtual OFCondition DSRPNameTreeNode::readXMLContentItem ( const DSRXMLDocument doc,
DSRXMLCursor  cursor 
)
protectedvirtual

read content item specific XML data

Parameters
docdocument containing the XML file content
cursorcursor pointing to the starting node
Returns
status, EC_Normal if successful, an error code otherwise

Reimplemented from DSRDocumentTreeNode.

virtual OFCondition DSRPNameTreeNode::renderHTMLContentItem ( STD_NAMESPACE ostream &  docStream,
STD_NAMESPACE ostream &  annexStream,
const size_t  nestingLevel,
size_t &  annexNumber,
const size_t  flags 
) const
protectedvirtual

render content item (value) in HTML/XHTML format

Parameters
docStreamoutput stream to which the main HTML/XHTML document is written
annexStreamoutput stream to which the HTML/XHTML document annex is written
nestingLevelcurrent nesting level. Used to render section headings.
annexNumberreference to the variable where the current annex number is stored. Value is increased automatically by 1 after a new entry has been added.
flagsflag used to customize the output (see DSRTypes::HF_xxx)
Returns
status, EC_Normal if successful, an error code otherwise

Reimplemented from DSRDocumentTreeNode.

virtual OFCondition DSRPNameTreeNode::writeContentItem ( DcmItem dataset) const
protectedvirtual

write content item (value) to dataset

Parameters
datasetDICOM dataset to which the content item should be written
Returns
status, EC_Normal if successful, an error code otherwise

Reimplemented from DSRDocumentTreeNode.

virtual OFCondition DSRPNameTreeNode::writeXML ( STD_NAMESPACE ostream &  stream,
const size_t  flags 
) const
virtual

write content item in XML format

Parameters
streamoutput stream to which the XML document is written
flagsflag used to customize the output (see DSRTypes::XF_xxx)
Returns
status, EC_Normal if successful, an error code otherwise

Reimplemented from DSRDocumentTreeNode.


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


Generated on Thu Dec 20 2012 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.8.2