DSRDocumentTreeNode Class Reference

Base class for content items. More...

Inheritance diagram for DSRDocumentTreeNode:

DSRTreeNode DSRTypes DSRByReferenceTreeNode DSRCodeTreeNode DSRCompositeTreeNode DSRContainerTreeNode DSRDateTimeTreeNode DSRDateTreeNode DSRImageTreeNode DSRNumTreeNode DSRPNameTreeNode DSRSCoord3DTreeNode DSRSCoordTreeNode DSRTCoordTreeNode DSRTextTreeNode DSRTimeTreeNode DSRUIDRefTreeNode DSRWaveformTreeNode List of all members.

Public Member Functions

 DSRDocumentTreeNode (const E_RelationshipType relationshipType, const E_ValueType valueType)
 constructor.
virtual ~DSRDocumentTreeNode ()
 destructor
virtual void clear ()
 clear all member variables.
virtual OFBool isValid () const
 check whether the content item is valid.
virtual OFBool isShort (const size_t flags) const
 check whether the content is short.
virtual OFCondition print (STD_NAMESPACE ostream &stream, const size_t flags) const
 print content item.
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 writeXML (STD_NAMESPACE ostream &stream, const size_t flags) const
 write content item in XML format
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.

Protected Member Functions

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
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.
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

Static Protected Member Functions

static const OFStringgetRelationshipText (const E_RelationshipType relationshipType, OFString &relationshipText, const size_t flags)
 convert relationship type into a text used for HTML rendering

Private Member Functions

 DSRDocumentTreeNode (const DSRDocumentTreeNode &)
DSRDocumentTreeNodeoperator= (const DSRDocumentTreeNode &)

Private Attributes

OFBool MarkFlag
 flag indicating whether the content item is marked (e.g. used for digital signatures)
OFBool ReferenceTarget
 flag indicating whether the content item is referenced (by-reference relationship)
const E_RelationshipType RelationshipType
 relationship type to the parent node (associated DICOM VR=CS, mandatory)
const E_ValueType ValueType
 value type (associated DICOM VR=CS, mandatory)
DSRCodedEntryValue ConceptName
 concept name (VR=SQ, conditional)
OFString ObservationDateTime
 observation date and time (VR=DT, conditional)
OFString TemplateIdentifier
 template identifier (VR=CS, mandatory in ContentTemplateSequence)
OFString MappingResource
 mapping resource (VR=CS, mandatory in ContentTemplateSequence)
DcmSequenceOfItems MACParameters
 MAC parameters sequence (VR=SQ, optional).
DcmSequenceOfItems DigitalSignatures
 digital signatures sequence (VR=SQ, optional)

Friends

class DSRContentItem

Detailed Description

Base class for content items.

Definition at line 54 of file dsrdoctn.h.


Constructor & Destructor Documentation

DSRDocumentTreeNode::DSRDocumentTreeNode ( const E_RelationshipType  relationshipType,
const E_ValueType  valueType 
)

constructor.

The 'relationshipType' and 'valueType' can never be changed after the tree node has been created (therefore, the corresponding member variables are declared "const").

Parameters:
relationshipType type of relationship to the parent tree node. Should not be RT_invalid and RT_isRoot only for the root node.
valueType value type of the associated content item. Should not be VT_invalid.


Member Function Documentation

virtual void DSRDocumentTreeNode::clear (  )  [virtual]

clear all member variables.

This does not apply to the relationship and value type since they are never changed.

Reimplemented in DSRCodeTreeNode, DSRCompositeTreeNode, DSRContainerTreeNode, DSRDateTreeNode, DSRDateTimeTreeNode, DSRImageTreeNode, DSRNumTreeNode, DSRPNameTreeNode, DSRByReferenceTreeNode, DSRSCoord3DTreeNode, DSRSCoordTreeNode, DSRTCoordTreeNode, DSRTextTreeNode, DSRTimeTreeNode, DSRUIDRefTreeNode, and DSRWaveformTreeNode.

virtual OFBool DSRDocumentTreeNode::isValid (  )  const [virtual]

check whether the content item is valid.

The content item is valid if the relationship type and the value type are both not invalid.

Returns:
OFTrue if tree node is valid, OFFalse otherwise

Reimplemented in DSRCodeTreeNode, DSRCompositeTreeNode, DSRContainerTreeNode, DSRDateTreeNode, DSRDateTimeTreeNode, DSRImageTreeNode, DSRNumTreeNode, DSRPNameTreeNode, DSRByReferenceTreeNode, DSRSCoord3DTreeNode, DSRSCoordTreeNode, DSRTCoordTreeNode, DSRTextTreeNode, DSRTimeTreeNode, DSRUIDRefTreeNode, and DSRWaveformTreeNode.

virtual OFBool DSRDocumentTreeNode::isShort ( const size_t  flags  )  const [virtual]

check whether the content is short.

This method is used to check whether the rendered output of this content item can be expanded inline or not (used for renderHTML()). This base class always returns OFTrue.

Parameters:
flags flag used to customize the output (see DSRTypes::HF_xxx)
Returns:
OFTrue if the content is short, OFFalse otherwise

Reimplemented in DSRContainerTreeNode, DSRImageTreeNode, DSRSCoord3DTreeNode, DSRSCoordTreeNode, DSRTCoordTreeNode, DSRTextTreeNode, and DSRWaveformTreeNode.

virtual OFCondition DSRDocumentTreeNode::print ( STD_NAMESPACE ostream &  stream,
const size_t  flags 
) const [virtual]

print content item.

The output of a content item depends on its value type. This general method prints only those parts which all derived classes (= value types) do have in common, i.e. the type of relationship, the value type and the (optional) concept name. A typical output looks like this: has concept mod CODE: (,,"Concept")

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

Reimplemented in DSRCodeTreeNode, DSRCompositeTreeNode, DSRContainerTreeNode, DSRDateTreeNode, DSRDateTimeTreeNode, DSRImageTreeNode, DSRNumTreeNode, DSRPNameTreeNode, DSRByReferenceTreeNode, DSRSCoord3DTreeNode, DSRSCoordTreeNode, DSRTCoordTreeNode, DSRTextTreeNode, DSRTimeTreeNode, DSRUIDRefTreeNode, and DSRWaveformTreeNode.

virtual OFCondition DSRDocumentTreeNode::read ( DcmItem dataset,
const DSRIODConstraintChecker constraintChecker,
const size_t  flags 
) [virtual]

read content item from dataset.

A number of readXXX() methods are called (see "protected" part) in order to retrieve all possibly nested content items from the dataset.

Parameters:
dataset DICOM dataset from which the content item should be read
constraintChecker checks relationship content constraints of the associated IOD
flags flag used to customize the reading process (see DSRTypes::RF_xxx)
Returns:
status, EC_Normal if successful, an error code otherwise

virtual OFCondition DSRDocumentTreeNode::write ( DcmItem dataset,
DcmStack markedItems = NULL 
) [virtual]

write content item to dataset.

A number of writeXXX() methods are called (see "protected" part) in order to write all possibly nested content items to the dataset.

Parameters:
dataset DICOM dataset to which the content item should be written
markedItems optional stack where pointers to all 'marked' content items (DICOM datasets/items) are added to during the write process. Can be used to digitally sign parts of the document tree.
Returns:
status, EC_Normal if successful, an error code otherwise

virtual OFCondition DSRDocumentTreeNode::readXML ( const DSRXMLDocument doc,
DSRXMLCursor  cursor,
const E_DocumentType  documentType,
const size_t  flags 
) [virtual]

read general XML document tree node data

Parameters:
doc document containing the XML file content
cursor cursor pointing to the starting node
documentType type of the document to be read (used for debug output only)
flags optional flag used to customize the reading process (see DSRTypes::XF_xxx)
Returns:
status, EC_Normal if successful, an error code otherwise

virtual OFCondition DSRDocumentTreeNode::writeXML ( STD_NAMESPACE ostream &  stream,
const size_t  flags 
) const [virtual]

write content item in XML format

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

Reimplemented in DSRCodeTreeNode, DSRCompositeTreeNode, DSRContainerTreeNode, DSRDateTreeNode, DSRDateTimeTreeNode, DSRImageTreeNode, DSRNumTreeNode, DSRPNameTreeNode, DSRByReferenceTreeNode, DSRSCoord3DTreeNode, DSRSCoordTreeNode, DSRTCoordTreeNode, DSRTextTreeNode, DSRTimeTreeNode, DSRUIDRefTreeNode, and DSRWaveformTreeNode.

