MeVisLab Toolbox Reference
mlStructureSetROIToCSOGroup.h
Go to the documentation of this file.
1// Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2// **InsertLicense** code
3//----------------------------------------------------------------------------------
5
10//----------------------------------------------------------------------------------
11#ifndef __mlStructureSetROIToCSOGroup_H
12#define __mlStructureSetROIToCSOGroup_H
13
15
16#include <CSOBase/CSOList.h>
21
22ML_START_NAMESPACE
23
25{
26public:
31
35
39
43
44private:
45 void populateROINumberToROIContourMap();
46 void populateROINumberToRTDoseROIMap();
47 void populateROINumberToRTROIObservationMap();
48 void setCSOGroupProperties(CSOGroup *csoGroup,
50 void setCSOGroupPropertiesFromStructureSetROI(CSOGroup *csoGroup,
52 void setCSOGroupPropertiesFromROIContour(CSOGroup *csoGroup, MLuint roiNumber);
53 void setCSOGroupPropertiesFromRTDoseROI(CSOGroup *csoGroup, MLuint roiNumber);
54 void setCSOGroupPropertiesFromRTROIObservation(CSOGroup *csoGroup, MLuint roiNumber);
55 void setCSOGroupOtherProperties(CSOGroup *csoGroup);
56 Vector3 getROIContourColor(const DcmDRTROIContourSequenceInterface::Item &roiContour);
57 MLuint getROINumber(const DcmDRTStructureSetROISequenceInterface::Item &structureSetROI);
58 void parseContourSequence(CSOGroup *csoGroup, DcmDRTContourSequenceInterface seq);
59
60 CSOListPtr _csoList;
61 const DcmDRTROIContourSequenceInterface _roiContourSequence;
62 const DcmDRTRTROIObservationsSequenceInterface *_rtRTROIObservationSequence;
63 const DcmDRTRTDoseROISequenceInterface *_rtDoseROISequence;
64 std::map<MLuint, DcmDRTROIContourSequenceInterface::Item> _roiNumberToROIContourMap;
65 std::map<MLuint, DcmDRTRTDoseROISequenceInterface::Item> _roiNumberToRTDoseROIMap;
66 std::map<MLuint, DcmDRTRTROIObservationsSequenceInterface::Item> _roiNumberToRTROIObservationMap;
67
69};
70
71ML_END_NAMESPACE
72
73#endif // __mlStructureSetROIToCSOGroup_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
Class to provide access to DRTContourSequence.
Class to provide access to DRTROIContourSequence.
Class to provide access to DRTRTDoseROISequence.
Class to provide access to DRTRTROIObservationsSequence.
StructureSetROIToCSOGroup(CSOListPtr csoList, const DcmDRTROIContourSequenceInterface &seq)
Constructor.
void setRTDoseROISequence(const DcmDRTRTDoseROISequenceInterface *seq)
Set RTDoseROISequence to provide additional data for added CSOGroups.
void setRTROIObservationsSequence(const DcmDRTRTROIObservationsSequenceInterface *seq)
Set RTROIObservationsSequence to provide additional data for added CSOGroups.
void addCSOGroup(const DcmDRTStructureSetROISequenceInterface::Item &structureSetROI)
Adds CSOGroup to CSOList.
#define ML_DISALLOW_COPY_AND_ASSIGN(className)
Defines basic macros.
Definition mlMacros.h:21
Class to provide access to DRTROIContourSequence.
Class to provide access to DRTRTDoseROISequence.
Class to provide access to DRTRTROIObservationsSequence.
Class to provide access to DRTStructureSetROISequence.
MLuint64 MLuint
An unsigned ML integer type with at least 64 bits used for index calculations on very large images ev...
Definition mlTypeDefs.h:505