MeVisLab Toolbox Reference
ml::DicomImageTypeTagInterface Class Reference

Manages the module field interface according to the Image Type tag from DICOM Enhanced MR Image Modules C.8.13.1. More...

#include <mlDicomImageTypeTagInterface.h>

Inheritance diagram for ml::DicomImageTypeTagInterface:
ml::DicomModifyFieldAddOnBase ml::DicomModifyList ml::FieldAddOnBase ml::Base

Public Types

enum  IODMode { ImageTypeforLegacyConvertedEnhancedMR = 0 }
Public Types inherited from ml::Base
enum  PersistenceInterface { PersistenceByString , PersistenceByTreeNode , PersistenceByStream }
 This enum describes the different persistence interfaces available. More...
Public Types inherited from ml::FieldAddOnBase
enum  FieldChangeState { NoChange = 0 , StatusOnlyChange , RecalculationRequired }
 Describes the type of a field changes detected in handleFieldChanges(Field *field). More...

Public Member Functions

 DicomImageTypeTagInterface (Module &modRef, const IODMode iodMode, bool forbidMixed, const bool allowEmptyValue3=false, const bool allowEmptyValue4=false)
void addFields () override
 Add fields to field container of module.
void handleFieldActivationChanges () override
 Handle class changes according to Module::activateAttachments.
FieldAddOnBase::FieldChangeState handleFieldChanges (Field *field) override
 Handle field notifications according to Module::activateAttachments with a return of field change state.
void inheritValues (DCMTree::Const_TreePtr dcmTree) override
 Implements the copy of tag values from the given dcmTree to the fields.
void getAsTagVectorToAdd (std::vector< DCMTree::TagPtr > &tagVector, DCMTree::RawTagId idOfTagToAdd)
 For the current state get a vector with set tags which easily can be added to a DCMTree.
std::string applyModifications (DCMTree::TreePtr dcmTree, const FieldContainer *treeInfos=nullptr) override
void _addImageTypeSpecificTags (DCMTree::TreePtr dcmTree)
 Add tags of the Image Type tag from Enhanced MR Image Module, C.8.13.1.
std::string checkConsistency () const override
bool getForbidMixed () const
 Allow access to _forbidMixed flag.
void setForbidMixed (bool forbidMixed)
 Set _forbidMixed flag.
Public Member Functions inherited from ml::DicomModifyFieldAddOnBase
 DicomModifyFieldAddOnBase (FieldContainer &fieldContainerRef, size_t numInstances=1, bool createInputModifyTagsPluginBaseConnectorField=false, bool createOutputModifyTagsPluginBaseConnectorField=false)
 ~DicomModifyFieldAddOnBase () override
 Destructor resetting connector fields if they exist.
size_t getNumInstances () const
 Returns the number of instances to be created by derived fields.
std::string applyModifications (DCMTree::TreePtr dcmTree, const FieldContainer *treeInfos=nullptr) override
void addFields () override
 Add fields to field container of the FieldAddOn.
void handleFieldActivationChanges () override
 Handle class changes according to Module::activateAttachments.
FieldAddOnBase::FieldChangeState handleFieldChanges (Field *field) override
 Handle field notifications according to Module::handleNotification with a return of field change state.
BaseFieldgetOutputModifierListFld () const
 Provide access to output base field if it was created.
BaseFieldgetInputModifierListFld () const
 Provide access to input base connector field if it was created.
Public Member Functions inherited from ml::DicomModifyList
 DicomModifyList ()
 ~DicomModifyList () override
 Destructor also destroying all of its stored Modifiers.
void addModifier (DicomModifyBase *modifier, bool atEnd=true)
void clear ()
 Makes modifier array empty and deletes all of them.
std::vector< DicomModifyBase * > & getModifierList ()
const std::vector< DicomModifyBase * > & getModifierList () const
 Same as getModifierList() only for constant access.
void setInputPlugin (DicomModifyList *inputPlugin=nullptr)
DicomModifyListgetInputPlugin () const
 Returns the optional plugin to be called by applyModififcations.
Public Member Functions inherited from ml::Base
 Base ()
 Constructor.
virtual ~Base ()
 Destructor.
