void _AddTrigNames() { string[] allChnNames = null; //系统中所有已命名的通道 string[] existChnNames = null; //已存在的通道名称 //JFInitorManager initorMgr = JFHubCenter.Instance.InitorManager; allChnNames = JFHubCenter.Instance.MDCellNameMgr.AllTrigChannelNames(); existChnNames = _station.TrigChannelNames; //工站中已有的DI通道名称 if (null == allChnNames || 0 == allChnNames.Length) { MessageBox.Show("不存在" + _chnType.ToString() + "命名通道"); return; } List <string> lstAddNames = new List <string>(); //可供添加的DI通道名称 if (null == existChnNames || 0 == existChnNames.Length) { lstAddNames.AddRange(allChnNames); } else { foreach (string chnName in allChnNames) { if (!existChnNames.Contains(chnName)) { lstAddNames.Add(chnName); } } } if (lstAddNames.Count == 0) { MessageBox.Show("没有可供添加的" + _chnType.ToString() + "命名通道"); return; } List <string> lstAddInfos = new List <string>(); foreach (string addName in lstAddNames) { JFDevCellInfo cellInfo = JFHubCenter.Instance.MDCellNameMgr.GetTrigCtrlChannelInfo(addName); if (null == cellInfo) { lstAddInfos.Add("无设备通道信息"); } else { lstAddInfos.Add("设备:" + cellInfo.DeviceID + " 通道:" + cellInfo.ChannelIndex); } } FormAddNames frm = new FormAddNames(); frm.Text = "为工站:" + _station.Name + " 添加触发光源命名通道"; frm.SetAvailedNames(lstAddNames.ToArray(), lstAddInfos.ToArray()); if (DialogResult.OK == frm.ShowDialog()) { string[] chnNamesWillAdd = null; string[] chnInfosWillAdd = null; frm.GetSelectNameInfos(out chnNamesWillAdd, out chnInfosWillAdd); for (int i = 0; i < chnNamesWillAdd.Length; i++) { string chnName = chnNamesWillAdd[i]; _station.AddTrigChannel(chnName); } _station.SaveCfg(); UpdateStation2UI(); } }
void _AddDINames() { string[] allChnNames = null; //系统中所有已命名的通道 string[] existChnNames = null; //已存在的通道名称 JFDevCellNameManeger nameMgr = JFHubCenter.Instance.MDCellNameMgr; allChnNames = nameMgr.AllDiNames(); //系统名称表中所有可用的DI通道名称 existChnNames = _station.DINames; //工站中已有的DI通道名称 if (null == allChnNames || 0 == allChnNames.Length) { MessageBox.Show("不存在" + _chnType.ToString() + "命名通道"); return; } List <string> lstAddNames = new List <string>(); //可供添加的DI通道名称 if (null == existChnNames || 0 == existChnNames.Length) { lstAddNames.AddRange(allChnNames); } else { foreach (string chnName in allChnNames) { if (!existChnNames.Contains(chnName)) { lstAddNames.Add(chnName); } } } if (lstAddNames.Count == 0) { MessageBox.Show("没有可供添加的" + _chnType.ToString() + "命名通道"); return; } List <string> lstAddInfos = new List <string>(); foreach (string addName in lstAddNames) { JFDevCellInfo chnInfo = nameMgr.GetDiCellInfo(addName); lstAddInfos.Add(string.Format("控制器:{0} - 模块:{1} - 通道:{2}", chnInfo.DeviceID, chnInfo.ModuleIndex, chnInfo.ChannelIndex)); } FormAddNames frm = new FormAddNames(); frm.Text = "为工站:" + _station.Name + " 添加Di命名通道"; frm.SetAvailedNames(lstAddNames.ToArray(), lstAddInfos.ToArray()); if (DialogResult.OK == frm.ShowDialog()) { string[] chnNamesWillAdd = null; string[] chnInfosWillAdd = null; frm.GetSelectNameInfos(out chnNamesWillAdd, out chnInfosWillAdd); for (int i = 0; i < chnNamesWillAdd.Length; i++) { string chnName = chnNamesWillAdd[i]; _station.AddDI(chnName); } _station.SaveCfg(); UpdateStation2UI(); } }
void _AddCmrNames() { string[] allChnNames = null; //系统中所有已命名的通道 string[] existChnNames = null; //已存在的通道名称 JFInitorManager initorMgr = JFHubCenter.Instance.InitorManager; allChnNames = initorMgr.GetIDs(typeof(IJFDevice_Camera)); existChnNames = _station.CameraNames; //工站中已有的DI通道名称 if (null == allChnNames || 0 == allChnNames.Length) { MessageBox.Show("不存在" + _chnType.ToString() + "命名通道"); return; } List <string> lstAddNames = new List <string>(); //可供添加的DI通道名称 if (null == existChnNames || 0 == existChnNames.Length) { lstAddNames.AddRange(allChnNames); } else { foreach (string chnName in allChnNames) { if (!existChnNames.Contains(chnName)) { lstAddNames.Add(chnName); } } } if (lstAddNames.Count == 0) { MessageBox.Show("没有可供添加的" + _chnType.ToString() + "命名通道"); return; } List <string> lstAddInfos = new List <string>(); foreach (string addName in lstAddNames) { StringBuilder sbDevInfo = new StringBuilder(); IJFDevice_Camera cmr = initorMgr.GetInitor(addName) as IJFDevice_Camera; string[] paramNames = cmr.InitParamNames; if (null != paramNames) { foreach (string paramName in paramNames) { sbDevInfo.Append(paramName + ":" + cmr.GetInitParamValue(paramName).ToString() + " "); } } lstAddInfos.Add(sbDevInfo.ToString()); } FormAddNames frm = new FormAddNames(); frm.Text = "为工站:" + _station.Name + " 添加Camera命名通道"; frm.SetAvailedNames(lstAddNames.ToArray(), lstAddInfos.ToArray()); if (DialogResult.OK == frm.ShowDialog()) { string[] chnNamesWillAdd = null; string[] chnInfosWillAdd = null; frm.GetSelectNameInfos(out chnNamesWillAdd, out chnInfosWillAdd); for (int i = 0; i < chnNamesWillAdd.Length; i++) { string chnName = chnNamesWillAdd[i]; _station.AddCamera(chnName); } _station.SaveCfg(); UpdateStation2UI(); } }