virtual OFCondition DSRDocumentTreeNode::renderHTML ( STD_NAMESPACE ostream &  docStream,
STD_NAMESPACE ostream &  annexStream,
const size_t  nestingLevel,
size_t &  annexNumber,
const size_t  flags 
) const [virtual]

render content item in HTML/XHTML format.

After rendering the current content item all child nodes (if any) are also rendered (see renderHTMLChildNodes() for details).

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

Reimplemented in DSRContainerTreeNode.

OFBool DSRDocumentTreeNode::isSigned (  )  [inline]

check whether content item is digitally signed.

A content item is signed if the DigitalSignaturesSequence exists. This sequence is read from the dataset if present and the 'signature' flag for the 'read' method is turned on.

Returns:
OFTrue if content item is signed, OFFalse otherwise

Definition at line 178 of file dsrdoctn.h.

References DcmSequenceOfItems::card(), and DigitalSignatures.

OFBool DSRDocumentTreeNode::isMarked (  )  const [inline]

check whether content item is marked.

Use method 'setMark' to mark and unmark the current content item. Pointers to the DICOM dataset/item of marked content items are added to the optional stack when calling the 'write' method. This mechanism can e.g. be used to digitally sign particular content items.

Returns:
OFTrue if content item is marked, OFFalse otherwise

Definition at line 190 of file dsrdoctn.h.

References MarkFlag.

void DSRDocumentTreeNode::setMark ( const OFBool  flag  )  [inline]

mark/unmark the current content item.

See explanation for method 'isMarked' for details.

Parameters:
flag mark item if OFTrue, unmark otherwise

Definition at line 199 of file dsrdoctn.h.

References MarkFlag.

OFBool DSRDocumentTreeNode::isReferenceTarget (  )  const [inline]

check whether the current content item is target of a by-reference relationship

Returns:
OFTrue if the content item is target, OFFalse otherwise

Definition at line 207 of file dsrdoctn.h.

References ReferenceTarget.

void DSRDocumentTreeNode::setReferenceTarget ( const OFBool  isTarget = OFTrue  )  [inline]

specify whether the current content item is target of a by-reference relationship

Parameters:
isTarget OFTrue if the content item is target (default), OFFalse otherwise

Definition at line 215 of file dsrdoctn.h.

References ReferenceTarget.

OFBool DSRDocumentTreeNode::hasChildNodes (  )  const [inline]

check whether the current content item has any children

Returns:
OFTrue if there are any child nodes, OFFalse otherwise

Definition at line 223 of file dsrdoctn.h.

References DSRTreeNode::Down.

OFBool DSRDocumentTreeNode::hasSiblingNodes (  )  const [inline]

check whether the current content item has any siblings

Returns:
OFTrue if there are any sibling nodes, OFFalse otherwise

Definition at line 231 of file dsrdoctn.h.

References DSRTreeNode::Next, and DSRTreeNode::Prev.

size_t DSRDocumentTreeNode::getNodeID (  )  const [inline]

get ID of the current tree node

Returns:
ID of the current tree node (should never be 0)

Definition at line 239 of file dsrdoctn.h.

References DSRTreeNode::Ident.

E_RelationshipType DSRDocumentTreeNode::getRelationshipType (  )  const [inline]

get relationship type of the current content item

Returns:
relationship type of the current content item (might be RT_invalid)

Definition at line 247 of file dsrdoctn.h.

References RelationshipType.

E_ValueType DSRDocumentTreeNode::getValueType (  )  const [inline]

get value type of the current content item

Returns:
value type of the current content item (might be VT_invalid)

Definition at line 255 of file dsrdoctn.h.

References ValueType.

const DSRCodedEntryValue& DSRDocumentTreeNode::getConceptName (  )  const [inline]

get reference to the concept name

Returns:
reference to the concept name (code, might be empty/invalid)

Definition at line 263 of file dsrdoctn.h.

References ConceptName.

OFCondition DSRDocumentTreeNode::getConceptName ( DSRCodedEntryValue conceptName  )  const

get copy of the concept name.

Code describing the concept represented by this content item. Also conveys the value of document title and section headings in documents.

Parameters:
conceptName reference to a variable where the code should be stored
Returns:
status, EC_Normal if successful, an error code otherwise

