コード例 #1
0
        private void ProcessLinacStates()
        {
            AutoResetEvent evt = new AutoResetEvent(false);

            _processCommandEventHandler           += Linac_ProcessCommandEvent;
            _dataAccess.Linac.ProcessCommandEvent += _processCommandEventHandler;

            for (; ;)
            {
                Dictionary <LinacPacketFormat.VariableIdEnum, object> parameterList = new Dictionary <LinacPacketFormat.VariableIdEnum, object>();
                _dataAccess.Linac.GetOperatingParameters(ref parameterList);

                processUpdate(parameterList);

                evt.WaitOne(5000);
            }
        }
コード例 #2
0
 private void dataAccess_LinacConnectionStateChangeEvent(bool isConnected)
 {
     if (isConnected)
     {
         if (_StatesThread == null)
         {
             _StatesThread = new Thread(new ThreadStart(ProcessLinacStates));
             _StatesThread.Start();
         }
     }
     else
     {
         _dataAccess.Linac.ProcessCommandEvent -= _processCommandEventHandler;
         _processCommandEventHandler           -= Linac_ProcessCommandEvent;
         _StatesThread.Abort();
         _StatesThread = null;
     }
 }
コード例 #3
0
ファイル: LinacStatusManager.cs プロジェクト: BdGL3/CXPortal
        private void ProcessLinacStates()
        {
            AutoResetEvent evt = new AutoResetEvent(false);
            _processCommandEventHandler += Linac_ProcessCommandEvent;
            _dataAccess.Linac.ProcessCommandEvent += _processCommandEventHandler;

              for (; ; )
              {
                  Dictionary<LinacPacketFormat.VariableIdEnum, object> parameterList = new Dictionary<LinacPacketFormat.VariableIdEnum, object>();
                  _dataAccess.Linac.GetOperatingParameters(ref parameterList);

                  processUpdate(parameterList);

                  evt.WaitOne(5000);
              }

        }
コード例 #4
0
ファイル: LinacStatusManager.cs プロジェクト: BdGL3/CXPortal
 private void dataAccess_LinacConnectionStateChangeEvent(bool isConnected)
 {
     if (isConnected)
     {
         if (_StatesThread == null)
         {
             _StatesThread = new Thread(new ThreadStart(ProcessLinacStates));
             _StatesThread.Start();
         }
     }
     else
     {
         _dataAccess.Linac.ProcessCommandEvent -= _processCommandEventHandler;
         _processCommandEventHandler -= Linac_ProcessCommandEvent;
         _StatesThread.Abort();
         _StatesThread = null;
     }
 }