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
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:
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
108
109#endif // __mlCSOListToRTStructureSetIOD_H
Project global and OS specific declarations.
#define MLDCMTKMLCONVERTERS_EXPORT
A CSOGroup comprises a number of CSOs, which themselves can be in a number of different CSOGroups.
Definition CSOGroup.h:38
CSOListToRTStructureSetIOD(CSOListPtr csoList, DRTStructureSetIODBase *rtStructureSet, boost::function< void(float)> *callback=NULL)
Constructor.
void convert()
Converts CSOList to RTStructureSetIOD.
The CSO represents a contour segmentation object.
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:23
std::map< std::string, std::string > TStrStrMap
std::pair< std::string, std::string > TStrStrPair
Class for setting progress.
Target mlrange_cast(Source arg)
Generic version of checked ML casts.
std::map< std::string, std::string > TStrStrMap