Loading...
Searching...
No Matches
IODMultiframeDimensionModule Class Reference

Class representing the Multi-Frame Dimension Module: More...

Inheritance diagram for IODMultiframeDimensionModule:

## Classes

class | DimensionOrganizationItem
| Helper class representing an item within the Dimension Index Sequence, i.e. a single dimension description. More...
class | DimensionIndexItem
| Class representing a Dimension Index Pointer Sequence Item managed by the Multi-frame Dimension Module. More...

## Public Member Functions

| IODMultiframeDimensionModule (OFshared_ptr< DcmItem > item, OFshared_ptr< IODRules > rules)
| Constructor.
| IODMultiframeDimensionModule ()
| Constructor.
virtual | ~IODMultiframeDimensionModule ()
| Destructor.
virtual OFCondition | addDimensionIndex (const DcmTagKey &dimensionIndexPointer, const OFString &dimensionOrganizationUID, const DcmTagKey &functionalGroupPointer, const OFString &dimensionDescriptionLabel="", const OFString &dimensionIndexPrivateCreator="", const OFString &functionalGroupPrivateCreator="")
| Convenience method to add Dimension Index.
virtual void | clearData ()
| Clear (removes) all attributes handled by the modules of this component.
virtual OFCondition | read (DcmItem &source, const OFBool clearOldData=OFTrue)
| Read data into this module from given item.
virtual OFCondition | write (DcmItem &destination)
| Write this module to given item.
virtual void | resetRules ()
| Resets rules to their original values.
virtual OFString | getName () const
| Get name of module ("MultiframeDimensionModule").
virtual OFCondition | getDimensionOrganizationType (OFString &value, const signed long pos=0) const
| Get Dimension Organization Type.
virtual OFCondition | setDimensionOrganizationType (const OFString &value, const OFBool checkValue=OFTrue)
| Set Dimension Organization Type (Defined Terms as of DICOM 2014a "3D" and "3D_TEMPORAL").
virtual OFVector< DimensionIndexItem * > & | getDimensionIndexSequence ()
| Get content of the Dimension Index Sequence.
virtual OFVector< DimensionOrganizationItem * > & | getDimensionOrganizationSequence ()
| Get content of the Dimension Organization Sequence.
virtual OFCondition | checkDimensions (DcmItem *fgItem=NULL)
| Check dimensions for consistency with functional groups.
virtual DcmElement * | getIndexElement (DcmSequenceOfItems *perFrameFG, const DcmTagKey &fgPointer, const DcmTagKey &indexPointer, const OFString &fgPrivateCreator, const OFString &privateCreator)
| Get specific index pointer element from per-frame functional group sequence.
virtual void | setCheckOnWrite (const OFBool doCheck)
| Enable or disable calling of the checkDimensions() routine when writing the module.
virtual OFBool | getCheckOnWrite ()
| Returns whether checkDimensions() routine is called when writing the module.
Public Member Functions inherited from IODModule
| IODModule (OFshared_ptr< DcmItem > item, OFshared_ptr< IODRules > rules)
| Constructor.
| IODModule ()
| Constructor.
| IODModule (const IODModule &rhs)
| Copy constructor, creates shallow copy.
IODModule & | operator= (const IODModule &rhs)
| Assignment operator, creates shallow copy.
| ~IODModule ()
| Destructor.
Public Member Functions inherited from IODComponent
| IODComponent (OFshared_ptr< DcmItem > item, OFshared_ptr< IODRules > rules, IODComponent *parent=NULL)
| Constructor.
| IODComponent (IODComponent *parent=NULL)
| Constructor, creates rules and item from scratch.
IODComponent & | operator= (const IODComponent &rhs)
| Assignment operator, copies contained item and rule set from rhs to "this" attribute set.
| IODComponent (const IODComponent &rhs)
| Copy constructor, copies reference to contained item and rule set to "this" attribute set.
virtual | ~IODComponent ()
| Virtual Destructor.
virtual void | inventMissing ()
| Set missing values by inventing "default values".
OFshared_ptr< IODRules > | getRules ()
| Get rules handled by this module.
virtual void | makeOptional ()
| Make component optional by turning all attributes requirement types of it to type 3.
DcmItem & | getData ()
| Get the data handled by this module.
virtual OFCondition | check (const OFBool quiet=OFFalse)
| Check whether this component's data satisfies the underlying rules.
virtual int | compare (const IODComponent &rhs) const
| Comparison operator for IOD Components.
virtual bool | getValueCheckOnWrite () const
| Get whether attribute value errors will be handled as errors on writing.
virtual void | setValueCheckOnWrite (const OFBool checkValue)
| Set whether attribute values should be checked on writing, i.e.

## Protected Member Functions

