Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
mitkRTStructureSetReader.h
Go to the documentation of this file.
1 /*===================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 
17 #ifndef MITKRTSTRUCTURESETREADER_H
18 #define MITKRTSTRUCTURESETREADER_H
19 
20 #include <itkObject.h>
21 #include <itkObjectFactory.h>
22 
23 #include <MitkDicomRTExports.h>
24 #include <mitkContourModelSet.h>
25 #include <mitkProperties.h>
26 
27 #include "dcmtk/dcmrt/drtstrct.h"
28 
29 #include <mitkDataNode.h>
30 
31 namespace mitk
32 {
33  class MITKDICOMRT_EXPORT RTStructureSetReader : public itk::Object
34  {
35  typedef std::deque<mitk::DataNode::Pointer> ContourModelSetNodes;
36 
40  class RoiEntry
41  {
42  public:
43  RoiEntry();
44  RoiEntry(const RoiEntry& src);
45  virtual ~RoiEntry();
46  RoiEntry& operator=(const RoiEntry& src);
47 
48  void SetPolyData(ContourModelSet::Pointer roiPolyData);
49 
50  unsigned int Number;
51  std::string Name;
52  std::string Description;
53  double DisplayColor[3];
55  };
56 
57  public:
59  itkNewMacro(Self)
60 
61 
70  ContourModelSetNodes ReadStructureSet(const char* filepath);
71 
72  protected:
76  std::vector<RoiEntry> ROISequenceVector;
77 
79  virtual ~RTStructureSetReader();
80 
84  size_t GetNumberOfROIs();
85 
89  RoiEntry* FindRoiByNumber(unsigned int roiNum);
90  };
91 }
92 
93 #endif // MITKRTSTRUCTURESETREADER_H
DataCollection - Class to facilitate loading/accessing structured data.
std::vector< RoiEntry > ROISequenceVector
#define MITKDICOMRT_EXPORT
#define mitkClassMacroItkParent(className, SuperClassName)
Definition: mitkCommon.h:53