private bool AnalyzeData(XmlReader xmlRdr)
        {
            XElement rootElement = XDocument.Load(xmlRdr).Element("KYJOB");


            HeadInfo            = ElementHeadInfo.Create(rootElement.Element(ElementHeadInfo.Name));
            BoardArrays         = ElementBoardArrays.Create(rootElement.Element(ElementBoardArrays.Name));
            Footprints          = ElementFootprints.Create(rootElement.Element(ElementFootprints.Name));
            Parts               = ElementParts.Create(rootElement.Element(ElementParts.Name));
            Packages            = ElementPackages.Create(rootElement.Element(ElementPackages.Name));
            PackageBodyShapes   = ElementPackageBodyShapes.Create(rootElement.Element(ElementPackageBodyShapes.Name));
            PackageLeadShapes   = ElementPackageLeadShapes.Create(rootElement.Element(ElementPackageLeadShapes.Name));
            FootprintLeadShapes = ElementFootprintLeadShapes.Create(rootElement.Element(ElementFootprintLeadShapes.Name));
            Components          = ElementComponents.Create(rootElement.Element(ElementComponents.Name));
            Boardfovs           = ElementBoardFovs.Create(rootElement.Element(ElementBoardFovs.Name));
            Fovs   = ElementFovs.Create(rootElement.Element(ElementFovs.Name));
            BkFovs = ElementBKFovs.Create(rootElement.Element(ElementBKFovs.Name));

            return(true);
        }
        private bool AnalyzeData(XmlReader xmlRdr)
        {
            xmlRdr.MoveToContent();
            int readinfoChecker = 0;
            int checkend        = 0xFFF;

            while (xmlRdr.Read())
            {
                if (xmlRdr.NodeType == XmlNodeType.Element)
                {
                    if (string.Compare(xmlRdr.Name, ElementHeadInfo.Name, true) == 0)
                    {
                        HeadInfo         = ElementHeadInfo.Create(xmlRdr);
                        readinfoChecker |= 0x1;
                    }
                    else if (string.Compare(xmlRdr.Name, ElementParts.Name, true) == 0)
                    {
                        Parts            = ElementParts.Create(xmlRdr);
                        readinfoChecker |= 0x2;
                    }
                    else if (string.Compare(xmlRdr.Name, ElementPackages.Name, true) == 0)
                    {
                        Packages         = ElementPackages.Create(xmlRdr);
                        readinfoChecker |= 0x4;
                    }
                    else if (string.Compare(xmlRdr.Name, ElementComponents.Name, true) == 0)
                    {
                        Components       = ElementComponents.Create(xmlRdr);
                        readinfoChecker |= 0x8;
                    }
                    else if (string.Compare(xmlRdr.Name, ElementBoardArrays.Name, true) == 0)
                    {
                        BoardArrays      = ElementBoardArrays.Create(xmlRdr);
                        readinfoChecker |= 0x10;
                    }


                    else if (string.Compare(xmlRdr.Name, ElementFootprints.Name, true) == 0)
                    {
                        Footprints       = ElementFootprints.Create(xmlRdr);
                        readinfoChecker |= 0x20;
                    }
                    else if (string.Compare(xmlRdr.Name, ElementPackageBodyShapes.Name, true) == 0)
                    {
                        PackageBodyShapes = ElementPackageBodyShapes.Create(xmlRdr);
                        readinfoChecker  |= 0x40;
                    }
                    else if (string.Compare(xmlRdr.Name, ElementPackageLeadShapes.Name, true) == 0)
                    {
                        PackageLeadShapes = ElementPackageLeadShapes.Create(xmlRdr);
                        readinfoChecker  |= 0x80;
                    }

                    else if (string.Compare(xmlRdr.Name, ElementFootprintLeadShapes.Name, true) == 0)
                    {
                        FootprintLeadShapes = ElementFootprintLeadShapes.Create(xmlRdr);
                        readinfoChecker    |= 0x100;
                    }
                    else if (string.Compare(xmlRdr.Name, ElementBoardFovs.Name, true) == 0)
                    {
                        Boardfovs        = ElementBoardFovs.Create(xmlRdr);
                        readinfoChecker |= 0x200;
                    }
                    else if (string.Compare(xmlRdr.Name, ElementFovs.Name, true) == 0)
                    {
                        Fovs             = ElementFovs.Create(xmlRdr);
                        readinfoChecker |= 0x400;
                    }
                    else if (string.Compare(xmlRdr.Name, ElementBKFovs.Name, true) == 0)
                    {
                        BkFovs           = ElementBKFovs.Create(xmlRdr);
                        readinfoChecker |= 0x800;
                    }


                    else if (!xmlRdr.IsEmptyElement)
                    {
                        xmlRdr.Skip();
                    }

                    if ((readinfoChecker & checkend) == checkend)
                    {
                        break;
                    }
                }
            }

            return(true);
        }