public void Move(
DicomScp Scp,
string DestAE,
string StudyInstanceUID
)
public:
void Move(
DicomScp^ Scp,
String^ DestAE,
String^ StudyInstanceUID
)
Scp
The peer connection to send the C-MOVE-REQ to.
DestAE
The name of the Application Entity to which to move the data. If DestAE is null or empty the dataset will be moved to the AETitle defined in DicomFindSCU
StudyInstanceUID
The study instance UID of the study to move.
Performs a study level move. All series under the specified study will be moved to the DestAE.
Moves the specified study to the local computer.
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 MoveStudy()
{
DicomEngine.Startup();
DicomNet.Startup();
QueryRetrieveScu retrieveStudy = new QueryRetrieveScu();
FindQuery query = new FindQuery();
DicomScp scp = new DicomScp();
//
// Change these parameters to reflect the calling AETitle.
//
retrieveStudy.AETitle = "LEAD_CLIENT";
retrieveStudy.HostPort = 1000;
retrieveStudy.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");
retrieveStudy.BeforeCMove += new BeforeCMoveDelegate(retrieveStudy_BeforeCMove);
retrieveStudy.Moved += new MovedDelegate(retrieveStudy_Moved);
retrieveStudy.AfterCMove += new AfterCMoveDelegate(retrieveStudy_AfterCMove);
retrieveStudy.HostReady += RetrieveStudy_HostReady;
retrieveStudy.Move(scp, string.Empty, "1.2.840.114257.3.6.5.41964868");
DicomNet.Shutdown();
DicomEngine.Shutdown();
}
private void RetrieveStudy_HostReady(object sender, HostReadyEventArgs e)
{
if (e.ScpHost != null)
{
Console.WriteLine("HostReady: Host AETitle:{0} Host Port:{1}", e.ScpHost.AETitle, e.ScpHost.HostPort);
}
}
void retrieveStudy_BeforeCMove(object sender, BeforeCMoveEventArgs e)
{
Console.WriteLine("Before CMove");
}
void retrieveStudy_Moved(object sender, MovedEventArgs e)
{
Console.WriteLine(e.Patient.Name.Full);
Console.WriteLine(e.Study.AccessionNumber);
Console.WriteLine(e.Series.Number);
Console.WriteLine(e.Instance.SOPInstanceUID);
Console.WriteLine("==========================================");
}
void retrieveStudy_AfterCMove(object sender, AfterCMoveEventArgs e)
{
Console.WriteLine("{0} Completed", e.Completed);
Console.WriteLine("{0} Failed", e.Failed);
Console.WriteLine("{0} Warning", e.Warning);
Console.WriteLine("Status: {0}", e.Status);
if (e.Status != DicomCommandStatusType.Success)
{
string statusAllString = e.StatusAll.ToString(StatusFormatFlags.IgnoreStatus, "\n", "\t");
Console.WriteLine(statusAllString);
}
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document