Beispiel #1
0
        /// <summary>
        /// 添加一个带触发功能的光源控制器
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void toolStripMenuItemAddLightTrig_Click(object sender, EventArgs e)
        {
            FormAddMChnDev fm = new FormAddMChnDev();

            fm.Text = "添加光源控制器设备_T";
            string[] devIDs = JFHubCenter.Instance.InitorManager.GetIDs(typeof(IJFDevice_LightControllerWithTrig)); //所有触发控制设备ID,过滤掉其中的光源控制器
            if (null == devIDs || 0 == devIDs.Length)
            {
                MessageBox.Show("设备列表中不存在光源控制器设备_T");
                return;
            }
            fm.SetOptionalDeviceIDs(devIDs);
            fm.SetChannelTypes(new string[] { "开关通道数量:", "触发通道数量:" });
            if (DialogResult.OK != fm.ShowDialog())
            {
                return;
            }

            JFHubCenter.Instance.MDCellNameMgr.AddLightCtrlDev(fm.DeviceID);
            JFHubCenter.Instance.MDCellNameMgr.SetLightCtrlChannelCount(fm.DeviceID, fm.ChannelCount[0]);

            JFHubCenter.Instance.MDCellNameMgr.AddTrigCtrlDev(fm.DeviceID);
            JFHubCenter.Instance.MDCellNameMgr.SetTrigCtrlChannelCount(fm.DeviceID, fm.ChannelCount[1]);
            _AddDevNode(fm.DeviceID, DevNodeCategory.LightCtrlTDev);
        }
Beispiel #2
0
        /// <summary>
        /// 添加一个触发控制器
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void toolStripMenuItemAddTrigCtrl_Click(object sender, EventArgs e)
        {
            FormAddMChnDev fm = new FormAddMChnDev();

            fm.Text = "添加触发控制器设备";
            string[] devIDs = JFHubCenter.Instance.InitorManager.GetIDs(typeof(IJFDevice_TrigController)); //所有触发控制设备ID,过滤掉其中的光源控制器
            if (null == devIDs || 0 == devIDs.Length)
            {
                MessageBox.Show("设备列表中不存在触发控制器设备");
                return;
            }
            List <string> trigDevIDs = new List <string>();

            foreach (string devID in devIDs)
            {
                if (!typeof(IJFDevice_LightController).IsAssignableFrom(JFHubCenter.Instance.InitorManager.GetInitor(devID).GetType()))
                {
                    trigDevIDs.Add(devID);
                }
            }
            if (trigDevIDs.Count == 0)
            {
                MessageBox.Show("设备列表中不存在触发控制器设备...");
                return;
            }
            fm.SetOptionalDeviceIDs(trigDevIDs.ToArray());
            fm.SetChannelTypes(new string[] { "触发通道数量:" });
            if (DialogResult.OK != fm.ShowDialog())
            {
                return;
            }

            JFHubCenter.Instance.MDCellNameMgr.AddTrigCtrlDev(fm.DeviceID);
            JFHubCenter.Instance.MDCellNameMgr.SetTrigCtrlChannelCount(fm.DeviceID, fm.ChannelCount[0]);
            _AddDevNode(fm.DeviceID, DevNodeCategory.TrigCtrlDev);
        }