comparison OrthancServer/FromDcmtkBridge.h @ 302:238134081136

modification of dicom files
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 18 Dec 2012 17:29:30 +0100
parents 4d7469f72a0b
children 4eea080e6e7a
comparison
equal deleted inserted replaced
301:be378326f50b 302:238134081136
60 class ParsedDicomFile : public IDynamicObject 60 class ParsedDicomFile : public IDynamicObject
61 { 61 {
62 private: 62 private:
63 std::auto_ptr<DcmFileFormat> file_; 63 std::auto_ptr<DcmFileFormat> file_;
64 64
65 ParsedDicomFile(DcmFileFormat& other) :
66 file_(dynamic_cast<DcmFileFormat*>(other.clone()))
67 {
68 }
69
70 void ReplaceInternal(const DicomTag& tag,
71 const std::string& value,
72 bool insertOnAbsent);
73
65 public: 74 public:
66 ParsedDicomFile(const std::string& content); 75 ParsedDicomFile(const std::string& content);
67 76
68 DcmFileFormat& GetDicom() 77 DcmFileFormat& GetDicom()
69 { 78 {
70 return *file_; 79 return *file_;
71 } 80 }
72 81
82 ParsedDicomFile* Clone()
83 {
84 return new ParsedDicomFile(*file_);
85 }
86
73 void SendPathValue(RestApiOutput& output, 87 void SendPathValue(RestApiOutput& output,
74 const UriComponents& uri); 88 const UriComponents& uri);
89
90 void Answer(RestApiOutput& output);
91
92 void Remove(const DicomTag& tag);
93
94 void Replace(const DicomTag& tag,
95 const std::string& value);
96
97 void Insert(const DicomTag& tag,
98 const std::string& value);
99
100 void InsertOrReplace(const DicomTag& tag,
101 const std::string& value);
75 }; 102 };
76 103
77 class FromDcmtkBridge 104 class FromDcmtkBridge
78 { 105 {
79 public: 106 public: