示例#1
0
 private static void _taskDoneHandler(Pooler.Base pool, TaskDoneEventArgs poolerTaskDoneEventArgs)
 {
     lock (Program._taskDoneCounterLock) {
         Program._taskDoneCounter++;
         Program._currentlyRunningTasksCounter = poolerTaskDoneEventArgs.RunningTasksCount;
     }
 }
 private void _taskDoneHandler(Pooler.Base pool, TaskDoneEventArgs poolTaskDoneEventArgs)
 {
     lock (this._taskDoneCounterLock) {
         this._taskDoneCounter++;
         this._currentlyRunningTasksCounter = poolTaskDoneEventArgs.RunningTasksCount;
     }
 }
示例#3
0
 private void Apply_Voltage_Done(object sender, TaskDoneEventArgs e)
 {
     outputTask.Stop();
     outputTask.Dispose();
     outputTask = null;
     MainWindow.WindowInstance.Dispatcher.BeginInvoke(new MainWindow.Append_Log_Delegate(MainWindow.WindowInstance.Append_Log),
                                                      "Done: Apply voltage \n"
                                                      );
 }
示例#4
0
        private void WriterTask_Done(object sender, TaskDoneEventArgs e)
        {
            try
            {
                if (!IsWriting)
                {
                    return;
                }


                CallWriteScanEnd();
            }
            catch (Exception ex)
            {
                LastError = ex;
            }
        }
        /// <summary>
        /// Event handler that gets called (by a task) whenever a task finishes. If there is an error in the task, then it will get reported here.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void aTaskFinished(object sender, TaskDoneEventArgs e)
        {
            long eventTime = DateTime.Now.Ticks;

            if (e.Error != null)
            {
                messageLog(this, new MessageEvent("A task ended prematurely due to an error: " + e.Error.Message + e.Error.StackTrace));
                displayError();
                taskErrorsDetected = true;
            }
            else
            {
                Task daqTask = sender as Task;
                if (daqTask != null)
                {
                    if (daqTask.Devices != null && daqTask.Devices.Length != 0)
                    {
                        messageLog(this, new MessageEvent("daqMx Task on device " + daqTask.Devices[0] + " finished."));
                    }
                    else
                    {
                        messageLog(this, new MessageEvent("daqMx Task on unknown device finished."));
                    }

                    if (!clientFinishedRun)
                    {
                        lock (taskFinishTimeClicks)
                        {
                            taskFinishTimeClicks.Add(eventTime);
                        }
                    }
                }
                else
                {
                    messageLog(this, new MessageEvent("non-daqMx Task " + sender.ToString() + " finished."));
                }
            }
        }
示例#6
0
        /// <summary>
        /// Fired when we crossed the trigger
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnTaskDoneClosing(object sender, TaskDoneEventArgs e)
        {
            //            
            // Stop moving and start recording the data
            //
            m_quitJunctionClosingOperation = true;

            //
            // We need to dispose the triggered task here in order to start the real time task on te main thread.
            //
            m_activeTriggeredTask.Dispose();
        }
示例#7
0
 void daqTask2_Done(object sender, TaskDoneEventArgs e)
 {
     daqTask2_EveryNSamplesWritten(sender, null);
 }