virtual OFCondition DSRDocumentTreeNode::setConceptName ( const DSRCodedEntryValue conceptName  )  [virtual]

set the concept name.

Code describing the concept represented by this content item. Also conveys the value of document title and section headings in documents. If the new code is invalid the current one is not replaced. An empty code can be used to clear the current concept name.

Parameters:
conceptName code to be set as the new concept name (checked before set)
Returns:
status, EC_Normal if successful, an error code otherwise

Reimplemented in DSRByReferenceTreeNode.

const OFString& DSRDocumentTreeNode::getObservationDateTime (  )  const [inline]

get observation date time.

This is the date and time on which this content item was completed. Might be empty if the date and time do not differ from the content date and time, see DSRDocument.

Returns:
observation date and time of current content item (might be empty/invalid)

Definition at line 291 of file dsrdoctn.h.

References ObservationDateTime.

virtual OFCondition DSRDocumentTreeNode::setObservationDateTime ( const OFString observationDateTime  )  [virtual]

set observation date time.

This is the date and time on which this content item was completed. Might be empty if the date and time do not differ from the content date and time, see DSRDocument. Please use the correct DICOM format (YYYYMMDDHHMMSS) or an empty string to clear the current value. Currently no check is performed on the parameter value!

Parameters:
observationDateTime value to be set (might be an empty string)
Returns:
status, EC_Normal if successful, an error code otherwise

Reimplemented in DSRByReferenceTreeNode.

OFCondition DSRDocumentTreeNode::getTemplateIdentification ( OFString templateIdentifier,
OFString mappingResource 
) const

get template identifier and mapping resource.

This value pair identifies the template that was used to create this content item (and its children). According to the DICOM standard it is "required if a template was used to define the content of this Item, and the template consists of a single CONTAINER with nested content, and it is the outermost invocation of a set of nested templates that start with the same CONTAINER." However, this condition is currently not checked. The identification is valid if both values are either present (non-empty) or absent (empty).

Parameters:
templateIdentifier identifier of the template (might be empty)
mappingResource mapping resource that defines the template (might be empty)
Returns:
status, EC_Normal if successful, an error code otherwise

virtual OFCondition DSRDocumentTreeNode::setTemplateIdentification ( const OFString templateIdentifier,
const OFString mappingResource 
) [virtual]

set template identifier and mapping resource.

The identification is valid if both values are either present (non-empty) or absent (empty). See getTemplateIdentification() for details.

Parameters:
templateIdentifier identifier of the template to be set (VR=CS)
mappingResource mapping resource that defines the template (VR=CS)
Returns:
status, EC_Normal if successful, an error code otherwise

Reimplemented in DSRByReferenceTreeNode.

void DSRDocumentTreeNode::removeSignatures (  ) 

remove digital signatures from content item.

This method clears the MACParametersSequence and the DigitalSignaturesSequence for the current content item which have been filled during reading.

DSRCodedEntryValue* DSRDocumentTreeNode::getConceptNamePtr (  )  [inline, protected]

get pointer to the concept name

Returns:
pointer to the concept name (never NULL)

Definition at line 343 of file dsrdoctn.h.

References ConceptName.

OFCondition DSRDocumentTreeNode::createAndAppendNewNode ( DSRDocumentTreeNode *&  previousNode,
const E_RelationshipType  relationshipType,
const E_ValueType  valueType,
const DSRIODConstraintChecker constraintChecker = NULL 
) [protected]

create a new node and append it to the current one

Parameters:
previousNode reference to the pointer to the previous node (sibling). Used to decide whether the new node is a child (value=NULL) or a sibling (!=NULL). NB: The value might be modified inside this method (to store a reference to the previous node).
relationshipType relationship type of the new node with regard to the current one
valueType value type of node to be added
constraintChecker checks relationship content constraints of the associated IOD
Returns:
status, EC_Normal if successful, an error code otherwise

virtual OFCondition DSRDocumentTreeNode::readContentItem ( DcmItem dataset  )  [protected, virtual]

read content item (value) from dataset.

This method does nothing for this base class, but derived classes overwrite it to read the contents according to their value type.

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

