MeVisLab Toolbox Reference
mlDicomImageTypeTagInterface.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  enum IODMode {
28  ImageTypeforLegacyConvertedEnhancedMR = 0
29  };
30 
36  const IODMode iodMode,
37  bool forbidMixed,
38  const bool allowEmptyValue3=false,
39  const bool allowEmptyValue4=false);
40 
42  void addFields() override;
43 
46 
49 
51  void inheritValues(DCMTree::Const_TreePtr dcmTree) override;
52 
54  void getAsTagVectorToAdd(std::vector<DCMTree::TagPtr> &tagVector,
55  DCMTree::RawTagId idOfTagToAdd);
56 
59  std::string applyModifications(DCMTree::TreePtr dcmTree,
60  const FieldContainer *treeInfos=nullptr) override;
61 
64 
68  std::string checkConsistency() const override;
69 
72 
75 
78 
81 
83  bool getForbidMixed() const;
84 
86  void setForbidMixed(bool forbidMixed);
87 
88  protected:
89 
92 
95 
97  const bool _allowEmptyValue3;
98 
100  const bool _allowEmptyValue4;
101 };
102 
103 ML_END_NAMESPACE
Project global and OS specific declarations.
#define MLDICOMTAGINTERFACES_EXPORT
DLL export macro definition.
Manages the module field interface according to the Image Type tag from DICOM Enhanced MR Image Modul...
bool _forbidMixed
If true then mixed frame types are not allowed.
IODMode
Defined the mode how the up to four values are configured and filled with values on construction time...
void handleFieldActivationChanges() override
Handle class changes according to Module::activateAttachments.
void addFields() override
Add fields to field container of module.
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::activateAttachments with a return of field change sta...
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; iodMod...
const bool _allowEmptyValue4
If true then fourth value is allowed to be empty.
DicomValueComboBoxSelectorTagInterface imageTypeValue3AddOn
Manager and access interface to fields related to third value of image type.
const bool _allowEmptyValue3
If true then third value is allowed to be empty.
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
See DicomModifyFieldAddOnBase::applyModifications() for documentation; adds field values as tags to d...
std::string checkConsistency() const override
Checks for invalid parameters; return textual description on error, or empty string on success; requi...
void _addImageTypeSpecificTags(DCMTree::TreePtr dcmTree)
Add tags of the Image Type tag from Enhanced MR Image Module, C.8.13.1.
DicomValueComboBoxSelectorTagInterface imageTypeValue1AddOn
Manager and access interface to fields related to first value of image type.
void setForbidMixed(bool forbidMixed)
Set _forbidMixed flag.
bool getForbidMixed() const
Allow access to _forbidMixed flag.
const IODMode _iodMode
Selects the configuration for the internal fields and possible values.
DicomValueComboBoxSelectorTagInterface imageTypeValue4AddOn
Manager and access interface to fields related to fourth value of image type.
DicomValueComboBoxSelectorTagInterface imageTypeValue2AddOn
Manager and access interface to fields related to second value of image type.
The class DicomModifyFieldAddOnBase is dedicated to manage fields for ML modules and instances derive...
A complex field interface managing a value selector for combo boxes with a number of predefined value...
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
Header file of the DicomModifyFieldAddOnBase class dedicated to manage fields for ML modules and inst...
Header file for a field interface managing a value selector for combo boxes.
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
unsigned int RawTagId
Definition: DCMTree_Lib.h:147