void | createDimensionOrganizationData ()
| Go over Dimension Index Pointers and extract Dimension Organization UIDs for Dimension Organization Sequence.

## Private Attributes

OFVector< DimensionIndexItem * > | m_DimensionIndexSequence
| Vector with all items of the Dimension Index Pointer Sequence.
OFVector< DimensionOrganizationItem * > | m_DimensionOrganizationSequence
| Vector with all items of the Dimension Organization Sequence.
OFBool | m_CheckOnWrite
| If enabled, dimension structures are checked when writing the module.

## Static Private Attributes

static const OFString | m_ModuleName
| This module's name (MultiframeDimensionModule).

## Additional Inherited Members

Static Public Member Functions inherited from IODComponent
static OFCondition | read (DcmItem &source, IODRules &rules, DcmItem &destination, const OFString &componentName)
| Static helper function that reads attributes from given item into destination item, as determined by the provided rules and component name.
static OFCondition | write (DcmItem &source, IODRules &rules, DcmItem &destination, const OFString &componentName, const OFBool checkValue)
| Static helper function that writes attributes from given item into destination item, as determined by the provided rules and component name.
Protected Attributes inherited from IODComponent
OFshared_ptr< DcmItem > | m_Item
| Shared pointer to the data handled by this class.
OFshared_ptr< IODRules > | m_Rules
| Rules describing the attributes governed by this class.
IODComponent * | m_Parent
| The parent component (may be NULL) of this class.
OFBool | m_CheckValueOnWrite
| Denotes whether attribute values should be checked on writing, i.e.

## Detailed Description

Class representing the Multi-Frame Dimension Module:

Dimension Organization Sequence: (SQ, VM 1-n, Type 1)

> Dimension Organization UID: (UI, 1, 1) Dimension Organization Type: (CS, 1, 1) Dimension Index Sequence: (SQ, 1-n, 1) Dimension Index Pointer (AT, 1, 1) Dimension Index Private Creator (LO, 1, 1C) Functional Group Pointer (AT, 1, 1C) Functional Group Private Creator (LO, 1, 1C) Dimension Organization UID (UI, 1, 1C) Dimension Description Label (LO, 1, 3)

The Dimension Organization UIDs within the Dimension Organization Sequence cannot be set explicitly. Instead the sequence is populated from the data found within the Dimension Index Sequence.

## Constructor & Destructor Documentation

## IODMultiframeDimensionModule()

IODMultiframeDimensionModule::IODMultiframeDimensionModule | ( | OFshared_ptr< DcmItem > | item,
|  | OFshared_ptr< IODRules > | rules )

Constructor.

Parameters

  item | The item to be used for data storage. If NULL, the class creates an empty data container.
  rules | The rule set for this class. If NULL, the class creates one from scratch and adds its values.

## Member Function Documentation

## addDimensionIndex()

virtual OFCondition IODMultiframeDimensionModule::addDimensionIndex | ( | const DcmTagKey & | dimensionIndexPointer,
|  | const OFString & | dimensionOrganizationUID,
|  | const DcmTagKey & | functionalGroupPointer,
|  | const OFString & | dimensionDescriptionLabel = "",
|  | const OFString & | dimensionIndexPrivateCreator = "",
|  | const OFString & | functionalGroupPrivateCreator = "" )

virtual

Convenience method to add Dimension Index.

Parameters

  dimensionIndexPointer | The Dimension Index Pointer attribute
  dimensionOrganizationUID | The Dimension Organization UID of the dimension organization the pointer refers to. If UID does not exist yet (in the Dimension Organization Sequence, it is created there automatically).
  functionalGroupPointer | The functional group where the pointer attribute can be found
  dimensionDescriptionLabel | The description label of this dimension (optional)
  dimensionIndexPrivateCreator | The private creator of the Dimension Index Pointer attribute. Required if dimensionIndexPointer points to a private attribute tag.
  functionalGroupPrivateCreator | The private creator of the functional group. Required if functionalGroupPointer points to a private attribute tag.

Returns
  EC_Normal if index could be added, error otherwise (basic parameter checking)

## checkDimensions()

virtual OFCondition IODMultiframeDimensionModule::checkDimensions | ( | DcmItem * | fgItem = NULL | ) |

virtual

Check dimensions for consistency with functional groups.

Note that one can provide an item that provides the dataset containing the functional groups to check against. This item must contain on main level the Shared and Per-frame Functional Group Sequence. If no item is given (NULL pointer) it is tried to find these sequences within "this" object which works in the case that this class was initialized with an existing item (or the fg data was inserted in another way afterwards).

Parameters

  fgItem | The item containing functional group information

Returns
  EC_Normal, if consistency is fine, error otherwise

## clearData()

