plastimatch
Loading...
Searching...
No Matches
dcmtk_rt_study.h
Go to the documentation of this file.
1/* -----------------------------------------------------------------------
2 See COPYRIGHT.TXT and LICENSE.TXT for copyright and license information
3 ----------------------------------------------------------------------- */
4#ifndef _dcmtk_rt_study_h_
5#define _dcmtk_rt_study_h_
6
7#include "plmbase_config.h"
8#include <list>
9
10#include "itk_image.h"
11#include "plm_image.h"
12#include "plm_int.h"
13#include "rt_study_metadata.h"
14#include "rtss.h"
15#include "rtplan.h"
16#include "volume.h"
17
20
22public:
24public:
26 Dcmtk_rt_study (const char* dicom_path);
28public:
29 void load (const char *dicom_path);
30 void save (const char *dicom_path);
31public:
32 const char* get_ct_series_uid () const;
33 const char* get_dose_instance_uid () const;
34 const char* get_dose_series_uid () const;
35 const char* get_frame_of_reference_uid () const;
36 const char* get_plan_instance_uid () const;
37 const char* get_rtss_instance_uid () const;
38 const char* get_rtss_series_uid () const;
39 const char* get_study_date () const;
40 const char* get_study_time () const;
41 const char* get_study_description () const;
42 const char* get_study_uid () const;
43 std::vector<Dcmtk_slice_data>* get_slice_data();
44
45public:
46 Plm_image::Pointer& get_image ();
47 Volume::Pointer get_image_volume_float ();
48 Volume *get_volume ();
49 void set_image (const Plm_image::Pointer& image);
50
51 Rtss::Pointer& get_rtss ();
52 void set_rtss (const Rtss::Pointer& rtss);
53
54 Rtplan::Pointer& get_rtplan();
55 void set_rtplan (const Rtplan::Pointer& rtplan);
56
57 Plm_image::Pointer& get_dose ();
58 void set_dose (const Plm_image::Pointer& dose);
59
60 void set_rt_study_metadata (
61 const Rt_study_metadata::Pointer& rt_study_metadata);
62
63 void set_filenames_with_uid (bool filenames_with_uid);
64
65public:
66 void image_save (const char *dicom_path);
67 void dose_save (const char *dicom_path);
68 void rtss_save (const char *dicom_path);
69 void rtplan_save (const char *dicom_path);
70
71 void load_directory (void);
72 void image_load ();
73 void rtss_load ();
74 void rtdose_load ();
75 void rtplan_load();
76
77 void insert_file (const char* fn);
78 void insert_directory (const char* fn);
79 void sort_all (void);
80
81 void debug (void) const;
82
83protected:
84 void rt_ion_plan_load ();
85};
86
87#endif
Definition dcmtk_rt_study_p.h:18
Definition dcmtk_rt_study.h:21
const char * get_study_description() const
Dcmtk_rt_study_private * d_ptr
Definition dcmtk_rt_study.h:23
Definition dcmtk_slice_data.h:14
std::shared_ptr< Self > Pointer
Definition plm_image.h:29
std::shared_ptr< Self > Pointer
Definition rt_study_metadata.h:29
std::shared_ptr< Self > Pointer
Definition rtplan.h:22
std::shared_ptr< Self > Pointer
Definition rtss.h:27
The Volume class represents a three-dimensional volume on a uniform grid. The volume can be located a...
Definition volume.h:38
#define PLMBASE_API
Definition plmbase_config.h:19