public override AmlCollection ToAml() { var element = new InternalElement { Name = "DeviceFunction", Id = "DeviceFunction" }; if (Features != null) { element.InternalElements.AddRange(Features.ToAml().Cast <InternalElement>()); } if (VariableCollection != null) { element.InternalElements.AddRange(VariableCollection.ToAml().Cast <InternalElement>()); } if (EventCollection != null) { element.InternalElements.AddRange(EventCollection.ToAml().Cast <InternalElement>()); } if (DataTypeCollection != null) { element.InternalElements.AddRange(DataTypeCollection.ToAml().Cast <InternalElement>()); } if (ProcessDataCollection != null) { element.InternalElements.AddRange(ProcessDataCollection.ToAml().Cast <InternalElement>()); } return(AmlCollection.Of(element)); }
public override void Deserialize(XElement element) { if (element.SubElement("Features") != null) { Features = new Features(); Features.Deserialize(element.SubElement("Features")); } if (element.SubElement("VariableCollection") != null) { VariableCollection = new VariableCollection(); VariableCollection.Deserialize(element.SubElement("VariableCollection")); } if (element.SubElement("ProcessDataCollection") != null) { ProcessDataCollection = new ProcessDataCollection(); ProcessDataCollection.Deserialize(element.SubElement("ProcessDataCollection")); } if (element.SubElement("EventCollection") != null) { EventCollection = new EventCollection(); EventCollection.Deserialize(element.SubElement("EventCollection")); } if (element.SubElement("DatatypeCollection") == null) { return; } DataTypeCollection = new DataTypeCollection(); DataTypeCollection.Deserialize(element.SubElement("DatatypeCollection")); }