comparison Core/DicomParsing/ParsedDicomFile.cpp @ 2521:6db878376018

support anonymization of CurrentRequestedProcedureEvidenceSequence
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 09 Apr 2018 17:59:16 +0200
parents 4dcafa8d6633
children 9a0c6a046cc2
comparison
equal deleted inserted replaced
2520:b94ed97508e6 2521:6db878376018
1005 pimpl_->file_.reset(FromDcmtkBridge::LoadFromMemoryBuffer(&content[0], content.size())); 1005 pimpl_->file_.reset(FromDcmtkBridge::LoadFromMemoryBuffer(&content[0], content.size()));
1006 } 1006 }
1007 } 1007 }
1008 1008
1009 1009
1010 ParsedDicomFile::ParsedDicomFile(ParsedDicomFile& other) : 1010 ParsedDicomFile::ParsedDicomFile(ParsedDicomFile& other,
1011 bool keepSopInstanceUid) :
1011 pimpl_(new PImpl) 1012 pimpl_(new PImpl)
1012 { 1013 {
1013 pimpl_->file_.reset(dynamic_cast<DcmFileFormat*>(other.pimpl_->file_->clone())); 1014 pimpl_->file_.reset(dynamic_cast<DcmFileFormat*>(other.pimpl_->file_->clone()));
1014 1015
1015 // Create a new instance-level identifier 1016 if (!keepSopInstanceUid)
1016 ReplacePlainString(DICOM_TAG_SOP_INSTANCE_UID, FromDcmtkBridge::GenerateUniqueIdentifier(ResourceType_Instance)); 1017 {
1018 // Create a new instance-level identifier
1019 ReplacePlainString(DICOM_TAG_SOP_INSTANCE_UID, FromDcmtkBridge::GenerateUniqueIdentifier(ResourceType_Instance));
1020 }
1017 } 1021 }
1018 1022
1019 1023
1020 ParsedDicomFile::ParsedDicomFile(DcmDataset& dicom) : pimpl_(new PImpl) 1024 ParsedDicomFile::ParsedDicomFile(DcmDataset& dicom) : pimpl_(new PImpl)
1021 { 1025 {
1039 { 1043 {
1040 return *pimpl_->file_.get(); 1044 return *pimpl_->file_.get();
1041 } 1045 }
1042 1046
1043 1047
1044 ParsedDicomFile* ParsedDicomFile::Clone() 1048 ParsedDicomFile* ParsedDicomFile::Clone(bool keepSopInstanceUid)
1045 { 1049 {
1046 return new ParsedDicomFile(*this); 1050 return new ParsedDicomFile(*this, keepSopInstanceUid);
1047 } 1051 }
1048 1052
1049 1053
1050 bool ParsedDicomFile::EmbedContentInternal(const std::string& dataUriScheme) 1054 bool ParsedDicomFile::EmbedContentInternal(const std::string& dataUriScheme)
1051 { 1055 {