MeVisLab Toolbox Reference
mlMultiFileVolumeListDiagnosisOutput.h
Go to the documentation of this file.
1// Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2// **InsertLicense** code
3//----------------------------------------------------------------------------------
6
11//----------------------------------------------------------------------------------
12#pragma once
13
14// Base class of output module.
16
17// List of volumes loaded or accessed via connected module.
19
20ML_START_NAMESPACE
21
22// Forward to internally used classes.
23class MultiFileVolume;
24
25//----------------------------------------------------------------------------------
28//----------------------------------------------------------------------------------
30{
31public:
32
39 int numOutputs=0,
40 bool autoInstallTagDumpFieldAddOn=true);
42
43
44protected:
46 void activateAttachments() override;
47
49 void handleNotification(Field *field) override;
50
54
57 std::string _getComposedResultMessages(const std::string& errMsgs) const;
58
59private:
60
62 void _initializeFieldsAndMembers();
63
65 void _resetResultFields();
66
68 typedef bool MultiFileVolumeListCheckFunction(const MultiFileVolume &);
69
79 bool _performMultiFileVolumeChecks(MultiFileVolumeListCheckFunction *checkFunction,
80 const std::string &errDescPart,
81 bool postErrors,
82 std::string &errMsgs);
83
84
92 typedef std::string MultiFileVolumeListQueryFunction(const MultiFileVolume &mfv,
93 const std::string &arg1,
94 const MLint64 volumeIndex,
95 const size_t padSpaces);
96
105 std::string _performMultiFileVolumeQuery(MultiFileVolumeListQueryFunction *queryFunction,
106 const std::string &arg1="",
107 const std::string &elemSeparator=" ",
108 const size_t padSpaces=1u);
109
110
113 std::string _getIndexOfVolume(MLint idx);
114
116 std::vector<MultiFileVolume*> _getMultiFileVolumesToCheck();
117
119 BoolField *_checkAllMultiFileVolumesFld;
120
121
123 BoolField *_doFilesExistCheckFld;
124
126 BoolField *_postFileExistCheckFailuresAsMLErrorFld;
127
128
130 BoolField *_doOneDirCheckFld;
131
133 BoolField *_postOneDirCheckFailuresAsMLErrorFld;
134
135
139 BoolField *_doNumFrameDirsCalcFld;
140
142 StringField *_numFrameDirsFld;
143
144
145
149 BoolField *_doNumTagIdCalcFld;
150
152 StringField *_tagIdFld;
153
155 BoolField *_isValidTagIdFld;
156
158 StringField *_numDifferentTagsWithIdFld;
159
162 StringField *_overallTagIdFld;
163
166
168 BoolField *_filesExistFld;
169
171 BoolField *_oneDirFld;
172
173
175 StringField *_resultConsoleFld;
176
179 NotifyField *_updateDiagnosisOutputInformationDoneFld;
180
182 IntField *_padSpacesFld;
183
185 StringField *_overallTagTableFld;
186
188
191
192};
193
194ML_END_NAMESPACE
#define MLDIRECTDICOMIMPORTOUTPUTS_EXPORT
DLL export macro definition.
MultiFileVolumeListBaseOutput(int numInputs=0, int numOutputs=0, bool autoInstallTagDumpFieldAddOn=true, bool installInputAccessConnector=true, bool installInputMessageFilterPlugin=true, bool installOutputAccessConnector=true)
void handleNotification(Field *field) override
Handles field changes.
void activateAttachments() override
Called after field updates without notification calls after for example module cloning or reloads.
std::string _getComposedResultMessages(const std::string &errMsgs) const
MultiFileVolumeListDiagnosisOutput(int numInputs=0, int numOutputs=0, bool autoInstallTagDumpFieldAddOn=true)
void _updateVolumeInformation(MultiFileVolume *currVol) override
#define ML_MODULE_CLASS_HEADER(className)
Provides the base class for an additional output for a MultiFileVolumeList module.
Class managing a list of MultiFileVolume instances.
INT64 MLint64
Include 64-bit integer support for Windows or Unix.
Definition mlTypeDefs.h:411
MLint64 MLint
Definition mlTypeDefs.h:489