LEADTOOLS Medical (Leadtools.Dicom.Scu assembly)
LEAD Technologies, Inc

Store(DicomScp,DicomDataSet) Method

Example 





The peer connection to send the C-STORE-REQ to.
The dataset to send.
Sends a C-STORE-REQ message to a peer member of a connection defined by SCP.
Syntax
public void Store( 
   DicomScp Scp,
   DicomDataSet dataset
)
'Declaration
 
Public Overloads Sub Store( _
   ByVal Scp As DicomScp, _
   ByVal dataset As DicomDataSet _
) 
'Usage
 
Dim instance As StoreScu
Dim Scp As DicomScp
Dim dataset As DicomDataSet
 
instance.Store(Scp, dataset)
public void Store( 
   DicomScp Scp,
   DicomDataSet dataset
)
 function Leadtools.Dicom.Scu.StoreScu.Store(DicomScp,DicomDataSet)( 
   Scp ,
   dataset 
)
public:
void Store( 
   DicomScp^ Scp,
   DicomDataSet^ dataset
) 

Parameters

Scp
The peer connection to send the C-STORE-REQ to.
dataset
The dataset to send.
Exceptions
ExceptionDescription
System.ArgumentNullException Thrown when SCP is null.
Example
 
Public Sub StoreDataset()
         DicomEngine.Startup()
         DicomNet.Startup()

         Dim cstoreDataset As StoreScu = New StoreScu()
         Dim scp As DicomScp = New DicomScp()
         Dim ds As DicomDataSet = New DicomDataSet()

         '
         ' Change these parameters to reflect the calling AETitle.
         '
         cstoreDataset.AETitle = "LEAD_CLIENT"
         cstoreDataset.HostPort = 1000
         cstoreDataset.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")

         ds.Load(Path.Combine(LEAD_VARS.ImagesDir, "Image1.dcm"), DicomDataSetLoadFlags.None)

         AddHandler cstoreDataset.ReceiveBuffer, AddressOf cstoreDataset_ReceiveBuffer
         AddHandler cstoreDataset.BeforeCStore, AddressOf cstoreDataset_BeforeCStore
         AddHandler cstoreDataset.AfterCStore, AddressOf cstoreDataset_AfterCStore
         cstoreDataset.Compression = Compression.Lossless
         cstoreDataset.Store(scp, ds)

         DicomNet.Shutdown()
         DicomEngine.Shutdown()
     End Sub

     Private Sub cstoreDataset_ReceiveBuffer(ByVal sender As Object, ByVal e As ReceiveBufferEventArgs)
         Console.WriteLine("{0} bytes of data received", e.BufferSize)
     End Sub

     Private Sub cstoreDataset_BeforeCStore(ByVal sender As Object, ByVal e As BeforeCStoreEventArgs)
         '
         ' Stop storing if we received an error
         '
         If Not e.Error Is Nothing Then
             e.Skip = SkipMethod.AllFiles
         End If
     End Sub

     Private Sub cstoreDataset_AfterCStore(ByVal sender As Object, ByVal e As AfterCStoreEventArgs)
         Dim msg As String

         msg = String.Format("Dataset store complete. Status: {0}", e.Status)
         Console.WriteLine(msg)
     End Sub


Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
public void StoreDataset()
     {
         DicomEngine.Startup();
         DicomNet.Startup();

         StoreScu storeDataset = new StoreScu();
         DicomScp scp = new DicomScp();
         DicomDataSet ds = new DicomDataSet();

         //
         // Change these parameters to reflect the calling AETitle.
         //


         storeDataset.AETitle = "LEAD_CLIENT";
         storeDataset.HostPort = 1000;
         storeDataset.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");

         string fileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.dcm");
         ds.Load(fileName, DicomDataSetLoadFlags.None);

         storeDataset.ReceiveBuffer += new ReceiveBufferDelegate(storeDataset_ReceiveBuffer);
         storeDataset.BeforeCStore += new BeforeCStoreDelegate(storeDataset_BeforeCStore);
         storeDataset.AfterCStore += new AfterCStoreDelegate(storeDataset_AfterCStore);
         storeDataset.Compression = Compression.Lossless;
         storeDataset.Store(scp, ds);

         DicomNet.Shutdown();
         DicomEngine.Shutdown();
     }

     void storeDataset_ReceiveBuffer(object sender, ReceiveBufferEventArgs e)
     {
         Console.WriteLine("{0} bytes of data received", e.BufferSize);
     }

     void storeDataset_BeforeCStore(object sender, BeforeCStoreEventArgs e)
     {
         //
         // Stop storing if we received an error
         //


         if (e.Error != null)
             e.Skip = SkipMethod.AllFiles;
     }

     void storeDataset_AfterCStore(object sender, AfterCStoreEventArgs e)
     {
         string msg;

         msg = string.Format("Dataset store complete. Status: {0}", e.Status);
         Console.WriteLine(msg);
     }


static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
Requirements

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

See Also

Reference

StoreScu Class
StoreScu Members
Overload List

 

 


Products | Support | Contact Us | Copyright Notices

© 2006-2012 All Rights Reserved. LEAD Technologies, Inc.

Leadtools.Dicom.Scu requires a Medical toolkit license and unlock key. For more information, refer to: LEADTOOLS Toolkit Features