comparison Core/DicomParsing/ParsedDicomFile.h @ 2846:d386abc18133

simplification in SplitStudyJob, fix possible memory leak
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 28 Sep 2018 18:36:20 +0200
parents 6db878376018
children f3c1eda54e47
comparison
equal deleted inserted replaced
2845:218e2c864d1d 2846:d386abc18133
61 61
62 #if ORTHANC_ENABLE_CIVETWEB == 1 || ORTHANC_ENABLE_MONGOOSE == 1 62 #if ORTHANC_ENABLE_CIVETWEB == 1 || ORTHANC_ENABLE_MONGOOSE == 1
63 # include "../RestApi/RestApiOutput.h" 63 # include "../RestApi/RestApiOutput.h"
64 #endif 64 #endif
65 65
66 #include <boost/shared_ptr.hpp>
67
66 68
67 class DcmDataset; 69 class DcmDataset;
68 class DcmFileFormat; 70 class DcmFileFormat;
69 71
70 namespace Orthanc 72 namespace Orthanc
71 { 73 {
72 class ParsedDicomFile : public IDynamicObject 74 class ParsedDicomFile : public IDynamicObject
73 { 75 {
74 private: 76 private:
75 struct PImpl; 77 struct PImpl;
76 PImpl* pimpl_; 78 boost::shared_ptr<PImpl> pimpl_;
77 79
78 ParsedDicomFile(ParsedDicomFile& other, 80 ParsedDicomFile(ParsedDicomFile& other,
79 bool keepSopInstanceUid); 81 bool keepSopInstanceUid);
80 82
81 void CreateFromDicomMap(const DicomMap& source, 83 void CreateFromDicomMap(const DicomMap& source,
105 ParsedDicomFile(const std::string& content); 107 ParsedDicomFile(const std::string& content);
106 108
107 ParsedDicomFile(DcmDataset& dicom); 109 ParsedDicomFile(DcmDataset& dicom);
108 110
109 ParsedDicomFile(DcmFileFormat& dicom); 111 ParsedDicomFile(DcmFileFormat& dicom);
110
111 ~ParsedDicomFile();
112 112
113 DcmFileFormat& GetDcmtkObject() const; 113 DcmFileFormat& GetDcmtkObject() const;
114 114
115 ParsedDicomFile* Clone(bool keepSopInstanceUid); 115 ParsedDicomFile* Clone(bool keepSopInstanceUid);
116 116