MeVisLab Toolbox Reference
mlDicomModifyPrivateAddFieldAddOn.h
Go to the documentation of this file.
1 // Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2 // **InsertLicense** code
3 //----------------------------------------------------------------------------------
7 
12 //----------------------------------------------------------------------------------
13 #pragma once
14 
15 #include "MLDicomModifySystem.h"
17 
18 ML_START_NAMESPACE
19 
20 //----------------------------------------------------------------------------------
23 //----------------------------------------------------------------------------------
25 {
26 public:
28  inline DicomModifyPrivateAddFieldAddOn(FieldContainer &fieldContainerRef,
29  size_t numInstances=1,
30  size_t numPrivateTags=1):
31  DicomModifyFieldAddOnBase(fieldContainerRef, numInstances),
32  _numPrivateTagFields(numPrivateTags){};
33 
35  void addFields() override;
36 
39 
42 
43 private:
44 
46  const size_t _numPrivateTagFields;
47 
49 
51  std::vector<StringField *> _addPrivateCreatorFld;
52 
55  std::vector<IntField *> _addPrivateGroupIdFld;
56 
60  std::vector<IntField *> _addPrivateElementGroupIdFld;
61 
64  std::vector< std::vector<IntField *> > _addPrivateLowerByteOfElementIdFld;
65 
67  std::vector< std::vector<BoolField *> > _addPrivateSplitAtBackSlashesFld;
68 
70  std::vector< std::vector<EnumField *> > _addPrivateTagVRFld;
71 
73  std::vector< std::vector<StringField *> > _addPrivateModificationValueFld;
74 
76  std::vector< std::vector<EnumField *> > _addPrivateModificationModeFld;
77 
79  std::vector< std::vector<BoolField *> > _addPrivateIsValidIdFld;
80 
82 
87 };
88 
89 ML_END_NAMESPACE
Project global and OS specific declarations.
#define ML_DICOM_MODIFY_EXPORT
DLL export macro definition.
The class DicomModifyFieldAddOnBase is dedicated to manage fields for ML modules and instances derive...
DicomModifyFieldAddOnBase class managing fields to represent functionality from DicomModifyPrivate to...
void handleFieldActivationChanges() override
Handle class changes according to Module::activateAttachments.
DicomModifyPrivateAddFieldAddOn(FieldContainer &fieldContainerRef, size_t numInstances=1, size_t numPrivateTags=1)
See DicomModifyFieldAddOnBase::DicomModifyFieldAddOnBase(fieldContainerRef, numInstances).
FieldAddOnBase::FieldChangeState handleFieldChanges(Field *field) override
Handle field notifications.
void addFields() override
Add fields to field container of module.
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
#define ML_ABSTRACT_CLASS_HEADER(className)
Same like ML_ABSTRACT_CLASS_HEADER_EXPORTED with a non existing export symbol.
Header file of the DicomModifyFieldAddOnBase class dedicated to manage fields for ML modules and inst...