ImFusion C++ SDK 4.4.0
ImFusion::Dicom::CommonModule Class Reference

#include <ImFusion/Dicom/DicomModule.h>

Collection of the essential tags describing a Dicom data set combining. More...

Inheritance diagram for ImFusion::Dicom::CommonModule:

Detailed Description

Public Member Functions

 CommonModule (ModuleList &parent, Type type)
void load (SharedImageSet &sis) const
 Load data from the module and store it in a ImageInfoDataComponent of sis.
void load (ImageInfoDataComponent &iidc) const
 Load data from the module into the ImageInfoDataComponent.
void save (const SharedImageSet &sis, int sharedImageIndex, int sliceIndex, const std::string &sopClassUID)
 Save the data in the ImageInfoDataComponent of sis to DICOM.
void save (const ImageInfoDataComponent *iidc)
 Writes the ImageInfoDataComponent to the dataset.
void saveMandatory (const std::string &sopClassUID)
 Writes all remaining mandatory tags not covered by save(ImageInfoDataComponent).
Public Member Functions inherited from ImFusion::Dicom::Module
 Module (ModuleList &parent, Type type)
 Creates a new Dicom Module, registers it with the given parent and sets the given type/conditionality.
virtual bool isMandatory () const
 Evaluates whether this module is mandatory (based on the specified type and optionally condition).
void setCondition (std::function< bool()> predicate)
 Sets a callback function that determines if a conditional module is mandatory.
virtual void checkErrors (bool ignoreMandatory=false) const
 Checks the module for errors.
DcmItem & dataset () override
 Returns the data set this module corresponds to.
Public Member Functions inherited from ImFusion::Dicom::ElementList
const std::vector< ElementBase * > & elements () const
 List of all elements.
Public Member Functions inherited from ImFusion::Dicom::ErrorRecorder
virtual void * registerErrorHandler (ErrorCallback handler)
 Registers a new handler callback function.
virtual void unregisterErrorHandler (void *handler)
 Removes a previously registered handler again.
void * forwardErrors (const ErrorRecorder *otherRecorder)
 Convenient function to forward all errors registered to this recorder to another recorder.
virtual void registerError (const Error &error) const
 Sends the given error to all error handler callbacks.
void registerError (Error::Code code, Error::Type type, const std::string &details, TagProxy tag=TagProxy()) const

Public Attributes

Element< std::stringsopClassUID
Element< std::stringsopInstanceUID
Element< std::stringspecificCharacteSet
 Will always be set to ISO_IR 192 during save.
Element< std::stringpatientName
Element< std::stringpatientID
Element< std::stringpatientPosition
Element< std::stringpatientBirthDate
Element< std::stringpatientSex
Element< std::stringpatientResponsiblePerson
Element< std::stringpatientComment
Element< std::stringstudyInstanceUID
Element< std::stringstudyID
Element< std::stringstudyDate
Element< std::stringstudyTime
Element< std::stringstudyDescription
Element< std::stringseriesInstanceUID
Element< std::stringseriesNumber
Element< std::stringseriesDate
Element< std::stringseriesTime
Element< std::stringseriesDescription
Element< Data::Modalitymodality
 DICOM modality converted to ImFusion::Data::Modality.
Element< std::stringmodalityStr
 DICOM modality.
Element< std::stringphotometricInterpretation
Element< std::stringbodyPartExamined
Element< std::stringlaterality
Element< std::stringanatomicalOrientationType
 Currently not written during save.
Element< int > instanceNumber
Element< std::vector< std::string > > imageType
 Currently not written during save.
Element< std::stringacquisitionTime
 Currently not written during save.
Element< std::stringframeOfReferenceUID
Element< std::stringreferringPhysicianName
Element< std::stringaccessionNumber

Additional Inherited Members

Public Types inherited from ImFusion::Dicom::Module
enum  Type { Mandatory , UserOption , Conditional }
 Conditionality of the module.
Public Types inherited from ImFusion::Dicom::ErrorRecorder
using ErrorCallback = std::function<void(const Error&)>
 Alias for a function to call for each error recorded.
Protected Member Functions inherited from ImFusion::Utils::NotCopyable
 NotCopyable (NotCopyable &&) noexcept=default
NotCopyable & operator= (NotCopyable &&) noexcept=default
 NotCopyable (const NotCopyable &)=delete
NotCopyable & operator= (const NotCopyable &)=delete
Protected Attributes inherited from ImFusion::Dicom::Module
ModuleListm_parent
 List this module is part of.
DcmItem & m_dataset
 The data set this module corresponds to.
Type m_type
 Conditionality of this module.
std::function< bool()> m_typeCondition
 Optional predicate function to evaluate mandatoriness.
Protected Attributes inherited from ImFusion::Dicom::ElementList
std::vector< ElementBase * > m_elements
 List of all elements.

Member Function Documentation

◆ load() [1/2]

void ImFusion::Dicom::CommonModule::load ( SharedImageSet & sis) const

Load data from the module and store it in a ImageInfoDataComponent of sis.

Missing values will be set to empty strings in the datacomponent. If the dataset contains anatomical data, it is stored in a AnatomyDataComponent.

◆ load() [2/2]

void ImFusion::Dicom::CommonModule::load ( ImageInfoDataComponent & iidc) const

Load data from the module into the ImageInfoDataComponent.

Missing values will be set to empty strings in the datacomponent. This is automatically called by the above load method for SharedImageSet and should only be used for non-image data (such as PointClouds).

◆ save()

void ImFusion::Dicom::CommonModule::save ( const ImageInfoDataComponent * iidc)

Writes the ImageInfoDataComponent to the dataset.

This is automatically called by the above save method for SharedImageSet and should only be used for non-image data (such as PointClouds).

◆ saveMandatory()

void ImFusion::Dicom::CommonModule::saveMandatory ( const std::string & sopClassUID)

Writes all remaining mandatory tags not covered by save(ImageInfoDataComponent).

This is automatically called by the above save method for SharedImageSet and should only be used for non-image data (such as PointClouds).


The documentation for this class was generated from the following file:
  • ImFusion/Dicom/DicomModule.h
Search Tab / S to search, Esc to close