This repository has been archived by the owner on Dec 29, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDcmtkBuilder.hpp
executable file
·80 lines (61 loc) · 2.01 KB
/
DcmtkBuilder.hpp
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
#ifndef DcmtkBuilder_h
#define DcmtkBuilder_h
#include "dicmlib_global.hpp"
////////////////////////////////////////////////////////////////////////////////
#include <string>
#include <memory>
////////////////////////////////////////////////////////////////////////////////
class DcmInputFileStream;
class DcmFileFormat;
class DcmMetaInfo;
class DcmDataSet;
class DcmDicomDir;
class DcmObject;
class DicomImage;
////////////////////////////////////////////////////////////////////////////////
//! This class encapsulates functions of the DICOM Toolkit.
/**
This class encapsulates functions of the DICOM Toolkit.
It does create data structures that correspond to DICOM object. These are
the fileformat, metainfo, dataset and dicomdir.
\author Tobias Wissmüller (tobias@wissmueller.net)
\todo Implement createMetaInfo()
\todo Implement createDataset()
*/
#define DcmInputFileStreamPtr std::auto_ptr<DcmInputFileStream>
#define DcmFileFormatPtr std::auto_ptr<DcmFileFormat>
#define DcmDicomDirPtr std::auto_ptr<DcmDicomDir>
//#define DicomImagePtr std::auto_ptr<DicomImage>
/*DcmInputFileStream* file;
DcmFileFormat* fileFormat;
DcmMetaInfo* metaInfo;
DcmDataSet* dataset;
DcmDicomDir* dicomDir;
DcmObject* dicomObject;*/
class TW_DLL_EXPORT DcmtkBuilder
{
public:
DcmtkBuilder();
void setFilename(const std::string& _filename);
DcmFileFormatPtr getFileFormat();
DcmDicomDirPtr getDicomDirPtr();
DcmDicomDir* getDicomDir();
//DicomImagePtr getDicomImage();
protected:
void createFileFormat();
void createMetaInfo();
void createDataset();
void createDicomDirPtr();
void createDicomDir();
//void createDicomImage();
std::string filename;
DcmInputFileStreamPtr file;
DcmFileFormatPtr fileFormat;
DcmDicomDirPtr dicomDirPtr;
DcmDicomDir* dicomDir;
// DicomImagePtr dicomImage;
//DcmMetaInfo* metaInfo;
//DcmDataSet* dataset;
};
////////////////////////////////////////////////////////////////////////////////
#endif // DcmtkBuilder_h