MeVisLab Toolbox Reference
mlDicomCommonInstanceReferenceModuleTagInterface.h
Go to the documentation of this file.
1 // Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2 // **InsertLicense** code
3 //----------------------------------------------------------------------------------
5 
10 //----------------------------------------------------------------------------------
11 #pragma once
12 
16 
17 ML_START_NAMESPACE
18 
19 //----------------------------------------------------------------------------------
21 //----------------------------------------------------------------------------------
23 {
24 public:
27 
29  void addFields() override;
30 
33 
35  void inheritValues(DCMTree::Const_TreePtr dcmTree) override;
36 
39  std::string applyModifications(DCMTree::TreePtr dcmTree,
40  const FieldContainer *treeInfos=nullptr) override;
41 
45  std::string checkConsistency() const override;
46 
49 
52  void setActive(bool active);
53 
55  bool isActive() const;
56 
60  void setStudyInstanceUIDFieldPointer(StringField *studyInstanceUIDFldPointer);
61 
64 
67 
68 
69 protected:
71 
75 
80 
84 
88 
92 
93 
96 
101 
104  bool _isActive;
105 };
106 
107 ML_END_NAMESPACE
Project global and OS specific declarations.
#define MLDICOMTAGINTERFACES_EXPORT
DLL export macro definition.
Field to encapsulate a boolean value.
Definition: mlFields.h:62
Manages the module field interface according to Common Instance Reference Module in DICOM Part 3.
DicomSeriesAndInstanceReferenceMacroTagInterface _referencedSeriesSequenceFieldAddOn
Used to manage the Referenced Series Sequence with SeriesInstance UID and Referenced Instance Sequenc...
void addFields() override
Add fields to field container of module.
virtual void setMostRecentlyAvailableDCMTree(DCMTree::Const_TreePtr dcmTree)
Provides a dcmTree to inherit tag values outside of inheritValues calls, for example on studyInstance...
DicomCommonInstanceReferenceModuleTagInterface(Module &modRef)
Constructor, setting the reference of the module for which the fields shall be managed.
void setStudyInstanceUIDFieldPointer(StringField *studyInstanceUIDFldPointer)
Stores the StudyInstanceUID field created somewhere else; in handle field changes it can be used whet...
DCMTree::Const_TreePtr _mostRecentlyAvailableDCMTree
Stores the most recently available dcmTree either directly set or from recent inheritance operation; ...
std::string applyModifications(DCMTree::TreePtr dcmTree, const FieldContainer *treeInfos=nullptr) override
See DicomModifyFieldAddOnBase::applyModifications() for documentation; adds field values as tags to d...
void inheritValues(DCMTree::Const_TreePtr dcmTree) override
Implements the copy of tag values from the given dcmTree to the fields.
FieldAddOnBase::FieldChangeState handleFieldChanges(Field *field) override
Handle field notifications according to Module::handleNotification with a return of field change stat...
DicomSeriesAndInstanceReferenceMacroTagInterface _referencedStudySeriesSequenceFieldAddOn
FieldAddOn managing the Series And instance Reference Macro in first entry of Studies Containing Othe...
BoolField & getMakeGUIInsensitiveFld()
Return reference to _makeGUIInsensitiveFld to allow modules hosting this add to change sensitivity.
NotifyField * _updateUIDInheritanceFld
If the _mainStudyInstanceUID has been changed then a manual update of the inherited UIDs may be requi...
void setActive(bool active)
Sets flag which (de)activates this FieldAddOn; if deactivated: checkConsistency always returns an emp...
StringField * _externalStudyInstanceUIDFldPointer
Stores the most recently set pointer to a StudyInstanceUID: This field is NOT created by the FieldAdd...
bool _isActive
Sets flag which (de)activates this FieldAddOn; if deactivated: checkConsistency always returns an emp...
bool isActive() const
Returns true if FieldAddOn is active,,otherwise false.
StringField * getStudyInstanceUIDFieldPointer() const
Returns the pointer set with setStudyInstanceUIDFieldPointer or nullptr if still not set....
std::string checkConsistency() const override
Checks for invalid parameters; return textual description on error, or empty string on success; requi...
BoolField * _autoUpdateOnStudyInstanceUIDChangesFld
Automatically update tags of CommonInstanceReferenceIODModule on changes of StudyInstanceUID (which u...
The class DicomModifyFieldAddOnBase is dedicated to manage fields for ML modules and instances derive...
Manages the module field interface according to Series And Instance Reference Macro in DICOM Part 3.
FieldChangeState
Describes the type of a field changes detected in handleFieldChanges(Field *field).
Defines the class FieldContainer to encapsulate a vector of fields for (see class Field).
Base class for all fields used in the ML.
Definition: mlField.h:73
Base class for an image processing module of the ML.
Definition: mlModule.h:156
Field without value for notifications.
Definition: mlFields.h:1049
Field to encapsulate a string value.
Definition: mlFields.h:1000
Header file of the DicomModifyFieldAddOnBase class dedicated to manage fields for ML modules and inst...
Header file for the tag interface which manages the Series And Instance Reference Macro in DICOM Part...
boost::shared_ptr< const Tree > Const_TreePtr
Definition: DCMTree_Lib.h:73
boost::shared_ptr< Tree > TreePtr
shared pointer to a DCMTree::Tree
Definition: DCMTree_Lib.h:70