Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //example serializer for baseClass
- public class _00000004_serializer_ : ExecEngine.Serialization.BaseTypeSerializer
- {
- const int inheritanceDepth = 1;
- public _00000004_serializer_()
- {
- SubTypes = new Type[3];
- SubTypes[0] = typeof(baseClass);
- SubTypes[1] = typeof(subclass1);
- SubTypes[2] = typeof(subClass2);
- }
- public override Type SerializedType
- {
- get { return typeof(baseClass); }
- }
- public override int MemberCount
- {
- get { return 1; }
- }
- public override int SubTypeIndexBits
- {
- get { throw new NotImplementedException(); }
- }
- public override void SerializeMembers(object instance, BitStreamBuilder data, MemberInclusionInfo inclusions)
- {
- baseClass cast = (baseClass)instance;
- if (inclusions[0]) Helper.Serialize(cast.someBaseData, data, inclusions[0]);
- }
- public override object DeserializeMembers(BitStreamReader data, object instance, MemberInclusionInfo inclusions)
- {
- baseClass cast = (baseClass)instance;
- if (inclusions[0]) cast.someBaseData = Helper.Deserialize(data, cast.someBaseData);
- return cast;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement