Error processing SSI file
LEADTOOLS Medical (Leadtools.Medical.Workstation.Client assembly)

Show in webframe

PacsRetrieveClient Class






Members 
Performs DICOM Instance retrieve operations against DICOM servers.
Object Model
Syntax
public class PacsRetrieveClient : Leadtools.Medical.Workstation.Client.RetrieveClient 
'Declaration
 
Public Class PacsRetrieveClient 
   Inherits Leadtools.Medical.Workstation.Client.RetrieveClient
'Usage
 
Dim instance As PacsRetrieveClient

            

            
public ref class PacsRetrieveClient : public Leadtools.Medical.Workstation.Client.RetrieveClient 
Remarks

This class supports image retrieval either by moving them into another server or by retrieving them locally.

If the images are retrieved locally you can specify that the retrieved images be stored in a local storage source by setting the StoreRetrievedImages property to true.

Example
Copy Code  
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

         <TestMethod()> _
         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 ;

         [TestMethod]
         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";
         }
Requirements

Target Platforms

See Also

Reference

PacsRetrieveClient Members
Leadtools.Medical.Workstation.Client.Pacs Namespace

Error processing SSI file
Leadtools.Medical.Workstation.Client requires a Medical toolkit license and unlock key. For more information, refer to: Imaging Pro/Document/Medical Features