/// <summary>
        /// Deserializes an XML file with Valve Printhead Type properties then stores those properties into the input Valve PrintheadType.
        /// </summary>
        /// <param name="xmlReader"></param>
        /// <param name="printheadTypeViewModel"></param>
        public override void DeserializePrintheadType(XmlReader xmlReader, PrintheadTypeViewModel printheadTypeViewModel)
        {
            ValvePrintheadTypeViewModel valvePrintheadTypeViewModel = (ValvePrintheadTypeViewModel)printheadTypeViewModel;

            while (xmlReader.Read())
            {
                //Skip through newlines (this program's XML Writer uses newlines).
                if ((xmlReader.Name != "\n") && (!String.IsNullOrWhiteSpace(xmlReader.Name)))
                {
                    //End method if the end of "ValvePrintheadType" element is reached.
                    if ((xmlReader.Name == "ValvePrintheadType") && (xmlReader.NodeType == XmlNodeType.EndElement))
                    {
                        return;
                    }

                    switch (xmlReader.Name)
                    {
                    case "ValvePin":
                        valvePrintheadTypeViewModel.AttachedValveGPIOPinViewModel = base._microcontrollerViewModel.FindPin(xmlReader.ReadElementContentAsInt());
                        valvePrintheadTypeViewModel.ExecuteRefreshPinBySettingListCommand("ValveGPIOPinViewModelList");
                        break;
                        break;

                    default:
                        base.ReportErrorUnrecognizedElement(xmlReader);
                        break;
                    }
                }
            }
        }
Beispiel #2
0
        /// <summary>
        /// Writes Valve Printhead Type properties into XML.
        /// </summary>
        /// <param name="printheadTypeViewModel"></param>
        /// <returns></returns>
        public override void SerializePrintheadType(XmlWriter xmlWriter, PrintheadTypeViewModel printheadTypeViewModel)
        {
            if (printheadTypeViewModel != null)
            {
                ValvePrintheadTypeViewModel valvePrintheadTypeViewModel = (ValvePrintheadTypeViewModel)printheadTypeViewModel;

                //Outmost element should be "ValvePrintheadType".
                xmlWriter.WriteStartElement("ValvePrintheadType");

                //Valve Pin.
                if (valvePrintheadTypeViewModel.AttachedValveGPIOPinViewModel != null)
                {
                    xmlWriter.WriteElementString("ValvePin", valvePrintheadTypeViewModel.AttachedValveGPIOPinViewModel.PinID.ToString());
                }

                //Close outmost element "ValvePrintheadType".
                xmlWriter.WriteEndElement();
            }
        }