Paradox Game Engine  v1.0.0 beta06
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros Pages
IContentSerializer.cs
Go to the documentation of this file.
1 // Copyright (c) 2014 Silicon Studio Corp. (http://siliconstudio.co.jp)
2 // This file is distributed under GPL v3. See LICENSE.md for details.
3 using System;
4 using System.Collections.Generic;
5 using System.Linq;
6 using System.Text;
7 using System.Threading.Tasks;
8 
9 namespace SiliconStudio.Core.Serialization.Contents
10 {
11  public interface IContentSerializer
12  {
13  Type SerializationType { get; }
14 
15  Type ActualType { get; }
16 
17  //void PreloadReferences(ContentSerializerContext executor, List<PackageObjectReference> references);
18 
19  //bool CanSerializeContext(ContentSerializerContext executor);
20 
21  //void Serialize(ContentSerializerExecutorBase executor, ref object obj/*, ref object intermediateData*/);
22  void Serialize(ContentSerializerContext context, SerializationStream stream, ref object obj);
23 
24  object Construct(ContentSerializerContext context);
25  }
26 
27  public interface IContentSerializer<T> : IContentSerializer
28  {
29  void Serialize(ContentSerializerContext context, SerializationStream stream, ref T obj);
30  }
31 }
Base class for implementation of SerializationStream.