public virtual bool Action() { _actionStartCpuCount = JFFunctions.PerformanceCounter(); bool isOK = innerFlow.Action(); _actionStopCpuCount = JFFunctions.PerformanceCounter(); return(isOK); }
public bool Action() { _startPfCnt = JFFunctions.PerformanceCounter(); _endPfCnt = _startPfCnt; if (string.IsNullOrEmpty(_filePath)) { _actionErrorInfo = "图片文件路径未设置"; _endPfCnt = JFFunctions.PerformanceCounter(); return(false); } if (!File.Exists(_filePath)) { _actionErrorInfo = "Failed By: _filePath = \"" + _filePath + "\" is not existed"; _endPfCnt = JFFunctions.PerformanceCounter(); return(false); } //if(_image != null) //{ // _image.Dispose(); // _image = null; //} try { HObject ho; HOperatorSet.ReadImage(out ho, _filePath); _image = new JFImage_Hlc(ho, 0); } catch (Exception ex) { _actionErrorInfo = "Failed By:Exception =" + ex.ToString(); _endPfCnt = JFFunctions.PerformanceCounter(); return(false); } _endPfCnt = JFFunctions.PerformanceCounter(); _actionErrorInfo = "Success"; return(true); }
public bool Action() { _startPfCnt = JFFunctions.PerformanceCounter(); if (!IsInitOK) { _endPfCnt = JFFunctions.PerformanceCounter(); _actionErrorInfo = "初始化未完成"; return(false); } IJFDevice dev = JFHubCenter.Instance.InitorManager.GetInitor(_devID) as IJFDevice; if (null == dev) { _endPfCnt = JFFunctions.PerformanceCounter(); _actionErrorInfo = "设备不存在,DevID = " + _devID; return(false); } int errCode = 0; if (_isOpen) { errCode = dev.OpenDevice(); } else { errCode = dev.CloseDevice(); } _endPfCnt = JFFunctions.PerformanceCounter(); if (0 != errCode) { _actionErrorInfo = (_isOpen ? "打开" : "关闭") + "设备失败:" + dev.GetErrorInfo(errCode); return(false); } _actionErrorInfo = "Success"; return(true); }
public override bool Action() { _actionStartPerformance = JFFunctions.PerformanceCounter(); _status = 1; _eventCmd.Set(); if (!IsInitOK) { _actionStopPerformance = JFFunctions.PerformanceCounter(); _actionErrorInfo = "Action failed by:is not init OK,initError:" + GetInitErrorInfo(); _status = 0; return(false); } try { if (_isIncludeEnd) //包含结束值 { if (_interval >= 0) //正向增加 { for (_forValue = _startValue; _forValue <= _endValue; _forValue += _interval) { InnerFlow.DataPool["For_Value"] = _forValue; if (!InnerFlow.Action()) { _status = 0; _actionStopPerformance = JFFunctions.PerformanceCounter(); return(false); } if (2 == _status) { _eventCmd.WaitOne(); if (3 == _status) { _status = 0; _actionStopPerformance = JFFunctions.PerformanceCounter(); if (InnerFlow.Stop(10) != JFWorkCmdResult.Success) { InnerFlow.Abort(); } throw new JFBreakMethodFlowException(); } } } } else //负向递减 { for (_forValue = _startValue; _forValue >= _endValue; _forValue += _interval) { InnerFlow.DataPool["For_Value"] = _forValue; if (!InnerFlow.Action()) { _status = 0; _actionStopPerformance = JFFunctions.PerformanceCounter(); return(false); } if (2 == _status) { _eventCmd.WaitOne(); if (3 == _status) { _status = 0; if (InnerFlow.Stop(10) != JFWorkCmdResult.Success) { InnerFlow.Abort(); } _actionStopPerformance = JFFunctions.PerformanceCounter(); throw new JFBreakMethodFlowException(); } } } } } else//不包含结束值 { if (_interval >= 0) //正向增加 { for (_forValue = _startValue; _forValue < _endValue; _forValue += _interval) { InnerFlow.DataPool["For_Value"] = _forValue; if (!InnerFlow.Action()) { _status = 0; _actionStopPerformance = JFFunctions.PerformanceCounter(); return(false); } if (2 == _status) { _eventCmd.WaitOne(); if (3 == _status) { _status = 0; if (InnerFlow.Stop(10) != JFWorkCmdResult.Success) { InnerFlow.Abort(); } _actionStopPerformance = JFFunctions.PerformanceCounter(); throw new JFBreakMethodFlowException(); } } } } else //负向递减 { for (_forValue = _startValue; _forValue > _endValue; _forValue += _interval) { InnerFlow.DataPool["For_Value"] = _forValue; if (!InnerFlow.Action()) { _status = 0; _actionStopPerformance = JFFunctions.PerformanceCounter(); return(false); } if (2 == _status) { _eventCmd.WaitOne(); if (3 == _status) { _status = 0; if (InnerFlow.Stop(10) != JFWorkCmdResult.Success) { InnerFlow.Abort(); } _actionStopPerformance = JFFunctions.PerformanceCounter(); throw new JFBreakMethodFlowException(); } } } } } } catch (JFBreakMethodFlowException) //Break 正常退出循环 { _status = 0; _actionStopPerformance = JFFunctions.PerformanceCounter(); _actionErrorInfo = "Success - break while"; return(true); } _actionStopPerformance = JFFunctions.PerformanceCounter(); return(true); }
protected void StopActionTimer() { _stopPerformanceCounter = JFFunctions.PerformanceCounter(); }
protected void StartActionTimer() { _startPerformanceCounter = JFFunctions.PerformanceCounter(); }