private static XElement MakeRootElement(SQEX.Ebony.Framework.Entity.EntityPackage package)
        {
            var result = new XElement("package");

            result.SetAttributeValue("name", package.simpleName_);

            return(result);
        }
        private static IEnumerable <XElement> MakeObjectElements(SQEX.Ebony.Framework.Entity.EntityPackage package)
        {
            // TODO use package.entities_; note the ownership structure
            // Need to do this recursively to get all objects
            // Seem to need to worry about IntrusivePointerDynamicArray, PointerArray, and maybe Pointer?

            //from obj in package.loadedObjects_
            //select MakeObjectElement(obj);
            return(null);
        }
        public void Export(SQEX.Ebony.Framework.Entity.EntityPackage package, string outputPath)
        {
            Debug.Assert(package != null);

            var rootElement = MakeRootElement(package);

            rootElement.Add(MakeObjectsElement());

            var xDocument = new XDocument(rootElement);

            var writerSettings = new XmlWriterSettings
            {
                OmitXmlDeclaration = false,
                Indent             = true
            };

            using (var writer = XmlWriter.Create(outputPath, writerSettings))
            {
                xDocument.Save(writer);
            }
        }