forked from AlizaMedicalImaging/AlizaMS
-
Notifications
You must be signed in to change notification settings - Fork 0
/
srutils.h
108 lines (102 loc) · 2.39 KB
/
srutils.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
#ifndef A_SRUTILS_H
#define A_SRUTILS_H
#include <mdcmDataSet.h>
#include <QString>
#include <QWidget>
#include <QTextBrowser>
#include <QProgressDialog>
#include <QStringList>
#include <QImage>
#include <vector>
class SRImage
{
public:
SRImage() = default;
~SRImage() = default;
SRImage & operator=(const SRImage & j)
{
sx = j.sx;
sy = j.sy;
p = j.p;
i = j.i;
return *this;
}
SRImage & operator=(SRImage & j)
{
sx = j.sx;
sy = j.sy;
p = j.p;
i = j.i;
return *this;
}
double sx{1.0};
double sy{1.0};
unsigned char * p{};
QImage i;
};
class SRGraphic
{
public:
QString GraphicType;
QString PixelOriginInterpretation;
QString FiducialUID;
std::vector<float> GraphicData;
};
class SRUtils
{
public:
static void set_asked_for_path_once(bool);
static void read_IMAGE(
const mdcm::DataSet&,
const QString&,
const QString&,
QString&,
QStringList&,
std::vector<SRImage>&,
QTextBrowser*,
const std::vector<SRGraphic>&,
bool,
const QWidget*,
QProgressDialog*);
static bool read_SCOORD(
const mdcm::DataSet&,
const QString&,
const QString&,
QString&,
QStringList&,
std::vector<SRImage>&,
QTextBrowser*,
bool,
const QWidget*,
QProgressDialog*);
static void read_PNAME(const mdcm::DataSet&,const QString&,QString&);
static void read_TEXT (const mdcm::DataSet&,const QString&,QString&);
static void read_NUM (const mdcm::DataSet&,const QString&,QString&);
static void read_CODE (const mdcm::DataSet&,const QString&,QString&);
static void read_DATE (const mdcm::DataSet&, QString&);
static void read_DATETIME(const mdcm::DataSet&, QString&);
static void read_TIME (const mdcm::DataSet&, QString&);
static void read_SCOORD3D(const mdcm::DataSet&, QString&);
static QString read_UIDREF (const mdcm::DataSet&, QString&);
static void read_TCOORD (const mdcm::DataSet&, QString&, bool);
static QString read_sr_title1(const mdcm::DataSet&, const QString&);
static QString read_sr_title2(const mdcm::DataSet&, const QString&);
static QStringList read_referenced(const mdcm::DataSet&, QString&);
static QString get_concept_code_meaning(
const mdcm::DataSet&,
const QString&);
static QString read_sr_content_sq(
const mdcm::DataSet&,
const QString&,
const QString&,
const QWidget*,
QTextBrowser*,
QProgressDialog*,
QStringList&,
std::vector<SRImage>&,
int,
bool,
const QString&,
bool = false);
};
#endif