Mercurial > hg > orthanc-wsi
diff Framework/DicomToolbox.cpp @ 83:0cb3ac4f9159
refactoring
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 15 Dec 2016 11:51:58 +0100 |
parents | f45cec2c32e2 |
children | ff0ef01c332c |
line wrap: on
line diff
--- a/Framework/DicomToolbox.cpp Wed Dec 14 17:01:34 2016 +0100 +++ b/Framework/DicomToolbox.cpp Thu Dec 15 11:51:58 2016 +0100 @@ -28,6 +28,7 @@ #if ORTHANC_ENABLE_DCMTK == 1 # include <dcmtk/dcmdata/dcelem.h> # include <dcmtk/dcmdata/dcsequen.h> +# include <dcmtk/dcmdata/dcvrat.h> #endif namespace OrthancWSI @@ -70,6 +71,23 @@ } + void SetAttributeTag(DcmItem& dataset, + const DcmTagKey& key, + const DcmTagKey& value) + { + if (!dataset.tagExists(key)) + { + std::auto_ptr<DcmAttributeTag> tag(new DcmAttributeTag(key)); + + if (!tag->putTagVal(value).good() || + !dataset.insert(tag.release()).good()) + { + throw Orthanc::OrthancException(Orthanc::ErrorCode_InternalError); + } + } + } + + DcmItem* ExtractSingleSequenceItem(DcmItem& dataset, const DcmTagKey& key) {