DCMTK  Version 3.6.1 20170228
OFFIS DICOM Toolkit
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Classes | Public Member Functions | Protected Member Functions | Private Attributes | Static Private Attributes | List of all members
IODMultiframeDimensionModule Class Reference

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

+ Inheritance diagram for IODMultiframeDimensionModule:

Classes

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

Public Member Functions

 IODMultiframeDimensionModule (OFshared_ptr< DcmItem > item, OFshared_ptr< IODRules > rules)
 Constructor. More...
 
 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. More...
 
virtual void clearData ()
 Clear (removes) all attributes handled by the modules of this component. More...
 
virtual OFCondition read (DcmItem &source, const OFBool clearOldData=OFTrue)
 Read data into this module from given item. More...
 
virtual OFCondition write (DcmItem &destination)
 Write this module to given item. More...
 
virtual void resetRules ()
 Resets rules to their original values.
 
virtual OFString getName () const
 Get name of module ("MultiframeDimensionModule") More...
 
virtual OFCondition getDimensionOrganizationType (OFString &value, const signed long pos=0) const
 Get Dimension Organization Type. More...
 
virtual OFCondition setDimensionOrganizationType (const OFString &value, const OFBool checkValue=OFTrue)
 Set Dimension Organization Type (Defined Terms as of DICOM 2014a "3D" and "3D_TEMPORAL") More...
 
virtual OFVector
< DimensionIndexItem * > & 
getDimensionIndexSequence ()
 Get content of the Dimension Index Sequence. More...
 
virtual OFVector
< DimensionOrganizationItem * > & 
getDimensionOrganizationSequence ()
 Get content of the Dimension Organization Sequence. More...
 
virtual OFCondition checkDimensions (DcmItem *fgItem=NULL)
 Check dimensions for consistency with functional groups. More...
 
virtual DcmElementgetIndexElement (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. More...
 
- Public Member Functions inherited from IODModule
 IODModule (OFshared_ptr< DcmItem > item, OFshared_ptr< IODRules > rules)
 Constructor. More...
 
 IODModule ()
 Constructor. More...
 
 IODModule (const IODModule &rhs)
 Copy constructor, creates shallow copy. More...
 
IODModuleoperator= (const IODModule &rhs)
 Assignment operator, creates shallow copy. More...
 
 ~IODModule ()
 Desctructor.
 
- Public Member Functions inherited from IODComponent
 IODComponent (OFshared_ptr< DcmItem > item, OFshared_ptr< IODRules > rules, IODComponent *parent=NULL)
 Constructor. More...
 
 IODComponent (IODComponent *parent=NULL)
 Constructor, creates rules and item from scratch. More...
 
IODComponentoperator= (const IODComponent &rhs)
 Assignment operator, copies contained item and rule set from rhs to "this" attribute set. More...
 
 IODComponent (const IODComponent &rhs)
 Copy constructor, copies reference to contained item and rule set to "this" attribute set. More...
 
virtual ~IODComponent ()
 Virtual Destructor.
 
void clearData ()
 Clear all attributes from the data that are handled by this module. More...
 
virtual void inventMissing ()
 Set missing values by inventing "default values". More...
 
OFshared_ptr< IODRulesgetRules ()
 Get rules handled by this module. More...
 
virtual void makeOptional ()
 Make component optional by turning all attributes requirement types of it to type 3. More...
 
DcmItemgetData ()
 Get the data handled by this module. More...
 
virtual OFCondition check (const OFBool quiet=OFFalse)
 Check whether this component's data satisfies the underlying rules. More...
 
virtual int compare (const IODComponent &rhs) const
 Comparison operator for IOD Components. More...
 

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.
 

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. More...
 
static OFCondition write (DcmItem &source, IODRules &rules, DcmItem &destination, const OFString &componentName)
 Static helper function that writes attributes from given item into destination item, as determined by the provided rules and component name. More...
 
- Protected Attributes inherited from IODComponent
OFshared_ptr< DcmItemm_Item
 Shared pointer to the data handled by this class. More...
 
OFshared_ptr< IODRulesm_Rules
 Rules describing the attributes governed by this class.
 
IODComponentm_Parent
 The parent component (may be NULL) of this class.
 

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 ( OFshared_ptr< DcmItem item,
OFshared_ptr< IODRules rules 
)

Constructor.

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

Member Function Documentation

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
dimensionIndexPointerThe Dimension Index Pointer attribute
dimensionOrganizationUIDThe 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).
functionalGroupPointerThe functional group where the pointer attribute can be found
dimensionDescriptionLabelThe description label of this dimension (optional)
dimensionIndexPrivateCreatorThe private creator of the Dimension Index Pointer attribute. Required if dimensionIndexPointer points to a private attribute tag.
functionalGroupPrivateCreatorThe 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)
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
fgItemThe item containing functional group information
Returns
EC_Normal, if consistency is fine, error otherwise
virtual void IODMultiframeDimensionModule::clearData ( )
virtual

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

Rules are not reset.

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

Get content of the Dimension Index Sequence.

Returns
Reference to the Dimension Index Pointer Sequence
virtual OFVector<DimensionOrganizationItem*>& IODMultiframeDimensionModule::getDimensionOrganizationSequence ( )
virtual

Get content of the Dimension Organization Sequence.

Returns
Reference to the Dimension Organization Sequence
virtual OFCondition IODMultiframeDimensionModule::getDimensionOrganizationType ( OFString value,
const signed long  pos = 0 
) const
virtual

Get Dimension Organization Type.

Parameters
valueReference to variable in which the value should be stored
posIndex of the value to get (0..vm-1), -1 for all components
Returns
EC_Normal if successful, an error code otherwise
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
perFrameFGAn instance of the Per-Frame Functional Group Sequence that should be searched
fgPointerThe tag key of the functional group the value resides in
indexPointerThe tag of the dimension value inside the functional group
fgPrivateCreatorThe private creator of the fgPointer tag key. Only required if fgPointer is a private tag key (odd element number)
privateCreatorThe 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.
virtual OFString IODMultiframeDimensionModule::getName ( ) const
virtual

Get name of module ("MultiframeDimensionModule")

Returns
Name of the module ("MultiframeDimensionModule")

Implements IODComponent.

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

Read data into this module from given item.

Parameters
sourceThe item to read from
clearOldDataIf OFTrue, old data in this module is cleared first (default: OFTrue)
Returns
EC_Normal if reading was successful, error otherwise

Reimplemented from IODComponent.

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
valueValue to be set (single value only) or "" for no value
checkValueCheck 'value' for conformance with VR and VM if enabled
Returns
status EC_Normal if successful, an error code otherwise
virtual OFCondition IODMultiframeDimensionModule::write ( DcmItem destination)
virtual

Write this module to given item.

Parameters
destinationThe item to write to
Returns
EC_Normal if writing was successful, error otherwise

Reimplemented from IODComponent.


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


Generated on Tue Feb 28 2017 for DCMTK Version 3.6.1 20170228 by Doxygen 1.8.8