MeVisLab Toolbox Reference
|
Manages the module field interface according to DICOM General Series, C.7.3.1. More...
#include <mlDicomGeneralSeriesModuleTagInterface.h>
Public Member Functions | |
DicomGeneralSeriesModuleTagInterface (Module &modRef, bool useEnhancedSeriesNumber=false, const std::string &modality="", bool forceSeriesInstanceUIDAsType1=false) | |
Constructor, setting the reference of the module for which the fields shall be managed. More... | |
void | addFields () override |
Add fields to field container of module. More... | |
void | inheritValues (DCMTree::Const_TreePtr dcmTree) override |
Implements the copy of tag values from the given dcmTree to the fields. More... | |
std::string | applyModifications (DCMTree::TreePtr dcmTree, const FieldContainer *treeInfos=nullptr) override |
See DicomModifyFieldAddOnBase::applyModifications() for documentation. More... | |
FieldAddOnBase::FieldChangeState | handleFieldChanges (Field *field) override |
Handle field notifications. More... | |
std::string | checkConsistency () const override |
Checks for invalid parameters; return textual description on error, or empty string on success. More... | |
![]() | |
DicomModifyFieldAddOnBase (FieldContainer &fieldContainerRef, size_t numInstances=1, bool createInputModifyTagsPluginBaseConnectorField=false, bool createOutputModifyTagsPluginBaseConnectorField=false) | |
Constructor, setting the reference of the FieldContainer managing the fields, the number of field instances to create and optionally input and output fields to create modification pipelines. More... | |
~DicomModifyFieldAddOnBase () override | |
Destructor resetting connector fields if they exist. More... | |
size_t | getNumInstances () const |
Returns the number of instances to be created by derived fields. More... | |
void | handleFieldActivationChanges () override |
Handle class changes according to Module::activateAttachments. More... | |
BaseField * | getOutputModifierListFld () const |
Provide access to output base field if it was created. More... | |
BaseField * | getInputModifierListFld () const |
Provide access to input base connector field if it was created. More... | |
![]() | |
DicomModifyList () | |
Constructor creating an empty list of tag modifiers and setting the optional input plugin with a concatenated DicomModifyList. More... | |
~DicomModifyList () override | |
Destructor also destroying all of its stored Modifiers. More... | |
void | addModifier (DicomModifyBase *modifier, bool atEnd=true) |
Add an object derived from DicomModifyBase which then will be owned (and on destruction deleted) by this. More... | |
void | clear () |
Makes modifier array empty and deletes all of them. More... | |
std::vector< DicomModifyBase * > & | getModifierList () |
Get direct access to internal list to allow callers direct manipulations which, however, must obey the restriction that ownership belongs to *this, i.e. More... | |
const std::vector< DicomModifyBase * > & | getModifierList () const |
Same as getModifierList() only for constant access. More... | |
void | setInputPlugin (DicomModifyList *inputPlugin=nullptr) |
Sets an optional plugin to be called by applyModififcations or resets it to nullptr; the input is called after the objects in _modfiers list. More... | |
DicomModifyList * | getInputPlugin () const |
Returns the optional plugin to be called by applyModififcations. More... | |
![]() | |
Base () | |
Constructor. More... | |
virtual | ~Base () |
Destructor. More... | |
virtual Base * | deepCopy () const |
Creates a deep copy of the given object. More... | |
bool | isOfAllowedType (const std::vector< const RuntimeType * > &types) const |
Checks whether this object's type is equal to or derived from one of the types given in the argument. More... | |
virtual bool | isRefCountedBase () const |
Returns whether the instance is derived from RefCountedBase. More... | |
virtual std::string | detailString () const |
Returns a string describing this object. More... | |
virtual bool | implementsPersistence (PersistenceInterface) const |
Override this method to declare which persistence interfaces are implemented by your derived class. More... | |
virtual std::string | persistentState () const |
Returns a string describing the object's internal state. More... | |
virtual void | setPersistentState (const std::string &state) |
Restores the object's internal state from a string that had been previously generated using persistentState(). More... | |
virtual void | addStateToTree (TreeNode *) const |
Attaches the object state as children of the given parent node. More... | |
virtual void | readStateFromTree (TreeNode *) |
Reads the object state from the children of the given parent node. More... | |
virtual void | writeTo (AbstractPersistenceOutputStream *) const |
Writes the objects state to the data stream object. More... | |
virtual void | readFrom (AbstractPersistenceInputStream *, int) |
Reads the objects state from the data stream object. More... | |
![]() | |
FieldAddOnBase (FieldContainer &fieldContainerRef) | |
Constructor, setting the reference of the FieldContainer managing the fields. More... | |
virtual | ~FieldAddOnBase () |
Destructor. More... | |
FieldContainer & | getFieldContainer () |
Returns the referenced container. More... | |
const FieldContainer & | getFieldContainer () const |
Returns the referenced container. More... | |
std::vector< Field * > & | getFields () |
Return modification access to the list of managed fields, use at own risk! More... | |
const std::vector< Field * > & | getFields () const |
Return constant access to the list of managed fields! More... | |
virtual FieldChangeState | getMergedFieldChangeState (FieldChangeState state1, FieldChangeState state2) const |
Returns a FieldChangeState which best represents a merge of the two given states. More... | |
virtual bool | hasField (Field *field) const |
Returns true if the passed fieldPtr is in _fieldPointers, otherwise false. More... | |
Public Attributes | |
DicomValueInheritAndCreateTagInterface | _seriesInstanceUIDAddOn |
Fields. More... | |
StringField * | _seriesNumberFld |
Content of the corresponding DICOM tag definition. More... | |
BoolField * | _inheritSeriesNumberFld |
If true then the seriesNumber field is overwritten with inherited states, otherwise not. More... | |
EnumField * | _lateralityFld |
Laterality tag (0020,0060), type 2C. More... | |
BoolField * | _useEmptyLateralityTagIfNotFoundOnInheritanceFld |
If true then WriteEmptyLateralityTag is selected on inheritance even if no one laterality tag was found in the input; otherwise DoNotWriteLateralityTag is selected. More... | |
EnumField * | _lateralityChecksFld |
Checking for valid combinations of Laterality and BodyPartExamined values is difficult and still incomplete, and there are still unclear circumstances how to do that correctly in all cases. More... | |
StringField * | _seriesDescriptionFld |
Describes the series for which this DICOM file is created. More... | |
DicomCopyTagSetInterface | _otherGeneralSeriesTags |
All other General Series tags not available in the interface, allow public access. More... | |
Static Public Attributes | |
static const char *const | LateralityStringValues [NumLateralityEnumerators] |
String representations for the _lateralityFld enum. More... | |
static const char *const | LateralityChecksStringValues [NumLateralityChecksEnumerators] |
String representations for the LateralityChecksValues enum. More... | |
static const char *const | BodyPartExaminedStringValues [NumBodyPartExaminedValues] |
String representations for the _bodyPartExaminedValuesFld. More... | |
static const char *const | UnpairedBodyPartExaminedStringValues [NumUnpairedBodyPartExaminedValues] |
String representations for the _unpairedBodyPartExaminedValuesFld. More... | |
Protected Attributes | |
BoolField * | _writeBodyPartExaminedFld |
Enables/disabled whether bodyPartExamined shall be written or not. More... | |
StringField * | _bodyPartExaminedFld |
Value of possibly inherited BodyPartExamined tag. More... | |
StringField * | _bodyPartExaminedValuesFld |
Available values for _bodyPartExaminedFld. More... | |
const bool | _useEnhancedSeriesNumber |
If true then Series Number will be checked to be non-empty. More... | |
const std::string | _modality |
If not empty then the content will be set as Modality tag, otherwise ignored. More... | |
Additional Inherited Members | |
![]() | |
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. More... | |
![]() | |
void | _addFieldPointer (Field *field) |
Helper routine to add a Field pointer to _fieldPointers, empty pointers and pointers added more than once will be handled fatally. More... | |
Manages the module field interface according to DICOM General Series, C.7.3.1.
Definition at line 23 of file mlDicomGeneralSeriesModuleTagInterface.h.
anonymous enum |
Number of available laterality enumerators.
Enumerator | |
---|---|
NumLateralityEnumerators |
Definition at line 79 of file mlDicomGeneralSeriesModuleTagInterface.h.
anonymous enum |
Number of available laterality checks enumerators.
Enumerator | |
---|---|
NumLateralityChecksEnumerators |
Definition at line 100 of file mlDicomGeneralSeriesModuleTagInterface.h.
anonymous enum |
Number of available BodyPartExaminedValues.
Enumerator | |
---|---|
NumBodyPartExaminedValues |
Definition at line 136 of file mlDicomGeneralSeriesModuleTagInterface.h.
anonymous enum |
Number of available UnpairedBodyPartExaminedValues.
Enumerator | |
---|---|
NumUnpairedBodyPartExaminedValues |
Definition at line 142 of file mlDicomGeneralSeriesModuleTagInterface.h.
Available values for BodyPartExaminedValues.
Definition at line 114 of file mlDicomGeneralSeriesModuleTagInterface.h.
Enumerator for modes of laterality checks tag.
Enumerator | |
---|---|
AsError | Handle a possible problem as error. |
AsWarning | Log a possible problem as console warning. |
Ignore | Ignore any possible problem. |
Definition at line 93 of file mlDicomGeneralSeriesModuleTagInterface.h.
Enumerator for the laterality tag.
Enumerator | |
---|---|
DoNotWriteLateralityTag | Do not write the tag at all. |
WriteEmptyLateralityTag | Write the tag with empty value. |
Left | Write the tag with value "L". |
Right | Write the tag with value "R". |
Definition at line 71 of file mlDicomGeneralSeriesModuleTagInterface.h.
ml::DicomGeneralSeriesModuleTagInterface::DicomGeneralSeriesModuleTagInterface | ( | Module & | modRef, |
bool | useEnhancedSeriesNumber = false , |
||
const std::string & | modality = "" , |
||
bool | forceSeriesInstanceUIDAsType1 = false |
||
) |
Constructor, setting the reference of the module for which the fields shall be managed.
modRef | The reference to the ML Module instance in which this FieldAdddOn will be inserted. |
useEnhancedSeriesNumber | If true then the series number content will be handled as Type 1, if false it will be handled as Type 2. |
modality | Ignored if empty; if not empty then the Modality tag is added with the given string as value. |
forceSeriesInstanceUIDAsType1 | If true then SeriesInstanceUID is handled as Type 1 (mandatory and not empty) tag, otherwise it is allowed to be empty (only for backward compatibility and not recommended). |
|
overridevirtual |
Add fields to field container of module.
Reimplemented from ml::DicomModifyFieldAddOnBase.
|
overridevirtual |
See DicomModifyFieldAddOnBase::applyModifications() for documentation.
Reimplemented from ml::DicomModifyFieldAddOnBase.
|
overridevirtual |
Checks for invalid parameters; return textual description on error, or empty string on success.
Reimplemented from ml::DicomModifyFieldAddOnBase.
|
overridevirtual |
Handle field notifications.
Reimplemented from ml::DicomModifyFieldAddOnBase.
|
overridevirtual |
Implements the copy of tag values from the given dcmTree to the fields.
Reimplemented from ml::DicomModifyFieldAddOnBase.
|
protected |
Value of possibly inherited BodyPartExamined tag.
Definition at line 152 of file mlDicomGeneralSeriesModuleTagInterface.h.
|
protected |
Available values for _bodyPartExaminedFld.
Definition at line 155 of file mlDicomGeneralSeriesModuleTagInterface.h.
BoolField* ml::DicomGeneralSeriesModuleTagInterface::_inheritSeriesNumberFld |
If true then the seriesNumber field is overwritten with inherited states, otherwise not.
Definition at line 68 of file mlDicomGeneralSeriesModuleTagInterface.h.
EnumField* ml::DicomGeneralSeriesModuleTagInterface::_lateralityChecksFld |
Checking for valid combinations of Laterality and BodyPartExamined values is difficult and still incomplete, and there are still unclear circumstances how to do that correctly in all cases.
Definition at line 108 of file mlDicomGeneralSeriesModuleTagInterface.h.
EnumField* ml::DicomGeneralSeriesModuleTagInterface::_lateralityFld |
Laterality tag (0020,0060), type 2C.
Definition at line 85 of file mlDicomGeneralSeriesModuleTagInterface.h.
|
protected |
If not empty then the content will be set as Modality tag, otherwise ignored.
Definition at line 161 of file mlDicomGeneralSeriesModuleTagInterface.h.
DicomCopyTagSetInterface ml::DicomGeneralSeriesModuleTagInterface::_otherGeneralSeriesTags |
All other General Series tags not available in the interface, allow public access.
Definition at line 165 of file mlDicomGeneralSeriesModuleTagInterface.h.
StringField* ml::DicomGeneralSeriesModuleTagInterface::_seriesDescriptionFld |
Describes the series for which this DICOM file is created.
Definition at line 111 of file mlDicomGeneralSeriesModuleTagInterface.h.
DicomValueInheritAndCreateTagInterface ml::DicomGeneralSeriesModuleTagInterface::_seriesInstanceUIDAddOn |
Fields.
FieldAddOn managing field value, create mode, inherit modes, create button etc. for the SeriesInstanceUID.
Definition at line 63 of file mlDicomGeneralSeriesModuleTagInterface.h.
StringField* ml::DicomGeneralSeriesModuleTagInterface::_seriesNumberFld |
Content of the corresponding DICOM tag definition.
Definition at line 66 of file mlDicomGeneralSeriesModuleTagInterface.h.
BoolField* ml::DicomGeneralSeriesModuleTagInterface::_useEmptyLateralityTagIfNotFoundOnInheritanceFld |
If true then WriteEmptyLateralityTag is selected on inheritance even if no one laterality tag was found in the input; otherwise DoNotWriteLateralityTag is selected.
Definition at line 90 of file mlDicomGeneralSeriesModuleTagInterface.h.
|
protected |
If true then Series Number will be checked to be non-empty.
Definition at line 158 of file mlDicomGeneralSeriesModuleTagInterface.h.
|
protected |
Enables/disabled whether bodyPartExamined shall be written or not.
Definition at line 149 of file mlDicomGeneralSeriesModuleTagInterface.h.
|
static |
String representations for the _bodyPartExaminedValuesFld.
Definition at line 139 of file mlDicomGeneralSeriesModuleTagInterface.h.
|
static |
String representations for the LateralityChecksValues enum.
Definition at line 103 of file mlDicomGeneralSeriesModuleTagInterface.h.
|
static |
String representations for the _lateralityFld enum.
Definition at line 82 of file mlDicomGeneralSeriesModuleTagInterface.h.
|
static |
String representations for the _unpairedBodyPartExaminedValuesFld.
Definition at line 145 of file mlDicomGeneralSeriesModuleTagInterface.h.