Leadtools.Dicom.Scu Namespace > QueryRetrieveScu Class > Find Method : Find(DicomScp,FindQuery,Boolean,String) Method |
true
add optional C-FIND-REQ items.
public void Find( DicomScp Scp, FindQuery Query, bool AddOptional, string TemplateFile )
'Declaration Public Overloads Sub Find( _ ByVal Scp As DicomScp, _ ByVal Query As FindQuery, _ ByVal AddOptional As Boolean, _ ByVal TemplateFile As String _ )
'Usage Dim instance As QueryRetrieveScu Dim Scp As DicomScp Dim Query As FindQuery Dim AddOptional As Boolean Dim TemplateFile As String instance.Find(Scp, Query, AddOptional, TemplateFile)
public void Find( DicomScp Scp, FindQuery Query, bool AddOptional, string TemplateFile )
function Leadtools.Dicom.Scu.QueryRetrieveScu.Find(DicomScp,FindQuery,Boolean,String)( Scp , Query , AddOptional , TemplateFile )
public: void Find( DicomScp^ Scp, FindQuery^ Query, bool AddOptional, String^ TemplateFile )
true
add optional C-FIND-REQ items.Public Sub FindInstances() DicomEngine.Startup() DicomNet.Startup() Dim findInstance As QueryRetrieveScu = New QueryRetrieveScu() Dim query As FindQuery = New FindQuery() Dim scp As DicomScp = New DicomScp() ' ' Change these parameters to reflect the calling AETitle. ' findInstance.AETitle = "LEAD_CLIENT" findInstance.HostPort = 1000 findInstance.HostAddress = IPAddress.Parse(Dns.GetHostByName(Dns.GetHostName()).AddressList(0).ToString()) ' ' Change these parameters to reflect the called AETitle (server). ' scp.AETitle = "MI_SERVER" scp.Port = 104 scp.Timeout = 60 scp.PeerAddress = IPAddress.Parse("10.1.1.96") query.QueryLevel = QueryLevel.Image query.StudyInstanceUID = "1.2.840.114257.3.6.5.41964868" query.SeriesInstanceUID = "1.2.840.114257.3.6.5.5.4214471" AddHandler findInstance.BeforeCFind, AddressOf findInstance_BeforeCFind AddHandler findInstance.MatchInstance, AddressOf findInstance_MatchInstance AddHandler findInstance.AfterCFind, AddressOf findInstance_AfterCFind findInstance.Find(scp, query, True, Path.Combine(LEAD_VARS.ImagesDir, "image1.dcm")) DicomNet.Shutdown() DicomEngine.Shutdown() End Sub Private Sub findInstance_BeforeCFind(ByVal sender As Object, ByVal e As BeforeCFindEventArgs) Console.WriteLine("Before CFind: " & e.QueryLevel.ToString()) End Sub Private Sub findInstance_MatchInstance(ByVal sender As Object, ByVal e As MatchEventArgs(Of CompositeObjectInstance)) Console.WriteLine("SOP Instance UID: " & e.Info.SOPInstanceUID) Console.WriteLine("SOP Class UID: " & e.Info.SOPClassUID) Console.WriteLine("Instance #: " & e.Info.InstanceNumber) Console.WriteLine("Availability: " & e.Availability) End Sub Private Sub findInstance_AfterCFind(ByVal sender As Object, ByVal e As AfterCFindEventArgs) Debug.Assert(e.Status = DicomCommandStatusType.Success) End Sub Public NotInheritable Class LEAD_VARS Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" End Class
public void FindInstances() { DicomEngine.Startup(); DicomNet.Startup(); QueryRetrieveScu findInstance = new QueryRetrieveScu(); FindQuery query = new FindQuery(); DicomScp scp = new DicomScp(); // // Change these parameters to reflect the calling AETitle. // findInstance.AETitle = "LEAD_CLIENT"; findInstance.HostPort = 1000; findInstance.HostAddress = IPAddress.Parse(Dns.GetHostByName(Dns.GetHostName()).AddressList[0].ToString()); // // Change these parameters to reflect the called AETitle (server). // scp.AETitle = "MI_SERVER"; scp.Port = 104; scp.Timeout = 60; scp.PeerAddress = IPAddress.Parse("10.1.1.96"); query.QueryLevel = QueryLevel.Image; query.StudyInstanceUID = "1.2.840.114257.3.6.5.41964868"; query.SeriesInstanceUID = "1.2.840.114257.3.6.5.5.4214471"; findInstance.BeforeCFind += new BeforeCFindDelegate(findInstance_BeforeCFind); findInstance.MatchInstance += new MatchInstanceDelegate(findInstance_MatchInstance); findInstance.AfterCFind += new AfterCFindDelegate(findInstance_AfterCFind); findInstance.Find(scp, query, true, Path.Combine(LEAD_VARS.ImagesDir,"Image1.dcm")); DicomNet.Shutdown(); DicomEngine.Shutdown(); } void findInstance_BeforeCFind(object sender, BeforeCFindEventArgs e) { Console.WriteLine("Before CFind: " + e.QueryLevel.ToString()); } void findInstance_MatchInstance(object sender, MatchEventArgs<CompositeObjectInstance> e) { Console.WriteLine("SOP Instance UID: " + e.Info.SOPInstanceUID); Console.WriteLine("SOP Class UID: " + e.Info.SOPClassUID); Console.WriteLine("Instance #: " + e.Info.InstanceNumber); Console.WriteLine("Availability: " + e.Availability); } void findInstance_AfterCFind(object sender, AfterCFindEventArgs e) { Debug.Assert(e.Status == DicomCommandStatusType.Success); } static class LEAD_VARS { public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; }
Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2