public static RetrieveClient CreateRetrieveClient(DicomClientMode clientMode) { try { switch (clientMode) { case DicomClientMode.LocalDb: { return(CreateLocalRetrieveClient( )); } case DicomClientMode.Pacs: { Leadtools.Dicom.Scu.DicomScp scp; if (ConfigurationData.ActivePacs == null) { throw new InvalidOperationException("No active PACS Server defined"); } scp = new Leadtools.Dicom.Scu.DicomScp( ); scp.AETitle = ConfigurationData.ActivePacs.AETitle; scp.PeerAddress = Utils.ResolveIPAddress(ConfigurationData.ActivePacs.Address); scp.Port = ConfigurationData.ActivePacs.Port; scp.Timeout = ConfigurationData.ActivePacs.Timeout; return(CreatePacsRetrieveClient(scp)); } case DicomClientMode.DicomDir: { DicomDirRetrieveClient client; client = new DicomDirRetrieveClient(ConfigurationData.WorkstationClient.ToAeInfo( ), ConfigurationData.CurrentDicomDir); return(client); } default: { throw new NotImplementedException("Dicom Client not implemented."); } } } catch (Exception exception) { System.Diagnostics.Debug.Assert(false, exception.Message); throw; } }
void viewer_SeriesDropLoaderRequested(object sender, SeriesDropLoaderRequestedEventArgs e) { if (__ViewerContainer.ArgumentsService.Exists <LoadSeriesFromDicomDirCommandArgument> ( )) { string dicomDir; DicomDirRetrieveClient client; dicomDir = __ViewerContainer.ArgumentsService.PopArgument <LoadSeriesFromDicomDirCommandArgument> ( ).DicomDirFile; client = new DicomDirRetrieveClient(null, dicomDir); e.SeriesLoader = new MedicalViewerLoader(client); } }