MeVisLab Toolbox Reference
mlCSOListToRTStructureSetIOD.h
Go to the documentation of this file.
1// Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2// **InsertLicense** code
3//----------------------------------------------------------------------------------
38
43//----------------------------------------------------------------------------------
44#ifndef __mlCSOListToRTStructureSetIOD_H
45#define __mlCSOListToRTStructureSetIOD_H
46
48#include "mlProgress.h"
49
50#include <mlTypeDefs.h>
51#include <CSOBase/CSOList.h>
52#include <string>
53#include <map>
54#include <utility>
55#include <boost/function.hpp>
56
57ML_START_NAMESPACE
58
59typedef std::map<std::string, std::string> TStrStrMap;
60typedef std::pair<std::string, std::string> TStrStrPair;
61
62class CSO;
63class CSOGroup;
69
71{
72public:
77 CSOListToRTStructureSetIOD(CSOListPtr csoList, DRTStructureSetIODBase *rtStructureSet,
78 boost::function<void(float)> *callback = NULL);
79
81 void convert();
82
83private:
84 void calculateProgressStep();
85 void populateCSOTypeToGeometricTypeMap();
86 void populateSequences();
87 void addStructureSetROI(DcmDRTStructureSetROISequenceInterface *seq, const CSOGroup &csoGroup,
88 std::string roiNumber);
89 void addRTROIObservation(DcmDRTRTROIObservationsSequenceInterface *seq, const CSOGroup &csoGroup,
90 std::string roiNumber);
91 void addROIContour(DcmDRTROIContourSequenceInterface *seq, const CSOGroup &csoGroup,
92 std::string roiNumber);
93 std::string getROIDisplayColor(const CSOGroup &csoGroup);
94 void addContour(DcmDRTContourSequenceInterface *contourSequence, const CSO &cso,
95 std::string contourNumber);
96 std::string getContourGeometricType(const CSO &cso);
97 std::string getContourData(const CSO &cso);
98
99 CSOListPtr _csoList;
100 DRTStructureSetIODBase *_rtStructureSet;
101 TStrStrMap _csoTypeToGeometricTypeMap;
102 Progress _progress;
103
105};
106
107ML_END_NAMESPACE
108
109#endif // __mlCSOListToRTStructureSetIOD_H
Project global and OS specific declarations.
#define MLDCMTKMLCONVERTERS_EXPORT
CSOListToRTStructureSetIOD(CSOListPtr csoList, DRTStructureSetIODBase *rtStructureSet, boost::function< void(float)> *callback=NULL)
void convert()
Converts CSOList to RTStructureSetIOD.
Definition CSO.h:44
Base object class for passing DRTStructureSetIOD objects between MeVisLab modules.
Class to provide access to DRTContourSequence.
Class to provide access to DRTROIContourSequence.
Class to provide access to DRTRTROIObservationsSequence.
Class to provide access to DRTStructureSetROISequence.
#define ML_DISALLOW_COPY_AND_ASSIGN(className)
Defines basic macros.
Definition mlMacros.h:21
Class for setting progress.
std::pair< std::string, std::string > TStrStrPair
std::map< std::string, std::string > TStrStrMap