OFFIS DCMTK
Version 3.6.0
|
Class for content item CONTAINER. More...
Public Member Functions | |
DSRContainerTreeNode (const E_RelationshipType relationshipType, const E_ContinuityOfContent continuityOfContent=COC_Separate) | |
constructor | |
virtual | ~DSRContainerTreeNode () |
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 | 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. | |
E_ContinuityOfContent | getContinuityOfContent () const |
get continuity of content flag. | |
OFCondition | setContinuityOfContent (const E_ContinuityOfContent continuityOfContent) |
set continuity of content flag. | |
![]() | |
DSRDocumentTreeNode (const E_RelationshipType relationshipType, const E_ValueType valueType) | |
constructor. | |
virtual | ~DSRDocumentTreeNode () |
destructor | |
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 | |
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 DSRCodedEntryValue & | getConceptName () 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 OFString & | getObservationDateTime () 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. | |
![]() | |
DSRTreeNode () | |
default constructor | |
virtual | ~DSRTreeNode () |
destructor | |
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 | |
![]() | |
DSRCodedEntryValue * | getConceptNamePtr () |
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 | |
Private Member Functions | |
DSRContainerTreeNode (const DSRContainerTreeNode &) | |
DSRContainerTreeNode & | operator= (const DSRContainerTreeNode &) |
Private Attributes | |
E_ContinuityOfContent | ContinuityOfContent |
continuity of content flag (associated DICOM VR=CS, mandatory) | |
Additional Inherited Members | |
![]() | |
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 const OFString & | getRelationshipText (const E_RelationshipType relationshipType, OFString &relationshipText, const size_t flags) |
convert relationship type into a text used for HTML rendering | |
![]() | |
DSRTreeNode * | Prev |
pointer to previous tree node (if any) | |
DSRTreeNode * | Next |
pointer to next tree node (if any) | |
DSRTreeNode * | Down |
pointer to first child node (if any) | |
const size_t | Ident |
unique identifier (created automatically) | |
![]() | |
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 | |
Class for content item CONTAINER.
Definition at line 45 of file dsrcontn.h.
DSRContainerTreeNode::DSRContainerTreeNode | ( | const E_RelationshipType | relationshipType, |
const E_ContinuityOfContent | continuityOfContent = COC_Separate |
||
) |
constructor
relationshipType | type of relationship to the parent tree node. Should not be RT_invalid or RT_isRoot. |
continuityOfContent | Continuity of content flag (default: separate). Should be different from COC_invalid. |
|
virtual |
clear all member variables.
Please note that the content item might become invalid afterwards.
Reimplemented from DSRDocumentTreeNode.
|
inline |
get continuity of content flag.
This flag specifies whether or not its contained content items (child nodes) are logically linked in a continuous textual flow, or are sparate items.
Definition at line 125 of file dsrcontn.h.
References ContinuityOfContent.
|
virtual |
check whether the content is short.
A container content item is defined to be never short (return always OFFalse).
flags | flag used to customize the output (see DSRTypes::HF_xxx) |
Reimplemented from DSRDocumentTreeNode.
|
virtual |
check whether the content item is valid.
The content item is valid if the base class is valid, the continuity of content flag is valid, and the concept name is valid or the content item is not the root item.
Reimplemented from DSRDocumentTreeNode.
|
virtual |
print content item.
A typical output looks like this: CONTAINER:(,,"Diagnosis")=SEPARATE for the root node and contains CONTAINER:=CONTINUOUS for a "normal" content item.
stream | output stream to which the content item should be printed |
flags | flag used to customize the output (see DSRTypes::PF_xxx) |
Reimplemented from DSRDocumentTreeNode.
|
protectedvirtual |
read content item (value) from dataset
dataset | DICOM dataset from which the content item should be read |
Reimplemented from DSRDocumentTreeNode.
|
protectedvirtual |
read content item specific XML data
doc | document containing the XML file content |
cursor | cursor pointing to the starting node |
Reimplemented from DSRDocumentTreeNode.
|
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). This method overwrites the one specified in base class DSRDocumentTree since the rendering of the child nodes depends on the value of the flag 'ContinuityOfContent'.
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) |
Reimplemented from DSRDocumentTreeNode.
|
protectedvirtual |
render content item (value) in HTML/XHTML format
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) |
Reimplemented from DSRDocumentTreeNode.
OFCondition DSRContainerTreeNode::setContinuityOfContent | ( | const E_ContinuityOfContent | continuityOfContent | ) |
set continuity of content flag.
This flag specifies whether or not its contained content items (child nodes) are logically linked in a continuous textual flow, or are sparate items.
continuityOfContent | value to be set (should be different from COC_onvalid) |
|
protectedvirtual |
write content item (value) to dataset
dataset | DICOM dataset to which the content item should be written |
Reimplemented from DSRDocumentTreeNode.
|
virtual |
write content item in XML format
stream | output stream to which the XML document is written |
flags | flag used to customize the output (see DSRTypes::XF_xxx) |
Reimplemented from DSRDocumentTreeNode.