MeVisLab Toolbox Reference
mlMultiFileVolumeListSEGOutput.h
Go to the documentation of this file.
1 // Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2 // **InsertLicense** code
3 //----------------------------------------------------------------------------------
6 
12 
13 //----------------------------------------------------------------------------------
14 #pragma once
15 
16 // Base class of output module, already being a MultiFileVolumeListImageOutput.
18 
19 ML_START_NAMESPACE
20 
21 // Forward to internally used classes.
22 class MultiFileVolume;
23 
24 //----------------------------------------------------------------------------------
27 //----------------------------------------------------------------------------------
29 {
30 public:
32  MultiFileVolumeListSEGOutput(int numInputs=0, int numOutputs=2);
33 
36 
37 protected:
38 
40  void activateAttachments() override;
41 
43  void handleNotification(Field *field) override;
44 
47  void _updateVolumeInformation(MultiFileVolume *currVol) override;
48 
49 private:
50 
52  void _initializeFieldsAndMembers();
53 
55  void _resetLoadedMembers();
56 
58  StringField *_infoFld;
59 
60 
61  // Top level segmentation tags:
63  StringField *_segmentationTypeFld;
64 
66  StringField *_segmentationFractionalTypeFld;
67 
69  StringField *_maximumFractionalValueFld;
70 
72  BoolField *_isValidFractionalSegmentationFld;
73 
75  StringField *_contentLabelFld;
76 
78  StringField *_contentDescriptionFld;
79 
81  StringField *_contentCreatorsNameFld;
82 
84  StringField *_derivationDescriptionFld;
85 
86 
87  // Currently selected Segment:
89  IntField *_referencedSegmentNumberFld;
90 
92  IntField *_segmentNumberFld;
93 
95  StringField *_segmentLabelFld;
96 
98  StringField *_segmentDescriptionFld;
99 
101  StringField *_segmentAlgorithmTypeFld;
102 
104  StringField *_segmentAlgorithmNameFld;
105 
107  Vector3Field *_recommendedDisplayCIELabValueFld;
108 
110  ColorField *_rgbOutFld;
111 
114  BoolField *_rgbAndCIELabValueValidFld;
115 
117  BaseField *_outputCurrentSegmentTreeFld;
118 
121  NotifyField *_updateSEGOutputInformationDoneFld;
122 
125 };
126 
127 ML_END_NAMESPACE
128 
#define MLDIRECTDICOMIMPORTOUTPUTS_EXPORT
DLL export macro definition.
Field to encapsulate a pointer to an ML base object.
Definition: mlFields.h:1187
Field to encapsulate a boolean value.
Definition: mlFields.h:62
Field to encapsulate a vector of 3 float values representing an (rgb) color with all properties of Ve...
Definition: mlFields.h:2065
Base class for all fields used in the ML.
Definition: mlField.h:73
Field to encapsulate an integer value.
Definition: mlFields.h:161
The ML module class MultiFileVolumeListImageOutput for extending the number of image outputs of Multi...
The ML module class MultiFileVolumeListSEGOutput providing an additional output for SEG DICOM files a...
void _updateVolumeInformation(MultiFileVolume *currVol) override
This is called by the super class if the volume has changed.
MultiFileVolumeListSEGOutput(int numInputs=0, int numOutputs=2)
Constructor.
void activateAttachments() override
Called after changes of fields without handleNotification calls.
~MultiFileVolumeListSEGOutput() override
Destructor.
void handleNotification(Field *field) override
Handles changes of fields.
Management class used by DirectDicomImport to create, represent and describe volumes composed of mult...
Field without value for notifications.
Definition: mlFields.h:1049
Field to encapsulate a string value.
Definition: mlFields.h:1000
Field to encapsulate a vector of 3 double values.
Definition: mlFields.h:1538
#define ML_MODULE_CLASS_HEADER(className)
Like ML_CLASS_HEADER for the usage of derived classes from Module.
The ML module class MultiFileVolumeListImageOutput for extending the number of image outputs of Multi...