public RegisterItem(XElement reg, RegisterGroupItem parent, RegViewModel owner) { Element = reg; ParentItem = Parent = parent; Owner = owner; Name = reg.Attribute("name").Value; Description = reg.Element("description").Value; ItemPath = Path.Combine(parent.ItemPath, Name); Icon = EmbSysRegView.Properties.Resources.unselected_register; try { var val = (reg.Attribute("resetvalue") != null) ? reg.Attribute("resetvalue").Value.Trim() : ""; if (val.IndexOf('x') > 0) { val = val.Substring(val.IndexOf('x') + 1); } Reset = Convert.ToUInt32((val.Length > 0) ? val : "0x00", 16); Access = reg.Attribute("access").Value; val = reg.Attribute("address").Value.Trim(); if (val.IndexOf('x') > 0) { val = val.Substring(val.IndexOf('x') + 1); } Address = Convert.ToUInt32(val, 16); } catch (Exception ex) { Description = "PARSE ERROR: " + ex.Message; } }
public GroupItem(XElement group, RegViewModel owner) { Element = group; Owner = owner; Name = group.Attribute("name").Value; Description = group.Attribute("description").Value; ItemPath = Name; }
public RegisterGroupItem(XElement regGroup, GroupItem parent, RegViewModel owner) { Element = regGroup; ParentItem = Parent = parent; Owner = owner; Name = regGroup.Attribute("name").Value; Description = regGroup.Attribute("description").Value; ItemPath = Path.Combine(parent.ItemPath, Name); }
public FieldItem(XElement reg, RegisterItem parent, RegViewModel owner) { Element = reg; ParentItem = Parent = parent; Owner = owner; Name = reg.Attribute("name").Value; BitOffset = int.Parse(reg.Attribute("bitoffset").Value); BitLength = int.Parse(reg.Attribute("bitlength").Value); var attr = reg.Attribute("description"); var elem = reg.Element("description"); if (attr != null) { Description = attr.Value; } else if (elem != null) { Description = elem.Value; } else { Description = ""; } if (BitLength > 1) { Name = String.Format("{0} (bits {1}-{2})", Name, BitOffset, BitOffset + BitLength - 1); } else { Name = String.Format("{0} (bit {1})", Name, BitOffset); } ItemPath = Path.Combine(parent.ItemPath, Name); Icon = EmbSysRegView.Properties.Resources.unselected_field; foreach (var interp in Element.Descendants("interpretation")) { var key = uint.Parse(interp.Attribute("key").Value); var text = interp.Attribute("text").Value.Trim(); interpretations.Add(key, text); } }
public FieldItem(XElement reg, RegisterItem parent, RegViewModel owner) { Element = reg; ParentItem = Parent = parent; Owner = owner; Name = reg.Attribute("name").Value; BitOffset = int.Parse(reg.Attribute("bitoffset").Value); BitLength = int.Parse(reg.Attribute("bitlength").Value); var attr = reg.Attribute("description"); var elem = reg.Element("description"); if (attr != null) Description = attr.Value; else if (elem != null) Description = elem.Value; else Description = ""; if (BitLength > 1) Name = String.Format("{0} (bits {1}-{2})", Name, BitOffset, BitOffset + BitLength - 1); else Name = String.Format("{0} (bit {1})", Name, BitOffset); ItemPath = Path.Combine(parent.ItemPath, Name); Icon = EmbSysRegView.Properties.Resources.unselected_field; foreach (var interp in Element.Descendants("interpretation")) { var key = Convert.ToUInt32(interp.Attribute("key").Value, 16); var text = interp.Attribute("text").Value.Trim(); interpretations[key] = text; } }
public RegisterItem(XElement reg, RegisterGroupItem parent, RegViewModel owner) { Element = reg; ParentItem = Parent = parent; Owner = owner; Name = reg.Attribute("name").Value; Description = reg.Element("description").Value; ItemPath = Path.Combine(parent.ItemPath, Name); Icon = EmbSysRegView.Properties.Resources.unselected_register; try { var val = (reg.Attribute("resetvalue") != null) ? reg.Attribute("resetvalue").Value.Trim() : ""; if (val.IndexOf('x') > 0) val = val.Substring(val.IndexOf('x') + 1); Reset = Convert.ToUInt32((val.Length > 0) ? val : "0x00", 16); Access = reg.Attribute("access").Value; val = reg.Attribute("address").Value.Trim(); if (val.IndexOf('x') > 0) val = val.Substring(val.IndexOf('x') + 1); Address = Convert.ToUInt32(val, 16); } catch (Exception ex) { Description = "PARSE ERROR: " + ex.Message; } }