Reimplemented in DSRCodeTreeNode, DSRCompositeTreeNode, DSRContainerTreeNode, DSRDateTreeNode, DSRDateTimeTreeNode, DSRImageTreeNode, DSRNumTreeNode, DSRPNameTreeNode, DSRByReferenceTreeNode, DSRSCoord3DTreeNode, DSRSCoordTreeNode, DSRTCoordTreeNode, DSRTextTreeNode, DSRTimeTreeNode, DSRUIDRefTreeNode, and DSRWaveformTreeNode.

virtual OFCondition DSRDocumentTreeNode::writeContentItem ( DcmItem dataset  )  const [protected, virtual]

write content item (value) to dataset.

This method does nothing for this base class, but derived classes overwrite it to write the contents according to their value type.

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

Reimplemented in DSRCodeTreeNode, DSRCompositeTreeNode, DSRContainerTreeNode, DSRDateTreeNode, DSRDateTimeTreeNode, DSRImageTreeNode, DSRNumTreeNode, DSRPNameTreeNode, DSRByReferenceTreeNode, DSRSCoord3DTreeNode, DSRSCoordTreeNode, DSRTCoordTreeNode, DSRTextTreeNode, DSRTimeTreeNode, DSRUIDRefTreeNode, and DSRWaveformTreeNode.

virtual OFCondition DSRDocumentTreeNode::readXMLContentItem ( const DSRXMLDocument doc,
DSRXMLCursor  cursor 
) [protected, virtual]

read content item specific XML data.

This method does nothing for this base class, but derived classes overwrite it to read the contents according to their value type.

Parameters:
doc document containing the XML file content
cursor cursor pointing to the starting node
Returns:
status, EC_Normal if successful, an error code otherwise

Reimplemented in DSRCodeTreeNode, DSRCompositeTreeNode, DSRContainerTreeNode, DSRDateTreeNode, DSRDateTimeTreeNode, DSRImageTreeNode, DSRNumTreeNode, DSRPNameTreeNode, DSRByReferenceTreeNode, DSRSCoord3DTreeNode, DSRSCoordTreeNode, DSRTCoordTreeNode, DSRTextTreeNode, DSRTimeTreeNode, DSRUIDRefTreeNode, and DSRWaveformTreeNode.

virtual OFCondition DSRDocumentTreeNode::renderHTMLContentItem ( STD_NAMESPACE ostream &  docStream,
STD_NAMESPACE ostream &  annexStream,
const size_t  nestingLevel,
size_t &  annexNumber,
const size_t  flags 
) const [protected, virtual]

render content item (value) in HTML/XHTML format.

This method does nothing for this base class, but derived classes overwrite it to render the contents according to their value type.

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

Reimplemented in DSRCodeTreeNode, DSRCompositeTreeNode, DSRContainerTreeNode, DSRDateTreeNode, DSRDateTimeTreeNode, DSRImageTreeNode, DSRNumTreeNode, DSRPNameTreeNode, DSRByReferenceTreeNode, DSRSCoord3DTreeNode, DSRSCoordTreeNode, DSRTCoordTreeNode, DSRTextTreeNode, DSRTimeTreeNode, DSRUIDRefTreeNode, and DSRWaveformTreeNode.

void DSRDocumentTreeNode::writeXMLItemStart ( STD_NAMESPACE ostream &  stream,
const size_t  flags,
const OFBool  closingBracket = OFTrue 
) const [protected]

write common item start (XML tag)

Parameters:
stream output stream to which the XML document is written
flags flag used to customize the output (see DSRTypes::XF_xxx)
closingBracket write closing bracket of XML start tag if OFTrue, otherwise the bracket has to be closed in the calling method

void DSRDocumentTreeNode::writeXMLItemEnd ( STD_NAMESPACE ostream &  stream,
const size_t  flags 
) const [protected]

write common item start (XML tag)

Parameters:
stream output stream to which the XML document is written
flags flag used to customize the output (see DSRTypes::XF_xxx)

OFCondition DSRDocumentTreeNode::readSRDocumentContentModule ( DcmItem dataset,
const DSRIODConstraintChecker constraintChecker,
const size_t  flags 
) [protected]

read SR document content module

Parameters:
dataset DICOM dataset from which the data should be read
constraintChecker checks relationship content constraints of the associated IOD
flags flag used to customize the reading process (see DSRTypes::RF_xxx)
Returns:
status, EC_Normal if successful, an error code otherwise

