MeVisLab Toolbox Reference
mlMultiFileVolumeListIteratorOutput.h
Go to the documentation of this file.
1 // Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2 // **InsertLicense** code
3 //----------------------------------------------------------------------------------
8 
15 
16 //----------------------------------------------------------------------------------
17 #pragma once
18 
19 // Base class of output module.
21 
22 ML_START_NAMESPACE
23 
24 // Forward to internally used classes.
25 class MultiFileVolume;
26 
27 //----------------------------------------------------------------------------------
31 //----------------------------------------------------------------------------------
33 {
34 public:
35 
37  MultiFileVolumeListIteratorOutput(int numInputs=0, int numOutputs=0);
38 
41 
44 
45 protected:
46 
48  void activateAttachments() override;
49 
51  void handleNotification(Field *field) override;
52 
53 private:
54 
56  void _init();
57 
59  void _iterate();
60 
62  void _triggerIndex(size_t idx);
63 
83  static std::string replaceImageValuePlaceholders(const std::string &taggedStr,
84  const PagedImage *inImg,
85  const std::string &defaultTagContent="",
86  const std::string &fileType="",
87  size_t idx=0,
88  size_t padSize=5);
89 
92  std::string _getStrOutputFldForIdx(size_t idx);
93 
95  StringField *_infoFld;
96 
98  NotifyField *_iterateFld;
99 
102  BoolField *_iterateAllFld;
103 
105  StringField *_volumeIndexesFld;
106 
110  BoolField *_iterateOnlyOnValidImgsFld;
111 
113  StringField *_stringOutputExpressionFld;
114 
116  StringField *_defaultTagValueFld;
117 
118 
121 
123  StringField *_strOutputFld;
124 
126  IntField *_idxOutputFld;
127 
129  NotifyField *_triggerOutputFld;
131 
132 
135 };
136 
137 ML_END_NAMESPACE
#define MLDIRECTDICOMIMPORTOUTPUTS_EXPORT
DLL export macro definition.
Field to encapsulate a boolean value.
Definition: mlFields.h:62
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 base class MultiFileVolumeListBaseOutput used to implement further output modules for t...
The ML module class MultiFileVolumeListIteratorOutput providing some support to specify a list of vol...
MultiFileVolumeListIteratorOutput(MultiFileVolume *outVolToUse)
Convenience constructor to create and also set a MultiFileVolume with updateToVolume.
void activateAttachments() override
Called after changes of fields without handleNotification calls.
MultiFileVolumeListIteratorOutput(int numInputs=0, int numOutputs=0)
Constructor.
void handleNotification(Field *field) override
Handles changes of fields.
virtual ~MultiFileVolumeListIteratorOutput()
Destructor.
Management class used by DirectDicomImport to create, represent and describe volumes composed of mult...
Field without value for notifications.
Definition: mlFields.h:1049
Class which represents an image, which manages properties of an image and image data which is located...
Definition: mlPagedImage.h:70
Field to encapsulate a string value.
Definition: mlFields.h:1000
#define ML_MODULE_CLASS_HEADER(className)
Like ML_CLASS_HEADER for the usage of derived classes from Module.
Provides the base class for an additional output for a MultiFileVolumeList module.