MeVisLab Toolbox Reference
mlDicomImageDescriptionMacroTagInterface.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 
34 
36  void addFields() override;
37 
39  virtual void setInputImage(PagedImage *inImg);
40 
43 
46 
49 
51  void inheritValues(DCMTree::Const_TreePtr dcmTree) override;
52 
54  void getAsTagVectorToAdd(std::vector<DCMTree::TagPtr> &tagVector);
55 
58  std::string applyModifications(DCMTree::TreePtr dcmTree,
59  const FieldContainer *treeInfos=nullptr) override;
60 
63 
67  std::string checkConsistency() const override;
68 
71 
74 
77 
78 protected:
79 
82 
85 };
86 
87 ML_END_NAMESPACE
Project global and OS specific declarations.
#define MLDICOMTAGINTERFACES_EXPORT
DLL export macro definition.
Manages the module field interface similar to the Image Description Macro C.8.16.2.
DicomValueComboBoxSelectorTagInterface volumetricPropertiesAddOn
Manages field and controls for the Volumetric Properties (0008,9206) tag.
void handleFieldActivationChanges() override
Handle class changes according to Module::activateAttachments.
void inheritValues(DCMTree::Const_TreePtr dcmTree) override
Implements the copy of tag values from the given dcmTree to the fields.
PagedImage * _inImg
Can be set be owner to provide more information on field inheritance.
virtual void setInputImage(PagedImage *inImg)
Optionally provide a pointer to a PagedImage to provide information for better automatic value setup.
virtual PagedImage * getInputImage()
Optionally provide a pointer to a PagedImage to provide information for better automatic value setup.
DicomValueComboBoxSelectorTagInterface pixelRepresentationAddOn
Manages field and controls for the Pixel Presentation (0008,9205) tag.
DicomValueComboBoxSelectorTagInterface volumeBasedCalculationTechniqueAddOn
Manages field and controls for the VolumeBasedCalculationTechnique (0008,9207) tag.
const IODMode _iodMode
Selects the configuration for the internal fields and possible values.
void addFields() override
Add fields to field container of module.
std::string checkConsistency() const override
Checks for invalid parameters; return textual description on error, or empty string on success; requi...
void getAsTagVectorToAdd(std::vector< DCMTree::TagPtr > &tagVector)
For the current state get a vector with set tags which easily can be added to a DCMTree.
void _addMacroSpecificTags(DCMTree::TreePtr dcmTree)
Add tags similar to the Image Description Macro, C.8.16.2.
std::string applyModifications(DCMTree::TreePtr dcmTree, const FieldContainer *treeInfos=nullptr) override
See DicomModifyFieldAddOnBase::applyModifications() for documentation; adds field values as tags to d...
IODMode
Defined the mode how the up to four values are configured and filled with values on construction time...
DicomImageDescriptionTagInterface(Module &modRef, IODMode iodMode)
Constructor, setting the reference of the module for which the fields shall be managed; iodMode defin...
FieldAddOnBase::FieldChangeState handleFieldChanges(Field *field) override
Handle field notifications according to Module::activateAttachments with a return of field change sta...
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
Class which represents an image, which manages properties of an image and image data which is located...
Definition: mlPagedImage.h:70
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