Пример #1
0
        public DaqControl(DaqMetaDigest md, BoardMetaDigest mb, Form form)
        {
            string controlName;
            string portType = md.Porttype.ToString();

            if (portType.EndsWith("C"))
            {
                portType += "L";
            }

            controlName = "gbBoard" + mb.Number + portType;

            Control[] found = form.Controls.Find(controlName, true);

            if (found.Count() != 1)
            {
                return;
            }

            gb      = (GroupBox)found[0];
            gb.Text = md.Porttype + ((md.Portdir == MccDaq.DigitalPortDirection.DigitalIn) ? " [I]" : " [O]");

            nbits = md.Nbits;
            cbs   = new CheckBox[nbits];
            for (int bit = 0; bit < nbits; bit++)
            {
                controlName = "cb" +
                              "Board" + mb.Number.ToString() +
                              portType +
                              "bit" + bit.ToString();

                found = form.Controls.Find(controlName, true);
                if (found.Count() != 1)
                {
                    continue;
                }

                cbs[bit] = (CheckBox)found[0];

                string s   = "[" + bit.ToString() + "] " + md.Owners[bit];
                int    idx = s.IndexOf('@');
                if (idx != -1)
                {
                    s = s.Remove(idx);
                }

                cbs[bit].Text = s;
            }
        }
Пример #2
0
        public BoardControl(BoardMetaDigest mb, Form form)
        {
            Control[] controls = form.Controls.Find("gbBoard" + mb.Number, true);
            if (controls.Count() == 1)
            {
                gb = (GroupBox)controls[0];
                if (mb.Type == WiseBoard.BoardType.Soft)
                {
                    gb.Text += " [Simulated]";
                }
            }

            DaqControls = new List <DaqControl>(mb.Daqs.Count);
            foreach (DaqMetaDigest md in mb.Daqs)
            {
                DaqControls.Add(new DaqControl(md, mb, form));
            }
        }