virtual BasedeepCopy () const
bool isOfAllowedType (const std::vector< const RuntimeType * > &types) const
virtual bool isRefCountedBase () const
 Returns whether the instance is derived from RefCountedBase.
virtual std::string detailString () const
virtual bool implementsPersistence (PersistenceInterface) const
virtual std::string persistentState () const
 Returns a string describing the object's internal state.
virtual void setPersistentState (const std::string &state)
virtual void addStateToTree (TreeNode *) const
 Attaches the object state as children of the given parent node.
virtual void readStateFromTree (TreeNode *)
 Reads the object state from the children of the given parent node.
virtual void writeTo (AbstractPersistenceOutputStream *) const
virtual void readFrom (AbstractPersistenceInputStream *, int)
Public Member Functions inherited from ml::FieldAddOnBase
 FieldAddOnBase (FieldContainer &fieldContainerRef)
 Constructor, setting the reference of the FieldContainer managing the fields.
virtual ~FieldAddOnBase ()
 Destructor.
FieldContainergetFieldContainer ()
 Returns the referenced container.
const FieldContainergetFieldContainer () const
 Returns the referenced container.
std::vector< Field * > & getFields ()
 Return modification access to the list of managed fields, use at own risk!
const std::vector< Field * > & getFields () const
 Return constant access to the list of managed fields!
virtual FieldChangeState getMergedFieldChangeState (FieldChangeState state1, FieldChangeState state2) const
 Returns a FieldChangeState which best represents a merge of the two given states.
virtual bool hasField (Field *field) const
 Returns true if the passed fieldPtr is in _fieldPointers, otherwise false.

Public Attributes

DicomValueComboBoxSelectorTagInterface imageTypeValue1AddOn
 Manager and access interface to fields related to first value of image type.
DicomValueComboBoxSelectorTagInterface imageTypeValue2AddOn
 Manager and access interface to fields related to second value of image type.
DicomValueComboBoxSelectorTagInterface imageTypeValue3AddOn
 Manager and access interface to fields related to third value of image type.
DicomValueComboBoxSelectorTagInterface imageTypeValue4AddOn
 Manager and access interface to fields related to fourth value of image type.

Protected Attributes

const IODMode _iodMode
 Selects the configuration for the internal fields and possible values.
bool _forbidMixed
 If true then mixed frame types are not allowed.
const bool _allowEmptyValue3
 If true then third value is allowed to be empty.
const bool _allowEmptyValue4
 If true then fourth value is allowed to be empty.

Additional Inherited Members

Static Public Member Functions inherited from ml::DicomModifyFieldAddOnBase
static bool isIn (const std::string &str, const char *const *values, size_t numValues)
 Static helper function which checks whether str is part of the given list of values which has numValues entries.
Protected Member Functions inherited from ml::FieldAddOnBase
void _addFieldPointer (Field *field)

Detailed Description

Manages the module field interface according to the Image Type tag from DICOM Enhanced MR Image Modules C.8.13.1.

Definition at line 22 of file mlDicomImageTypeTagInterface.h.

Member Enumeration Documentation

◆ IODMode

Defined the mode how the up to four values are configured and filled with values on construction time.

Enumerator
ImageTypeforLegacyConvertedEnhancedMR 

Configure for Enhanced LegacyConverted MR.

Definition at line 27 of file mlDicomImageTypeTagInterface.h.

Constructor & Destructor Documentation

◆ DicomImageTypeTagInterface()

ml::DicomImageTypeTagInterface::DicomImageTypeTagInterface ( Module & modRef,
const IODMode iodMode,
bool forbidMixed,
const bool allowEmptyValue3 = false,
const bool allowEmptyValue4 = false )

Constructor, setting the reference of the module modRef for which the fields shall be managed; iodMode defines for which IOD the AddOn shall be configured; if forbidMixed is true then the class will handle MIXED values for first and last value as error.

Member Function Documentation

◆ _addImageTypeSpecificTags()

void ml::DicomImageTypeTagInterface::_addImageTypeSpecificTags ( DCMTree::TreePtr dcmTree)

Add tags of the Image Type tag from Enhanced MR Image Module, C.8.13.1.

◆ addFields()

void ml::DicomImageTypeTagInterface::addFields ( )
overridevirtual

Add fields to field container of module.

