Пример #1
0
        /// <summary>
        /// Reads the active mapping into memory
        /// </summary>
        public void ReadMapping()
        {
            // open the XML file
            //string xmlFileLocation = @"G:\gawa\code\ACRender\ACRender\DynamicParser\DataStructures.xml";
            string xmlFileLocation = @"E:\gawa\code\ACRender_ToD\ACRender\DynamicParser\DataStructures.xml";

            ObjectFromXMLDeserializer <Structures> deser       = new ObjectFromXMLDeserializer <Structures>();
            XmlDeserializationResult <Structures>  deserResult = deser.Deserialize(xmlFileLocation, XSDType.DataStructures);

            if (!deserResult.Success)
            {
                throw new Exception("Failed to load the data structure definition");
            }

            // clear the lookup tables
            m_typeDefs.Clear();

            // we've read the structure into memory.. put them into the lookup tables
            Structures structures = deserResult.Value;

            foreach (TypeDef typeDef in structures.TypeDef)
            {
                m_typeDefs.Add(typeDef.Name, typeDef);
            }
            foreach (DataFileDef dataFileDef in structures.DataFileDef)
            {
                m_dataFileDefs.Add(dataFileDef.Name, dataFileDef);
            }
        }
Пример #2
0
 /// <summary>
 /// Loads the cached list
 /// </summary>
 /// <returns>Returns whether loading of the cached list
 /// succeeded.</returns>
 private bool LoadCachedList()
 {
     try
     {
         FileInfo cacheFile = new FileInfo(Settings.FileListCacheDir + m_sourceHash + ".xml");
         if (cacheFile.Exists)
         {
             ObjectFromXMLDeserializer <CachedFileList.CachedFileList> deser       = new ObjectFromXMLDeserializer <Gawa.ACRender.DynamicParser.CachedFileList.CachedFileList>();
             XmlDeserializationResult <CachedFileList.CachedFileList>  deserResult = deser.Deserialize(cacheFile.FullName, XSDType.CachedFileList);
             if (deserResult.Success)
             {
                 m_fileGroups.Clear();
                 foreach (FileGroup group in deserResult.Value.FileGroup)
                 {
                     m_fileGroups.Add(group.number, group);
                 }
                 return(true);
             }
         }
         return(false);
     }
     catch (Exception)
     {
         return(false);
     }
 }