MeVisLab Toolbox Reference
mlDicomModifyModuleFieldAddOnBase.h
Go to the documentation of this file.
1 // Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2 // **InsertLicense** code
3 //----------------------------------------------------------------------------------
9 
14 //----------------------------------------------------------------------------------
15 #ifndef __mlDicomModifyModuleFieldAddOnBase_H
16 #define __mlDicomModifyModuleFieldAddOnBase_H
17 
19 
21 #include <mlModuleIncludes.h>
22 #include <DCMTree_Lib.h>
23 #include <vector>
24 #include <boost/shared_ptr.hpp>
25 
26 ML_START_NAMESPACE
27 
30 {
31 public:
33  const std::string &dicomModuleName,
34  bool createInputModifyTagsPluginBaseConnectorField = false,
35  bool createOutputModifyTagsPluginBaseConnectorField = false);
37  virtual void addFields() override;
39 
40 protected:
41  void _addFieldPointer(Field* field);
42 
44 
45 private:
46  void getDicomTreeFromInputField();
47  void selectAllBoolFields();
48  void deselectAllBoolFields();
49  void clearAllStringFields();
50 
51  std::string _dicomModuleName;
52  NotifyField *_selectAllBoolFieldsField;
53  NotifyField *_deselectAllBoolFieldsField;
54  NotifyField *_inheritValuesField;
55  NotifyField *_clearValuesField;
56  BaseField *_inputDicomTreeField;
57  std::vector<BoolField*> _boolFields;
58  std::vector<StringField*> _stringFields;
59 
61 };
62 
63 typedef boost::shared_ptr<DicomModifyModuleFieldAddOnBase> ModuleFieldAddOnPtr;
64 
65 ML_END_NAMESPACE
66 
67 #endif
Project global and OS specific declarations.
#define MLDICOMMODIFYFIELDADDONS_EXPORT
Field to encapsulate a pointer to an ML base object.
Definition: mlFields.h:1187
The class DicomModifyFieldAddOnBase is dedicated to manage fields for ML modules and instances derive...
void setInputDicomTreeField(BaseField *field)
virtual void addFields() override
Add fields to field container of the FieldAddOn.
virtual FieldAddOnBase::FieldChangeState handleFieldChanges(Field *field) override
Handle field notifications according to Module::handleNotification with a return of field change stat...
DicomModifyModuleFieldAddOnBase(FieldContainer &fieldContainer, const std::string &dicomModuleName, bool createInputModifyTagsPluginBaseConnectorField=false, bool createOutputModifyTagsPluginBaseConnectorField=false)
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
Field without value for notifications.
Definition: mlFields.h:1049
#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...
boost::shared_ptr< const Tree > Const_TreePtr
Definition: DCMTree_Lib.h:73
boost::shared_ptr< DicomModifyModuleFieldAddOnBase > ModuleFieldAddOnPtr