Leadtools.Medical.Workstation.Client.Pacs Namespace > PacsRetrieveClient Class : StoreRetrievedImages Property |
public bool StoreRetrievedImages {get; set;}
'Declaration Public Property StoreRetrievedImages As Boolean
'Usage Dim instance As PacsRetrieveClient Dim value As Boolean instance.StoreRetrievedImages = value value = instance.StoreRetrievedImages
If this value is set to false the InstanceReceived event will contain System.String.Empty in its Leadtools.Medical.Workstation.Client.InstanceReceivedEventArgs.InstanceDataSetPath since the dataset won't be saved.
Imports Leadtools Imports Leadtools.Codecs Imports Leadtools.Dicom Imports Leadtools.Dicom.Scu.Common Imports Leadtools.ImageProcessing Imports Leadtools.Dicom.AddIn.Common Imports Leadtools.Dicom.Scu Imports Leadtools.Medical.Workstation.Client Imports Leadtools.Medical.Workstation.Client.Local Imports Leadtools.Medical.Workstation.Client.Pacs Public Sub RetrieveLocalDatabase() #If LEADTOOLS_V175_OR_LATER Then Leadtools.Examples.Support.SetLicense() #Else Leadtools.Examples.Support.Unlock() #End If ''' #if LEADTOOLS_V175_OR_LATER Dim clientInfo As AeInfo = New AeInfo() Dim scpInfo As DicomScp = New DicomScp() clientInfo.Address = Dns.GetHostName() 'local machine clientInfo.AETitle = "TEST_CLIENT" clientInfo.Port = 1000 scpInfo.AETitle = "LEAD_SERVER" scpInfo.Port = 104 scpInfo.Timeout = 30 Dim addressFound As Boolean Dim addresses As IPAddress() addressFound = False addresses = Dns.GetHostAddresses(Dns.GetHostName()) For Each address As IPAddress In addresses 'we need to get an IP V4, won't work with IP V6 If address.AddressFamily = System.Net.Sockets.AddressFamily.InterNetwork Then addressFound = True scpInfo.PeerAddress = address Exit For End If Next address If (Not addressFound) Then Throw New ArgumentException("Couldn't resolve a valid host Address. Address must conform to IP version 4") End If Dim client As PacsRetrieveClient = New PacsRetrieveClient(clientInfo, scpInfo) client.LoadDataSetOnRetrieve = False 'Enable this if you need to read information from the DICOM dataset. AddHandler client.InstanceMoved, AddressOf client_InstanceMoved client.EnableLog = True client.LogFileName = Path.Combine(LEAD_VARS.ImagesDir, "DicomLog.txt") client.StoreRetrievedImages = True 'This will store the retrieved images into the local database. PerformClientRetrieve(client) End Sub Sub client_InstanceMoved(ByVal sender As Object, ByVal e As InstanceMovedEventArgs) Console.WriteLine("Number of moved images: {0}", e.Completed) End Sub Public Sub PerformClientRetrieve(ByVal client As RetrieveClient) Dim images As IEnumerable(Of KeyValuePair(Of String, RetrievedDataSet)) = client.RetrieveImages("", "") 'perform a wild card search For Each imageInformation As KeyValuePair(Of String, RetrievedDataSet) In images Console.WriteLine("SOPInstanceUID: {0}", imageInformation.Key) Console.WriteLine(imageInformation.Value.DataSetFilePath) Console.WriteLine("---------------------------------------------") Next imageInformation End Sub Public NotInheritable Class LEAD_VARS Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" End Class
using Leadtools; using Leadtools.Codecs; using Leadtools.Dicom; using Leadtools.Dicom.Scu.Common; using Leadtools.ImageProcessing; using Leadtools.Dicom.AddIn.Common ; using Leadtools.Dicom.Scu ; using Leadtools.Medical.Workstation.Client; using Leadtools.Medical.Workstation.Client.Local; using Leadtools.Medical.Workstation.Client.Pacs ; public void RetrieveLocalDatabase() { #if LEADTOOLS_V175_OR_LATER Leadtools.Examples.Support.SetLicense(); #else Leadtools.Examples.Support.Unlock(); #endif // #if LEADTOOLS_V175_OR_LATER AeInfo clientInfo = new AeInfo ( ); DicomScp scpInfo = new DicomScp(); clientInfo.Address = Dns.GetHostName(); //local machine clientInfo.AETitle = "TEST_CLIENT" ; clientInfo.Port = 1000 ; scpInfo.AETitle = "LEAD_SERVER"; scpInfo.Port = 104; scpInfo.Timeout = 30; bool addressFound; IPAddress[] addresses; addressFound = false; addresses = Dns.GetHostAddresses(Dns.GetHostName()); foreach (IPAddress address in addresses) { //we need to get an IP V4, won't work with IP V6 if (address.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork) { addressFound = true; scpInfo.PeerAddress = address; break; } } if (!addressFound) { throw new ArgumentException("Couldn't resolve a valid host Address. Address must conform to IP version 4"); } PacsRetrieveClient client = new PacsRetrieveClient(clientInfo, scpInfo); client.InstanceMoved += new EventHandler<InstanceMovedEventArgs>(client_InstanceMoved); client.EnableLog = true; client.LogFileName = Path.Combine(LEAD_VARS.ImagesDir, "DicomLog.txt"); client.StoreRetrievedImages = true ; //This will store the retrieved images into the local database. client.LoadDataSetOnRetrieve = false ;//Enable this if you need to read information from the DICOM dataset. PerformClientRetrieve(client); } void client_InstanceMoved(object sender, InstanceMovedEventArgs e) { Console.WriteLine ( "Number of moved images: {0}", e.Completed ) ; } public void PerformClientRetrieve(RetrieveClient client) { IEnumerable <KeyValuePair <string, RetrievedDataSet>> images = client.RetrieveImages ( "", "" ) ; //perform a wild card search foreach ( KeyValuePair <string, RetrievedDataSet> imageInformation in images ) { Console.WriteLine ( "SOPInstanceUID: {0}", imageInformation.Key ) ; Console.WriteLine ( imageInformation.Value.DataSetFilePath ) ; Console.WriteLine("---------------------------------------------" ); } } static class LEAD_VARS { public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; }