예제 #1
0
        /// <summary>
        /// Sets whether data change callbacks are enabled.
        /// </summary>
        public override void SetEnabled(bool enabled)
        {
            lock (this)
            {
                if (subscription_ == null)
                {
                    throw new NotConnectedException();
                }

                string methodName = "IOPCAsyncIO2.SetEnable";
                try
                {
                    IOPCAsyncIO2 subscription = BeginComCall <IOPCAsyncIO2>(methodName, true);
                    subscription.SetEnable((enabled)?1:0);
                }
                catch (Exception e)
                {
                    ComCallError(methodName, e);
                    throw Utilities.Interop.CreateException(methodName, e);
                }
                finally
                {
                    EndComCall(methodName);
                }
            }
        }
예제 #2
0
        /// <summary>
        /// Sets whether data change callbacks are enabled.
        /// </summary>
        public override void SetEnabled(bool enabled)
        {
            if (subscription_ == null)
            {
                throw new NotConnectedException();
            }
            lock (lock_)
            {
                string methodName = "IOPCAsyncIO2.SetEnable";
                try
                {
                    IOPCAsyncIO2 subscription = BeginComCall <IOPCAsyncIO2>(methodName, true);
                    subscription.SetEnable((enabled) ? 1 : 0);

                    if (DCOMCallWatchdog.IsCancelled)
                    {
                        throw new Exception($"{methodName} call was cancelled due to response timeout");
                    }
                }
                catch (Exception e)
                {
                    ComCallError(methodName, e);
                    throw Utilities.Interop.CreateException(methodName, e);
                }
                finally
                {
                    EndComCall(methodName);
                }
            }
        }
예제 #3
0
 public void SetEnable(bool p_DoEnable)
 {
     m_IfAsync.SetEnable(p_DoEnable);
 }
 public void SetEnable(bool doEnable)
 {
     m_IfAsync.SetEnable(doEnable);
 }