Products | Support | Email a link to this topic. | Send comments on this topic. | Back to Introduction - All Topics | Help Version 19.0.3.28
|
Leadtools.Dicom.Common.Anonymization Namespace : Anonymizer Class |
[DefaultMemberAttribute("Item")] public class Anonymizer : Leadtools.Dicom.Common.DataTypes.NotifyPropertyChanged, System.ComponentModel.INotifyPropertyChanged
'Declaration
<DefaultMemberAttribute("Item")> Public Class Anonymizer Inherits Leadtools.Dicom.Common.DataTypes.NotifyPropertyChanged Implements System.ComponentModel.INotifyPropertyChanged
'Usage
Dim instance As Anonymizer
[DefaultMemberAttribute("Item")] public ref class Anonymizer : public Leadtools.Dicom.Common.DataTypes.NotifyPropertyChanged, System.ComponentModel.INotifyPropertyChanged
This example anonymizes a dataset using the DICOM Anonymization basic profile.
Imports Leadtools.Dicom.Common.Anonymization Imports Leadtools.Dicom <TestMethod()> _ Public Sub AnonymizationSample() Dim anonymizer As New Anonymizer() Dim dicomFileNameIn As String = Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm") AddHandler anonymizer.Progress, AddressOf anonymizer_Progress AddHandler anonymizer.BeforeTagAnonymization, AddressOf anonymizer_BeforeTagAnonymization Using source As New DicomDataSet() Dim oldPatientId As String = String.Empty source.Load(dicomFileNameIn, DicomDataSetLoadFlags.None) oldPatientId = source.GetValue(Of String)(DicomTag.PatientID, String.Empty) anonymizer.Anonymize(source) ' ' The values should not be equal because the anonymizer has provided another patient ID using the DICOM Anonymization basic profile. ' By default the following macro is provided for patient id: ${random_string} ' Debug.Assert(oldPatientId <> source.GetValue(Of String)(DicomTag.PatientID, String.Empty)) End Using End Sub Private Sub anonymizer_BeforeTagAnonymization(ByVal sender As Object, ByVal e As BeforeTagAnonymizationEventArgs) Console.WriteLine(String.Format("Tag: {0}, Current Value: {1}, New Value: {0} ", e.Element.Tag, e.CurrentValue, e.NewValue)) End Sub Private Sub anonymizer_Progress(ByVal sender As Object, ByVal e As ProgressEventArgs) Console.WriteLine("Progress: " + e.Progress.ToString()) End Sub Public NotInheritable Class LEAD_VARS Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" End Class
using Leadtools.Dicom.Common.Anonymization; using Leadtools.Dicom; [TestMethod] public void AnonymizationSample() { Anonymizer anonymizer = new Anonymizer(); string dicomFileNameIn = Path.Combine(LEAD_VARS.ImagesDir, "IMAGE3.dcm"); anonymizer.Progress += new EventHandler<ProgressEventArgs>(anonymizer_Progress); anonymizer.BeforeTagAnonymization += new EventHandler<BeforeTagAnonymizationEventArgs>(anonymizer_BeforeTagAnonymization); using (DicomDataSet source = new DicomDataSet()) { string oldPatientId = string.Empty; source.Load(dicomFileNameIn, DicomDataSetLoadFlags.None); oldPatientId = source.GetValue<string>(DicomTag.PatientID, string.Empty); anonymizer.Anonymize(source); // // The values should not be equal because the anonymizer has provided another patient ID using the DICOM Anonymization basic profile. // By default the following macro is provided for patient id: ${random_string} // Debug.Assert(oldPatientId != source.GetValue<string>(DicomTag.PatientID, string.Empty)); } } void anonymizer_BeforeTagAnonymization(object sender, BeforeTagAnonymizationEventArgs e) { Console.WriteLine(string.Format("Tag: {0}, Current Value: {1}, New Value: {0} ",e.Element.Tag, e.CurrentValue, e.NewValue)); } void anonymizer_Progress(object sender, ProgressEventArgs e) { Console.WriteLine("Progress: " + e.Progress.ToString()); } static class LEAD_VARS { public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; }