InstanceAvailability Enumeration

Summary
The availability of the referenced Instance
Syntax
C#
C++/CLI
public enum InstanceAvailability 
public enum class InstanceAvailability : public System.Enum, System.IComparable, System.IConvertible, System.IFormattable   
Members
ValueMemberDescription
0NotProvidedValue not provided.
1OnlineInstances are immediately available from the Retrieve AE Title (0008,0054), and if a C-MOVE were to be requested, it would succeed in a reasonably short time.
2NearlineInstances need to be retrieved from relatively slow media such as optical disk or tape. If a C-MOVE were to be requested from the Retrieve AE Title (0008,0054), it would succeed, but may take a considerable time'
3OfflineA manual intervention is needed before the instances may be retrieved. If a C-MOVE were to be requested from the Retrieve AE Title (0008,0054), it would fail (e.g., by timeout) without such manual intervention.
4UnavailableInstances cannot be retrieved from the Retrieve AE Title (0008,0054). If a C-MOVE were to be requested, it would fail. Note that SOP Instances that are unavailable from this AE may be available from other AEs, or may have an alternate representation that is available from this AE.
Example
C#
using Leadtools; 
using Leadtools.Dicom.Scu; 
using Leadtools.Dicom.Scu.Common; 
using Leadtools.Dicom; 
using Leadtools.Dicom.Common.DataTypes; 
using Leadtools.Dicom.Common.DataTypes.Status; 
 
 
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 = Dns.GetHostEntry(Dns.GetHostName()).AddressList.FirstOrDefault(ip => ip.AddressFamily == AddressFamily.InterNetwork); 
 
   // 
   // 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, "DICOM", "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:\LEADTOOLS23\Resources\Images"; 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Dicom.Scu Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.