Implements ml::FieldAddOnBase.

◆ applyModifications()

std::string ml::DicomImageTypeTagInterface::applyModifications ( DCMTree::TreePtr dcmTree,
const FieldContainer * treeInfos = nullptr )
overridevirtual

See DicomModifyFieldAddOnBase::applyModifications() for documentation; adds field values as tags to dcmTree.

Reimplemented from ml::DicomModifyList.

◆ checkConsistency()

std::string ml::DicomImageTypeTagInterface::checkConsistency ( ) const
overridevirtual

Checks for invalid parameters; return textual description on error, or empty string on success; requires that setInputPagedImage was called with a valid image before for successful proper operation.

Reimplemented from ml::DicomModifyFieldAddOnBase.

◆ getAsTagVectorToAdd()

void ml::DicomImageTypeTagInterface::getAsTagVectorToAdd ( std::vector< DCMTree::TagPtr > & tagVector,
DCMTree::RawTagId idOfTagToAdd )

For the current state get a vector with set tags which easily can be added to a DCMTree.

◆ getForbidMixed()

bool ml::DicomImageTypeTagInterface::getForbidMixed ( ) const

Allow access to _forbidMixed flag.

◆ handleFieldActivationChanges()

void ml::DicomImageTypeTagInterface::handleFieldActivationChanges ( )
overridevirtual

Handle class changes according to Module::activateAttachments.

Reimplemented from ml::FieldAddOnBase.

◆ handleFieldChanges()

FieldAddOnBase::FieldChangeState ml::DicomImageTypeTagInterface::handleFieldChanges ( Field * field)
overridevirtual

Handle field notifications according to Module::activateAttachments with a return of field change state.

Reimplemented from ml::FieldAddOnBase.

◆ inheritValues()

void ml::DicomImageTypeTagInterface::inheritValues ( DCMTree::Const_TreePtr dcmTree)
overridevirtual

Implements the copy of tag values from the given dcmTree to the fields.

Reimplemented from ml::DicomModifyFieldAddOnBase.

◆ setForbidMixed()

void ml::DicomImageTypeTagInterface::setForbidMixed ( bool forbidMixed)

Set _forbidMixed flag.

Member Data Documentation

◆ _allowEmptyValue3

const bool ml::DicomImageTypeTagInterface::_allowEmptyValue3
protected

If true then third value is allowed to be empty.

Definition at line 97 of file mlDicomImageTypeTagInterface.h.

◆ _allowEmptyValue4

const bool ml::DicomImageTypeTagInterface::_allowEmptyValue4
protected

If true then fourth value is allowed to be empty.

Definition at line 100 of file mlDicomImageTypeTagInterface.h.

◆ _forbidMixed

bool ml::DicomImageTypeTagInterface::_forbidMixed
protected

If true then mixed frame types are not allowed.

Definition at line 94 of file mlDicomImageTypeTagInterface.h.

◆ _iodMode

const IODMode ml::DicomImageTypeTagInterface::_iodMode
protected

Selects the configuration for the internal fields and possible values.

Definition at line 91 of file mlDicomImageTypeTagInterface.h.

◆ imageTypeValue1AddOn

DicomValueComboBoxSelectorTagInterface ml::DicomImageTypeTagInterface::imageTypeValue1AddOn

Manager and access interface to fields related to first value of image type.

Definition at line 71 of file mlDicomImageTypeTagInterface.h.

◆ imageTypeValue2AddOn

DicomValueComboBoxSelectorTagInterface ml::DicomImageTypeTagInterface::imageTypeValue2AddOn

Manager and access interface to fields related to second value of image type.

Definition at line 74 of file mlDicomImageTypeTagInterface.h.

◆ imageTypeValue3AddOn

DicomValueComboBoxSelectorTagInterface ml::DicomImageTypeTagInterface::imageTypeValue3AddOn

Manager and access interface to fields related to third value of image type.

Definition at line 77 of file mlDicomImageTypeTagInterface.h.

◆ imageTypeValue4AddOn

DicomValueComboBoxSelectorTagInterface ml::DicomImageTypeTagInterface::imageTypeValue4AddOn

Manager and access interface to fields related to fourth value of image type.

Definition at line 80 of file mlDicomImageTypeTagInterface.h.


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