Example #1
0
        private static TiledVolumeDescription GetTiledVolumeDescription(string mapRootDirectory, string tiledVolumeDescriptionPath)
        {
            tiledVolumeDescription tiledVolumeDescriptionXml;

            try
            {
                XmlSerializer tiledVolumeDescriptionSerializer = new XmlSerializer(typeof(tiledVolumeDescription));

                // A FileStream is needed to read the XML document.
                using (var fileStream = new FileStream(tiledVolumeDescriptionPath, FileMode.Open))
                {
                    System.Xml.XmlReader xmlTextReader = new XmlTextReader(fileStream);

                    // Declare an object variable of the type to be deserialized.
                    tiledVolumeDescriptionXml = (tiledVolumeDescription)tiledVolumeDescriptionSerializer.Deserialize(xmlTextReader);
                }
            }
            catch (Exception e)
            {
                throw new Exception("Error reading XML from " + tiledVolumeDescriptionPath + ":\n" + e.Message);
            }

            var tiledVolumeDescription = new TiledVolumeDescription
            {
                ImageDataDirectory = mapRootDirectory,
                FileExtension      = tiledVolumeDescriptionXml.fileExtension,
                NumTilesX          = tiledVolumeDescriptionXml.numTilesX,
                NumTilesY          = tiledVolumeDescriptionXml.numTilesY,
                NumTilesZ          = tiledVolumeDescriptionXml.numTilesZ,
                NumTilesW          = tiledVolumeDescriptionXml.numTilesW,
                NumVoxelsPerTileX  = tiledVolumeDescriptionXml.numVoxelsPerTileX,
                NumVoxelsPerTileY  = tiledVolumeDescriptionXml.numVoxelsPerTileY,
                NumVoxelsPerTileZ  = tiledVolumeDescriptionXml.numVoxelsPerTileZ,
                NumVoxelsX         = tiledVolumeDescriptionXml.numVoxelsX,
                NumVoxelsY         = tiledVolumeDescriptionXml.numVoxelsY,
                NumVoxelsZ         = tiledVolumeDescriptionXml.numVoxelsZ,
                DxgiFormat         = (Format)Enum.Parse(typeof(Format), tiledVolumeDescriptionXml.dxgiFormat),
                NumBytesPerVoxel   = tiledVolumeDescriptionXml.numBytesPerVoxel,
                IsSigned           = tiledVolumeDescriptionXml.isSigned
            };

            return(tiledVolumeDescription);
        }
Example #2
0
        private static TiledVolumeDescription GetTiledVolumeDescription( string mapRootDirectory, string tiledVolumeDescriptionPath )
        {
            tiledVolumeDescription tiledVolumeDescriptionXml;

            try
            {
                XmlSerializer tiledVolumeDescriptionSerializer = new XmlSerializer( typeof( tiledVolumeDescription ) );

                // A FileStream is needed to read the XML document.
                using ( var fileStream = new FileStream( tiledVolumeDescriptionPath, FileMode.Open ) )
                {
                    System.Xml.XmlReader xmlTextReader = new XmlTextReader( fileStream );

                    // Declare an object variable of the type to be deserialized.
                    tiledVolumeDescriptionXml = (tiledVolumeDescription)tiledVolumeDescriptionSerializer.Deserialize( xmlTextReader );
                }
            }
            catch ( Exception e )
            {
                throw new Exception( "Error reading XML from " + tiledVolumeDescriptionPath + ":\n" + e.Message );
            }

            var tiledVolumeDescription = new TiledVolumeDescription
                                         {
                                             ImageDataDirectory = mapRootDirectory,
                                             FileExtension = tiledVolumeDescriptionXml.fileExtension,
                                             NumTilesX = tiledVolumeDescriptionXml.numTilesX,
                                             NumTilesY = tiledVolumeDescriptionXml.numTilesY,
                                             NumTilesZ = tiledVolumeDescriptionXml.numTilesZ,
                                             NumTilesW = tiledVolumeDescriptionXml.numTilesW,
                                             NumVoxelsPerTileX = tiledVolumeDescriptionXml.numVoxelsPerTileX,
                                             NumVoxelsPerTileY = tiledVolumeDescriptionXml.numVoxelsPerTileY,
                                             NumVoxelsPerTileZ = tiledVolumeDescriptionXml.numVoxelsPerTileZ,
                                             NumVoxelsX = tiledVolumeDescriptionXml.numVoxelsX,
                                             NumVoxelsY = tiledVolumeDescriptionXml.numVoxelsY,
                                             NumVoxelsZ = tiledVolumeDescriptionXml.numVoxelsZ,
                                             DxgiFormat = (Format)Enum.Parse( typeof( Format ), tiledVolumeDescriptionXml.dxgiFormat ),
                                             NumBytesPerVoxel = tiledVolumeDescriptionXml.numBytesPerVoxel,
                                             IsSigned = tiledVolumeDescriptionXml.isSigned
                                         };
            return tiledVolumeDescription;
        }