MeVisLab Toolbox Reference
|
Manages a module field interface to edit a list of CID value from a given table. More...
#include <mlDicomCIDEditTagInterface.h>
Public Member Functions | |
DicomCIDEditTagInterface (Module &modRef, const char *const CIDGroupTable[][CIDGroups::NUM_CID_COLUMNS], size_t CIDGroupTableSize, const std::string &sequenceName, size_t numAllowedEntries, bool zeroEntriesAllowed, const std::string &cidEntryDefault="") | |
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... | |
virtual void | setCIDEntryDefault () |
Initializes _cidEntryFld to the default value as described for constructor parameter cidEntryDefault (which may cause side effects due to the field change). More... | |
void | handleFieldActivationChanges () override |
Handle class changes according to Module::activateAttachments. More... | |
FieldAddOnBase::FieldChangeState | handleFieldChanges (Field *field) override |
Handle field notifications according to Module::activateAttachments 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. More... | |
std::string | checkConsistency () const override |
Checks for invalid parameters; return textual description on error, or empty string on success. 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... | |
ReleaseToolsString::StringVector | getCodeSequence () const |
Returns the sequence of codes which is managed by the editor as string vector; always returns an empty sequence if the FieldAddOn is not active. 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... | |
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 | |
Fields. | |
StringField * | _contextGroupSequenceFld |
The string containing the composition of CID entries separated by "/"; it is the field which typically should be made persistent. More... | |
EnumField * | _cidEntryFld |
Enumerator field selecting one of the entries of the CIDGroupTable. More... | |
NotifyField * | _appendEntryFld |
Appends the selected entry to _contextGroupSequenceFld. More... | |
NotifyField * | _prependEntryFld |
Inserts the selected entry at first position to _contextGroupSequenceFld. More... | |
NotifyField * | _clearFld |
Removes all entries from _contextGroupSequenceFld. 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 a module field interface to edit a list of CID value from a given table.
Definition at line 23 of file mlDicomCIDEditTagInterface.h.
ml::DicomCIDEditTagInterface::DicomCIDEditTagInterface | ( | Module & | modRef, |
const char *const | CIDGroupTable[][CIDGroups::NUM_CID_COLUMNS], | ||
size_t | CIDGroupTableSize, | ||
const std::string & | sequenceName, | ||
size_t | numAllowedEntries, | ||
bool | zeroEntriesAllowed, | ||
const std::string & | cidEntryDefault = "" |
||
) |
Constructor, setting the reference of the module for which the fields shall be managed.
modRef | The module into which the field interface shall be added. |
CIDGroupTable | The Context Identifier Group table (CID group) providing enumerator entries; it is not copied and must permanently exist during instance life-time. |
CIDGroupTableSize | The number of entries in CIDGroupTable. |
sequenceName | The user defined name of the identifier sequence to be edited, for example "CID 7203 Image Derivation", "Image Derivation Identifier List" or so. It is only for logging purposes. |
numAllowedEntries | Defines the maximum number of entries allowed to be composed by the user; checkConsistency() will return a non empty error description otherwise. |
zeroEntriesAllowed | If true, then zero entries are allowed, otherwise the editor checks for at least one entry and checkConsistency() will return a non empty error description if that is not true. |
cidEntryDefault | Ignored if empty or if not found in any CIDGroupTable[X][1], otherwise cidEntryFld will be set to the CID as default; cidEntryDefault must be only and exactly the code value (number) from CIDGroupTable without any descriptive string or any other stuff. For example "113069" for the code meaning "Time To Peak" of "CID 7203 Image Derivation". |
|
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.
ReleaseToolsString::StringVector ml::DicomCIDEditTagInterface::getCodeSequence | ( | ) | const |
Returns the sequence of codes which is managed by the editor as string vector; always returns an empty sequence if the FieldAddOn is not active.
BoolField& ml::DicomCIDEditTagInterface::getMakeGUIInsensitiveFld | ( | ) |
Return reference to _makeGUIInsensitiveFld to allow modules hosting this add to change sensitivity.
|
overridevirtual |
Handle class changes according to Module::activateAttachments.
Reimplemented from ml::DicomModifyFieldAddOnBase.
|
overridevirtual |
Handle field notifications according to Module::activateAttachments 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::DicomCIDEditTagInterface::isActive | ( | ) | const |
Returns true if FieldAddOn is active,,otherwise false.
void ml::DicomCIDEditTagInterface::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 |
Initializes _cidEntryFld to the default value as described for constructor parameter cidEntryDefault (which may cause side effects due to the field change).
|
protected |
Appends the selected entry to _contextGroupSequenceFld.
Definition at line 104 of file mlDicomCIDEditTagInterface.h.
|
protected |
Enumerator field selecting one of the entries of the CIDGroupTable.
Definition at line 101 of file mlDicomCIDEditTagInterface.h.
|
protected |
Removes all entries from _contextGroupSequenceFld.
Definition at line 110 of file mlDicomCIDEditTagInterface.h.
|
protected |
The string containing the composition of CID entries separated by "/"; it is the field
which typically should be made persistent.
Definition at line 98 of file mlDicomCIDEditTagInterface.h.
|
protected |
Inserts the selected entry at first position to _contextGroupSequenceFld.
Definition at line 107 of file mlDicomCIDEditTagInterface.h.