Ejemplo n.º 1
0
 public static MapHeader FromFile(string filename)
 {
     using (MapFormatHelper helper = MapFormatHelper.FromFile(filename))
     {
         return(helper.DeserializeHeader());
     }
 }
Ejemplo n.º 2
0
 public static MapHeader FromFile(string filename)
 {
     using (FileStream inputStream = new FileStream(filename, FileMode.Open, FileAccess.Read))
     {
         return(MapFormatHelper.ReadHeaderFromStream(inputStream));
     }
 }
Ejemplo n.º 3
0
 public static AowMap FromFile(string filename)
 {
     using (MapFormatHelper formatHelper = MapFormatHelper.FromFile(filename))
     {
         return(formatHelper.DeserializeMap());
     }
 }
Ejemplo n.º 4
0
 public void Save(string filename)
 {
     using (FileStream outStream = new FileStream(filename, FileMode.Create))
     {
         MapFormatHelper.WriteToStream(this, outStream);
     }
 }
Ejemplo n.º 5
0
 public byte[] ToBytes()
 {
     using (MemoryStream memory = new MemoryStream())
     {
         MapFormatHelper.WriteToStream(this, memory);
         return(memory.ToArray());
     }
 }
Ejemplo n.º 6
0
 public void Save(string filename)
 {
     using (FileStream outStream = new FileStream(filename, FileMode.Create))
     {
         using (MapFormatHelper formatHelper = MapFormatHelper.FromMap(this))
         {
             formatHelper.PackData(outStream);
         }
     }
 }
Ejemplo n.º 7
0
        public void SaveDataSectionRoundTrips(byte[] saveBytes)
        {
            MemoryStream compressedSaveStream = new MemoryStream(saveBytes);

            byte[] originalDataBytes = MapFormatHelper.ReadPreHeaderAndDecompressDataStream(compressedSaveStream).dataStream.ToArray();

            AowMap                 deserializedMap        = AowMap.FromBytes(saveBytes);
            MemoryStream           roundTrippedDataStream = new MemoryStream();
            AowSerializer <AowMap> mapSerializer          = new AowSerializer <AowMap>(hasRootWrapper: true);

            mapSerializer.Serialize(roundTrippedDataStream, deserializedMap);
            byte[] roundTrippedDataBytes = roundTrippedDataStream.ToArray();

            try
            {
                roundTrippedDataBytes.Should().BeEquivalentTo(originalDataBytes);
            }
            catch
            {
                MapStructureLogger originalLogger = new MapStructureLogger();
                _ = mapSerializer.Deserialize(new MemoryStream(originalDataBytes), originalLogger);

                MapStructureLogger roundTrippedLogger = new MapStructureLogger();
                _ = mapSerializer.Deserialize(new MemoryStream(roundTrippedDataBytes), roundTrippedLogger);

                roundTrippedLogger.RootNode.Should().BeEquivalentTo
                (
                    originalLogger.RootNode,
                    cfg
                    => cfg
                    .WithStrictOrdering()
                    .Excluding((IMemberInfo m) => m.SelectedMemberInfo.Name == nameof(MapStructureLogger.Node.Parent))
                    .AllowingInfiniteRecursion()
                );
                throw;
            }
        }
Ejemplo n.º 8
0
 public static AowMap FromStream(Stream inputStream) => MapFormatHelper.ReadMapFromStream(inputStream);