MeVisLab Toolbox Reference
|
Manages the module field interface according to Common Instance Reference Module in DICOM Part 3. More...
#include <mlDicomCommonInstanceReferenceModuleTagInterface.h>
Public Member Functions | |
DicomCommonInstanceReferenceModuleTagInterface (Module &modRef) | |
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... | |
FieldAddOnBase::FieldChangeState | handleFieldChanges (Field *field) override |
Handle field notifications according to Module::handleNotification with a return of field change state. 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; adds field values as tags to dcmTree. More... | |
std::string | checkConsistency () const override |
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. More... | |
BoolField & | getMakeGUIInsensitiveFld () |
Return reference to _makeGUIInsensitiveFld to allow modules hosting this add to change sensitivity. More... | |
void | setActive (bool active) |
Sets flag which (de)activates this FieldAddOn; if deactivated: checkConsistency always returns an empty string and applyModifications does not change dcmTree. More... | |
bool | isActive () const |
Returns true if FieldAddOn is active,,otherwise false. More... | |
void | setStudyInstanceUIDFieldPointer (StringField *studyInstanceUIDFldPointer) |
Stores the StudyInstanceUID field created somewhere else; in handle field changes it can be used whether it is changed and the content can be used for updates of the two DicomSeriesAndInstanceReferenceMacroTagInterface FieldAddOns. More... | |
StringField * | getStudyInstanceUIDFieldPointer () const |
Returns the pointer set with setStudyInstanceUIDFieldPointer or nullptr if still not set.. More... | |
virtual void | setMostRecentlyAvailableDCMTree (DCMTree::Const_TreePtr dcmTree) |
Provides a dcmTree to inherit tag values outside of inheritValues calls, for example on studyInstanceUID changes. 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... | |
Protected Attributes | |
BoolField * | _makeCommonInstanceReferenceModuleGUIInsensitiveFld |
Fields. More... | |
BoolField * | _autoUpdateOnStudyInstanceUIDChangesFld |
Automatically update tags of CommonInstanceReferenceIODModule on changes of StudyInstanceUID (which usually is defined in another module). More... | |
NotifyField * | _updateUIDInheritanceFld |
If the _mainStudyInstanceUID has been changed then a manual update of the inherited UIDs may be required which can be triggered with this field. More... | |
DicomSeriesAndInstanceReferenceMacroTagInterface | _referencedSeriesSequenceFieldAddOn |
Used to manage the Referenced Series Sequence with SeriesInstance UID and Referenced Instance Sequence of the Common Instance Reference Module. More... | |
DicomSeriesAndInstanceReferenceMacroTagInterface | _referencedStudySeriesSequenceFieldAddOn |
FieldAddOn managing the Series And instance Reference Macro in first entry of Studies Containing Other Referenced Instances Sequence of the Common Instance Reference Module. More... | |
StringField * | _externalStudyInstanceUIDFldPointer |
Stores the most recently set pointer to a StudyInstanceUID: This field is NOT created by the FieldAddOn! More... | |
DCMTree::Const_TreePtr | _mostRecentlyAvailableDCMTree |
Stores the most recently available dcmTree either directly set or from recent inheritance operation; it is needed for updating information for example when automatically updating/inheriting fields on field changes. More... | |
bool | _isActive |
Sets flag which (de)activates this FieldAddOn; if deactivated: checkConsistency always returns an empty string and applyModifications does not change dcmTree. More... | |
Additional Inherited Members | |
![]() | |
enum | PersistenceInterface { PersistenceByString , PersistenceByTreeNode , PersistenceByStream } |
This enum describes the different persistence interfaces available. More... | |
![]() | |
enum | FieldChangeState { NoChange = 0 , StatusOnlyChange , RecalculationRequired } |
Describes the type of a field changes detected in handleFieldChanges(Field *field). More... | |
![]() | |
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 Common Instance Reference Module in DICOM Part 3.
Definition at line 22 of file mlDicomCommonInstanceReferenceModuleTagInterface.h.
ml::DicomCommonInstanceReferenceModuleTagInterface::DicomCommonInstanceReferenceModuleTagInterface | ( | Module & | modRef | ) |
Constructor, setting the reference of the module for which the fields shall be managed.
|
overridevirtual |
Add fields to field container of module.
Reimplemented from ml::DicomModifyFieldAddOnBase.
|
overridevirtual |
See DicomModifyFieldAddOnBase::applyModifications() for documentation; adds field values as tags to dcmTree.
Reimplemented from ml::DicomModifyFieldAddOnBase.
|
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.
BoolField& ml::DicomCommonInstanceReferenceModuleTagInterface::getMakeGUIInsensitiveFld | ( | ) |
Return reference to _makeGUIInsensitiveFld to allow modules hosting this add to change sensitivity.
StringField* ml::DicomCommonInstanceReferenceModuleTagInterface::getStudyInstanceUIDFieldPointer | ( | ) | const |
Returns the pointer set with setStudyInstanceUIDFieldPointer or nullptr if still not set..
|
overridevirtual |
Handle field notifications according to Module::handleNotification with a return of field change state.
Reimplemented from ml::DicomModifyFieldAddOnBase.
|
overridevirtual |
Implements the copy of tag values from the given dcmTree to the fields.
Reimplemented from ml::DicomModifyFieldAddOnBase.
bool ml::DicomCommonInstanceReferenceModuleTagInterface::isActive | ( | ) | const |
Returns true if FieldAddOn is active,,otherwise false.
void ml::DicomCommonInstanceReferenceModuleTagInterface::setActive | ( | bool | active | ) |
Sets flag which (de)activates this FieldAddOn; if deactivated: checkConsistency always returns an empty string and applyModifications does not change dcmTree.
|
virtual |
Provides a dcmTree to inherit tag values outside of inheritValues calls, for example on studyInstanceUID changes.
void ml::DicomCommonInstanceReferenceModuleTagInterface::setStudyInstanceUIDFieldPointer | ( | StringField * | studyInstanceUIDFldPointer | ) |
Stores the StudyInstanceUID field created somewhere else; in handle field changes it can be used whether it is changed and the content can be used for updates of the two DicomSeriesAndInstanceReferenceMacroTagInterface FieldAddOns.
|
protected |
Automatically update tags of CommonInstanceReferenceIODModule on changes of StudyInstanceUID (which usually is defined in another module).
Thus this flag is only an indicator for the application to update this module on StudyInstanceUIDChanges.
Definition at line 79 of file mlDicomCommonInstanceReferenceModuleTagInterface.h.
|
protected |
Stores the most recently set pointer to a StudyInstanceUID: This field is NOT created by the FieldAddOn!
Definition at line 95 of file mlDicomCommonInstanceReferenceModuleTagInterface.h.
|
protected |
Sets flag which (de)activates this FieldAddOn; if deactivated: checkConsistency always returns an empty string and applyModifications does not change dcmTree.
Definition at line 104 of file mlDicomCommonInstanceReferenceModuleTagInterface.h.
|
protected |
Fields.
Field to disable this module in the GUI for modules hosting this add on and to indicate that it is perhaps temporarily not used; the internal functionality is not affected.
Definition at line 74 of file mlDicomCommonInstanceReferenceModuleTagInterface.h.
|
protected |
Stores the most recently available dcmTree either directly set or from recent inheritance operation; it is needed for updating information for example when automatically updating/inheriting fields on field changes.
Definition at line 100 of file mlDicomCommonInstanceReferenceModuleTagInterface.h.
|
protected |
Used to manage the Referenced Series Sequence with SeriesInstance UID and Referenced Instance Sequence of the Common Instance Reference Module.
Definition at line 87 of file mlDicomCommonInstanceReferenceModuleTagInterface.h.
|
protected |
FieldAddOn managing the Series And instance Reference Macro in first entry of Studies Containing Other Referenced Instances Sequence of the Common Instance Reference Module.
Definition at line 91 of file mlDicomCommonInstanceReferenceModuleTagInterface.h.
|
protected |
If the _mainStudyInstanceUID has been changed then a manual update of the inherited UIDs may be required which can be triggered with this field.
Definition at line 83 of file mlDicomCommonInstanceReferenceModuleTagInterface.h.