Performs DICOM Instance retrieve operations against DICOM servers.
Syntax
Visual Basic (Declaration) | |
---|
Public Class PacsRetrieveClient
Inherits RetrieveClient |
Example
Visual Basic | Copy Code |
---|
<Test> _
Public Sub RetrieveLocalDatabase()
Leadtools.Examples.Support.Unlock()
Dim clientInfo As AeInfo = New AeInfo ()
Dim scpInfo As DicomScp = New DicomScp()
clientInfo.Address = Dns.GetHostName()
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
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.LoadRetrievedDataSet = False
client.EnableLog = True
client.LogFileName = ("c:\DicomLog.txt")
client.StoreRetrievedImages = True
PerformClientRetrieve(client)
End Sub
Public Sub PerformClientRetrieve(ByVal client As RetrieveClient)
Dim images As IEnumerable(Of KeyValuePair(Of String, RetrievedDataSet)) = client.RetrieveImages("", "")
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 |
C# | Copy Code |
---|
public void RetrieveLocalDatabase() { Leadtools.Examples.Support.Unlock(); 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.LoadRetrievedDataSet = false; //Enable this if you need to read information from the DICOM dataset. client.EnableLog = true; client.LogFileName = ( @"c:\DicomLog.txt" ) ; client.StoreRetrievedImages = true ; //This will store the retrieved images into the local database. PerformClientRetrieve(client); } 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("---------------------------------------------" ); } } |
Remarks
Inheritance Hierarchy
Requirements
Target Platforms: Microsoft .NET Framework 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family
See Also