public void BeginWrite_SimpleFile_CommentMaintained() { lock (this.locker) { const string fileName = @".\Test Data\dicomfilewriter_beginwrite.dcm"; var file = IOManager.CreateFileReference(fileName); using (var target = new FileByteTarget(file)) { var writer = new DicomFileWriter(new DicomWriteOptions()); writer.EndWrite(writer.BeginWrite(target, this.metaInfo, this.dataset, null, null)); } var expected = Comment; var readFile = DicomFile.Open(fileName); var actual = readFile.Dataset.Get <string>(DoseCommentTag); Assert.Equal(expected, actual); var syntax = readFile.FileMetaInfo.TransferSyntax; Assert.Equal(DicomTransferSyntax.JPEG2000Lossless, syntax); } }
public void BeginWrite_SimpleFile_CommentMaintained() { lock (this.locker) { const string fileName = @".\Test Data\dicomfilewriter_beginwrite.dcm"; var file = IOManager.CreateFileReference(fileName); using (var target = new FileByteTarget(file)) { var writer = new DicomFileWriter(new DicomWriteOptions()); writer.EndWrite(writer.BeginWrite(target, this.metaInfo, this.dataset, null, null)); } var expected = Comment; var readFile = DicomFile.Open(fileName); var actual = readFile.Dataset.Get<string>(DoseCommentTag); Assert.Equal(expected, actual); var syntax = readFile.FileMetaInfo.TransferSyntax; Assert.Equal(DicomTransferSyntax.JPEG2000Lossless, syntax); } }
public void BeginSave(string fileName, AsyncCallback callback, object state) { if (Format == DicomFileFormat.ACRNEMA1 || Format == DicomFileFormat.ACRNEMA2) throw new DicomFileException(this, "Unable to save ACR-NEMA file"); if (Format == DicomFileFormat.DICOM3NoFileMetaInfo) { // create file meta information from dataset FileMetaInfo = new DicomFileMetaInformation(Dataset); } File = new FileReference(fileName); File.Delete(); OnSave(); FileByteTarget target = new FileByteTarget(File); EventAsyncResult result = new EventAsyncResult(callback, state); DicomFileWriter writer = new DicomFileWriter(DicomWriteOptions.Default); writer.BeginWrite(target, FileMetaInfo, Dataset, OnWriteComplete, new Tuple<DicomFileWriter, EventAsyncResult>(writer, result)); }