public static void get_dataset(string sopInstanceUID, Action <DicomDS, string, string, string> datasetFile, int numRetries, int retryInterval) { AsyncHelper.Execute(() => { if (Module.Service != null) { try { if (_Callbacks.ContainsKey(sopInstanceUID)) { _Callbacks[sopInstanceUID] = datasetFile; } else { _Callbacks.Add(sopInstanceUID, datasetFile); } Module.Service.SendMessage(GetReferencedFile, sopInstanceUID, numRetries, retryInterval); } catch (Exception e) { Logger.Global.SystemException(string.Empty, e); } } }); }
public DicomCommandStatusType OnNAction(DicomClient Client, byte PresentationId, int MessageId, string AffectedClass, string Instance, int Action, DicomDataSet Request, DicomDataSet Response) { DicomDataSet ds = new DicomDataSet(Client.Server.TemporaryDirectory); string ConnectionString = "Data Source='" + Client.Server.ServerDirectory + @"\Dicom.sdf'"; string DBFile = Client.Server.ServerDirectory + @"\Dicom.sdf"; if (!File.Exists(DBFile)) { return(DicomCommandStatusType.ResourceLimitation); } ds.Copy(Request, null, null); MyParameters parameters = new MyParameters(); parameters._client = Client; parameters._ds = ds; parameters._connectionString = ConnectionString; parameters._presentationId = PresentationId; parameters._messageId = MessageId; parameters.ServerAE = Client.Server.AETitle; result = AsyncHelper.Execute <MyParameters>(new Action <MyParameters>(this.MyDelegate), parameters); Response = null; return(DicomCommandStatusType.Success); }
public DicomCommandStatusType OnNAction(DicomClient client, byte presentationId, int messageID, string affectedClass, string instance, int action, DicomDataSet requestDS, DicomDataSet responseDS) { StorageCommitArgs args = new StorageCommitArgs { Client = client, PresentationId = presentationId, MessageId = messageID, AffectedClass = affectedClass, Instance = instance, Action = action }; args.RequestDS = new DicomDataSet(); args.RequestDS.Copy(requestDS, null, null); result = AsyncHelper.Execute <StorageCommitArgs>(new Action <StorageCommitArgs>(HandleNReport), args); // responseDS = null; return(DicomCommandStatusType.Success); }
/// <summary> /// Callback that fires every frame. /// </summary> static void OnUpdate() { AsyncHelper.Execute(); }