OFCondition DSRDocumentTreeNode::writeSRDocumentContentModule ( DcmItem dataset,
DcmStack markedItems 
) [protected]

write SR document content module

Parameters:
dataset DICOM dataset to which the data should be written
markedItems optional stack where pointers to all 'marked' content items (DICOM datasets/items) are added to during the write process.
Returns:
status, EC_Normal if successful, an error code otherwise

OFCondition DSRDocumentTreeNode::readDocumentRelationshipMacro ( DcmItem dataset,
const DSRIODConstraintChecker constraintChecker,
const OFString posString,
const size_t  flags 
) [protected]

read document relationship macro

Parameters:
dataset DICOM dataset from which the data should be read
constraintChecker checks relationship content constraints of the associated IOD
posString location of the current content item (e.g. "1.2.3")
flags flag used to customize the reading process (see DSRTypes::RF_xxx)
Returns:
status, EC_Normal if successful, an error code otherwise

OFCondition DSRDocumentTreeNode::writeDocumentRelationshipMacro ( DcmItem dataset,
DcmStack markedItems 
) [protected]

write document relationship macro

Parameters:
dataset DICOM dataset to which the data should be written
markedItems optional stack where pointers to all 'marked' content items (DICOM datasets/items) are added to during the write process.
Returns:
status, EC_Normal if successful, an error code otherwise

OFCondition DSRDocumentTreeNode::readDocumentContentMacro ( DcmItem dataset,
const OFString posString,
const size_t  flags 
) [protected]

read document content macro

Parameters:
dataset DICOM dataset from which the data should be read
posString location of the current content item (e.g. "1.2.3")
flags flag used to customize the reading process (see DSRTypes::RF_xxx)
Returns:
status, EC_Normal if successful, an error code otherwise

OFCondition DSRDocumentTreeNode::writeDocumentContentMacro ( DcmItem dataset  )  const [protected]

write document content macro

Parameters:
dataset DICOM dataset to which the data should be written
Returns:
status, EC_Normal if successful, an error code otherwise

OFCondition DSRDocumentTreeNode::readContentSequence ( DcmItem dataset,
const DSRIODConstraintChecker constraintChecker,
const OFString posString,
const size_t  flags 
) [protected]

read content sequence

Parameters:
dataset DICOM dataset from which the data should be read
constraintChecker checks relationship content constraints of the associated IOD
posString location of the current content item (e.g. "1.2.3")
flags flag used to customize the reading process (see DSRTypes::RF_xxx)
Returns:
status, EC_Normal if successful, an error code otherwise

OFCondition DSRDocumentTreeNode::writeContentSequence ( DcmItem dataset,
DcmStack markedItems 
) const [protected]

write content sequence

Parameters:
dataset DICOM dataset to which the data should be written
markedItems optional stack where pointers to all 'marked' content items (DICOM datasets/items) are added to during the write process.
Returns:
status, EC_Normal if successful, an error code otherwise

OFCondition DSRDocumentTreeNode::renderHTMLConceptName ( STD_NAMESPACE ostream &  docStream,
const size_t  flags 
) const [protected]

render concept name in HTML/XHTML format.

If the optional observation datetime field is valid (not empty) it is also rendered.

Parameters:
docStream output stream to which the main HTML/XHTML document is written
flags flag used to customize the output (see DSRTypes::HF_xxx)
Returns:
status, EC_Normal if successful, an error code otherwise

OFCondition DSRDocumentTreeNode::renderHTMLChildNodes ( STD_NAMESPACE ostream &  docStream,
STD_NAMESPACE ostream &  annexStream,
const size_t  nestingLevel,
size_t &  annexNumber,
const size_t  flags 
) const [protected]

render child nodes in HTML/XHTML format

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

static const OFString& DSRDocumentTreeNode::getRelationshipText ( const E_RelationshipType  relationshipType,
OFString relationshipText,
const size_t  flags 
) [static, protected]

convert relationship type into a text used for HTML rendering

Parameters:
relationshipType type of relationship to be converted
relationshipText reference to string variable where the resulting text should be stored. Value is cleared if 'relationshipType' is invalid or not supported.
flags flag used to customize the output (see DSRTypes::HF_xxx)
Returns:
reference to the 'relationshipText' string (might be empty)


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


Generated on 6 Jan 2011 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.5.1