virtual void IODMultiframeDimensionModule::clearData | ( |  | ) |

virtual

Clear (removes) all attributes handled by the modules of this component.

Rules are not reset.

Reimplemented from IODComponent.

## getCheckOnWrite()

virtual OFBool IODMultiframeDimensionModule::getCheckOnWrite | ( |  | ) |

virtual

Returns whether checkDimensions() routine is called when writing the module.

Returns
  OFTrue if calling of checkDimensions() is enabled when writing, OFFalse otherwise.

## getDimensionIndexSequence()

virtual OFVector< DimensionIndexItem * > & IODMultiframeDimensionModule::getDimensionIndexSequence | ( |  | ) |

virtual

Get content of the Dimension Index Sequence.

Returns
  Reference to the Dimension Index Pointer Sequence

## getDimensionOrganizationSequence()

virtual OFVector< DimensionOrganizationItem * > & IODMultiframeDimensionModule::getDimensionOrganizationSequence | ( |  | ) |

virtual

Get content of the Dimension Organization Sequence.

Returns
  Reference to the Dimension Organization Sequence

## getDimensionOrganizationType()

virtual OFCondition IODMultiframeDimensionModule::getDimensionOrganizationType | ( | OFString & | value,
|  | const signed long | pos = 0 ) const

virtual

Get Dimension Organization Type.

Parameters

  value | Reference to variable in which the value should be stored
  pos | Index of the value to get (0..vm-1), -1 for all components

Returns
  EC_Normal if successful, an error code otherwise

## getIndexElement()

virtual DcmElement * IODMultiframeDimensionModule::getIndexElement | ( | DcmSequenceOfItems * | perFrameFG,
|  | const DcmTagKey & | fgPointer,
|  | const DcmTagKey & | indexPointer,
|  | const OFString & | fgPrivateCreator,
|  | const OFString & | privateCreator )

virtual

Get specific index pointer element from per-frame functional group sequence.

Prints out error messages if index does not exist or index location information provided by parameters is incomplete or invalid

Parameters

  perFrameFG | An instance of the Per-Frame Functional Group Sequence that should be searched
  fgPointer | The tag key of the functional group the value resides in
  indexPointer | The tag of the dimension value inside the functional group
  fgPrivateCreator | The private creator of the fgPointer tag key. Only required if fgPointer is a private tag key (odd element number)
  privateCreator | The private creator of the indexPointer tag key. Only required if indexPointer is a private tag key (odd element number)

Returns
  The element pointed to. If element could not be located, NULL is returned.

## getName()

virtual OFString IODMultiframeDimensionModule::getName | ( |  | ) | const

virtual

Get name of module ("MultiframeDimensionModule").

Returns
  Name of the module ("MultiframeDimensionModule")

Implements IODComponent.

## read()

virtual OFCondition IODMultiframeDimensionModule::read | ( | DcmItem & | source,
|  | const OFBool | clearOldData = OFTrue )

virtual

Read data into this module from given item.

Parameters

  source | The item to read from
  clearOldData | If OFTrue, old data in this module is cleared first (default: OFTrue)

Returns
  EC_Normal if reading was successful, error otherwise

Reimplemented from IODComponent.

## setCheckOnWrite()

virtual void IODMultiframeDimensionModule::setCheckOnWrite | ( | const OFBool | doCheck | ) |

virtual

Enable or disable calling of the checkDimensions() routine when writing the module.

Checking can be very time-consuming if many frames are present. Default is OFTrue.

Parameters

  doCheck | If enabled, checkDimensions() is called when writing.

## setDimensionOrganizationType()

virtual OFCondition IODMultiframeDimensionModule::setDimensionOrganizationType | ( | const OFString & | value,
|  | const OFBool | checkValue = OFTrue )

virtual

Set Dimension Organization Type (Defined Terms as of DICOM 2014a "3D" and "3D_TEMPORAL").

Parameters

  value | Value to be set (single value only) or "" for no value
  checkValue | Check 'value' for conformance with VR and VM if enabled

Returns
  status EC_Normal if successful, an error code otherwise

## write()

virtual OFCondition IODMultiframeDimensionModule::write | ( | DcmItem & | destination | ) |

virtual

Write this module to given item.

Parameters

  destination | The item to write to

Returns
  EC_Normal if writing was successful, error otherwise

Reimplemented from IODComponent.

## Member Data Documentation

## m_CheckOnWrite

OFBool IODMultiframeDimensionModule::m_CheckOnWrite

private

If enabled, dimension structures are checked when writing the module.

This can be very time-consuming if many frames are present. Default is OFTrue.

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

- dcmiod/include/dcmtk/dcmiod/modmultiframedimension.h

Generated on for DCMTK Version 3.7.0 by Doxygen 1.15.0