MeVisLab Toolbox Reference
mlDicomGeneralEquipmentModuleTagInterface.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 
17 #include <DCMTree_Lib.h>
18 
19 ML_START_NAMESPACE
20 
21 //----------------------------------------------------------------------------------
23 //----------------------------------------------------------------------------------
25 {
26 public:
27 
30  Create = 0,
32  Inherit
34  };
35 
38  bool useAsEnhanced=false,
39  DefaultSetUpMode defaultSetUpMode=Create,
40  const std::string &fieldSuffix="");
41 
43  void addFields() override;
44 
46  void inheritValues(DCMTree::Const_TreePtr dcmTree) override;
47 
50 
52  std::string applyModifications(DCMTree::TreePtr dcmTree,
53  const FieldContainer *treeInfos=nullptr) override;
54 
56  std::string checkConsistency() const override;
57 
60 
63 
66 
69 
72 
75  const bool _useAsEnhanced;
76 
79 };
80 
81 ML_END_NAMESPACE
Project global and OS specific declarations.
#define MLDICOMTAGINTERFACES_EXPORT
DLL export macro definition.
Provides control to copy/inherit a set of tag (values) from an input DCMTree, buffer it,...
Manages the module field interface according to DICOM General Equipment, C.7.5.1.
const bool _useAsEnhanced
If true then all tags are considered as mandatory, otherwise as types 2 or 3; this makes differences ...
DicomValueInheritAndCreateTagInterface softwareVersionsAddOn
As the corresponding DICOM tag definition managed as FieldAddOn.
DefaultSetUpMode
Modes how the default instance is initialized.
void addFields() override
Add fields to field container of module.
DicomValueInheritAndCreateTagInterface manufacturersModelNameAddOn
Manufacturer's model name of the equipment that produced the file; using a FieldAddOn to manage it.
void inheritValues(DCMTree::Const_TreePtr dcmTree) override
Implements the copy of tag values from the given dcmTree to the fields.
std::string applyModifications(DCMTree::TreePtr dcmTree, const FieldContainer *treeInfos=nullptr) override
See DicomModifyFieldAddOnBase::applyModifications() for documentation.
DicomValueInheritAndCreateTagInterface deviceSerialNumberAddOn
As the corresponding DICOM tag definition managed as FieldAddOn.
DicomValueInheritAndCreateTagInterface manufacturerAddOn
Company creating the file; using a FieldAddOn to manage it.
FieldAddOnBase::FieldChangeState handleFieldChanges(Field *field) override
Handle field notifications.
DicomGeneralEquipmentModuleTagInterface(Module &modRef, bool useAsEnhanced=false, DefaultSetUpMode defaultSetUpMode=Create, const std::string &fieldSuffix="")
Constructor, setting the reference of the module for which the fields shall be managed.
DicomCopyTagSetInterface otherGeneralEquipmentTags
All other General Equipment tags not available in the interface.
DefaultSetUpMode _defaultSetUpMode
How to initialize the AddOn on (field) creation time.
std::string checkConsistency() const override
Checks for invalid parameters; return textual description on error, or empty string on success.
The class DicomModifyFieldAddOnBase is dedicated to manage fields for ML modules and instances derive...
FieldAddOn class supporting inheritance and auto creating tag values (for example DICOM UIDs or tag v...
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 for the ML module base class DicomCopyTagSetInterface which provides control to copy/inhe...
Header file of the DicomModifyFieldAddOnBase class dedicated to manage fields for ML modules and inst...
Header file for the FieldAddOn supporting inheritance and auto creating tag values (for example DICOM...
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