MeVisLab Toolbox Reference
mlRTStructToML.h
Go to the documentation of this file.
1 // Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2 // **InsertLicense** code
3 //----------------------------------------------------------------------------------
5 
11 //----------------------------------------------------------------------------------
12 #ifndef __mlRTStructToML_H
13 #define __mlRTStructToML_H
14 
16 
17 #include <mlAlgorithmModule.h>
18 #include <CSOBase/CSOList.h>
19 
20 ML_START_NAMESPACE
21 
22 class DRTStructureSetIODBase;
23 
26  : public AlgorithmModule
27 {
28 public:
30  virtual ~RTStructToML() override;
31 
33  // \param progress Progress value.
34  void setProgress(float progress);
35 
36 protected:
37  virtual void validateInput() override;
38  virtual void update() override;
39  virtual void clear() override;
40 
41 private:
42  void tryConvert();
43  void convert();
44  void notifyObservers();
45 
46  BaseField *_inRtStructField;
47  BaseField *_outCSOListField;
48  ProgressField *_progressField;
49  DRTStructureSetIODBase *_rtStruct;
50  CSOListPtr _csoList;
51 
53 };
54 
55 ML_END_NAMESPACE
56 
57 #endif // __mlRTStructToML_H
Project global and OS specific declarations.
#define MLDCMTKMLCONVERTERMODULES_EXPORT
ML-Module base class to simplify development of modules encapsulating an algorithm with dedicated inp...
Field to encapsulate a pointer to an ML base object.
Definition: mlFields.h:1187
Base object class for passing DRTStructureSetIOD objects between MeVisLab modules.
Field to encapsulate an increasing float value from range [0,1].
Definition: mlFields.h:744
ML module converting RT Structure Set to a CSOList.
virtual void update() override
Executes the algorithm and updates the values of module's output fields with results.
void setProgress(float progress)
Sets the progress field.
virtual void validateInput() override
Validates the values of module's input fields (object and parameter fields).
virtual ~RTStructToML() override
virtual void clear() override
Clears the values of module's output fields (object and parameter fields).
#define ML_MODULE_CLASS_HEADER(className)
Like ML_CLASS_HEADER for the usage of derived classes from Module.