///<exclude/> public void Deserialize(BinaryReader br) { seq = br.ReadUInt32(); stamp = br.ReadDateTime(); frame_id = br.ReadUtf8String(); }
///<exclude/> public void Deserialize(BinaryReader br) { data = br.ReadDateTime(); }
private void ReadObject(BinaryReader reader, ref object obj) { if (obj is bool) obj = reader.ReadBoolean(); else if (obj is byte) obj = reader.ReadByte(); else if (obj is char) obj = reader.ReadChar(); else if (obj is DateTime) obj = reader.ReadDateTime(); else if (obj is DateTime?) obj = reader.ReadNullableDateTime(); else if (obj is double) obj = reader.ReadDouble(); else if (obj is float) obj = reader.ReadSingle(); else if (obj is int) obj = reader.ReadInt32(); else if (obj is long) obj = reader.ReadInt64(); else if (obj is long?) obj = reader.ReadNullableLong(); else if (obj is sbyte) obj = reader.ReadSByte(); else if (obj is short) obj = reader.ReadInt16(); else if (obj is string) obj = reader.ReadString(); else if (obj is uint) obj = reader.ReadUInt32(); else if (obj is ulong) obj = reader.ReadUInt64(); else if (obj is ushort) obj = reader.ReadUInt16(); else if (obj is Enum) obj = reader.ReadUInt16(); else if (obj is IBinarySerializer) { (obj as IBinarySerializer).Load(reader); } else if (obj is IEnumerable<IBinarySerializer>) { int count = reader.ReadInt32(); Type elementType = GetTypeOfElementsInEnumerable(obj as IEnumerable); for (int i = 0; i < count; i++) { object element = Activator.CreateInstance(elementType); (element as IBinarySerializer).Load(reader); } } else if (obj is IEnumerable) { int count = reader.ReadInt32(); Type elementType = GetTypeOfElementsInEnumerable(obj as IEnumerable); for (int i = 0; i < count; i++) { object element = Activator.CreateInstance(elementType); DeserializeObject(reader, ref element, elementType); } } else if (IncludeTypes.Contains(obj.GetType())) { DeserializeObject(reader, ref obj, obj.GetType()); } else throw new BinarySerializeException(string.Format("Type {0} do not allows BinarySerialize", obj.GetType().Name)); }
public static BuildEventArgs DecodeEvent(BinaryReader reader) { EventTypes type = (EventTypes)reader.ReadInt32(); string message = reader.ReadNullableString(); string helpKeyword = reader.ReadNullableString(); string senderName = reader.ReadNullableString(); DateTime eventTimestamp = reader.ReadDateTime(); switch (type) { case EventTypes.Error: return new BuildErrorEventArgs(reader.ReadNullableString(), reader.ReadNullableString(), reader.ReadNullableString(), reader.ReadInt32(), reader.ReadInt32(), reader.ReadInt32(), reader.ReadInt32(), message, helpKeyword, senderName, eventTimestamp); case EventTypes.Warning: return new BuildWarningEventArgs(reader.ReadNullableString(), reader.ReadNullableString(), reader.ReadNullableString(), reader.ReadInt32(), reader.ReadInt32(), reader.ReadInt32(), reader.ReadInt32(), message, helpKeyword, senderName, eventTimestamp); case EventTypes.Message: MessageImportance importance = (MessageImportance)reader.ReadInt32(); return new BuildMessageEventArgs(message, helpKeyword, senderName, importance, eventTimestamp); case EventTypes.BuildFinished: return new BuildFinishedEventArgs(message, helpKeyword, reader.ReadBoolean(), eventTimestamp); case EventTypes.BuildStarted: return new BuildStartedEventArgs(message, helpKeyword, eventTimestamp); case EventTypes.ProjectFinished: return new ProjectFinishedEventArgs(message, helpKeyword, reader.ReadNullableString(), reader.ReadBoolean(), eventTimestamp); case EventTypes.ProjectStarted: return new ProjectStartedEventArgs(message, helpKeyword, reader.ReadNullableString(), reader.ReadNullableString(), null, null, eventTimestamp); case EventTypes.TargetFinished: return new TargetFinishedEventArgs(message, helpKeyword, reader.ReadNullableString(), reader.ReadNullableString(), reader.ReadNullableString(), reader.ReadBoolean(), eventTimestamp, null); case EventTypes.TargetStarted: return new TargetStartedEventArgs(message, helpKeyword, reader.ReadNullableString(), reader.ReadNullableString(), reader.ReadNullableString(), reader.ReadNullableString(), eventTimestamp); case EventTypes.TaskFinished: return new TaskFinishedEventArgs(message, helpKeyword, reader.ReadNullableString(), reader.ReadNullableString(), reader.ReadNullableString(), reader.ReadBoolean(), eventTimestamp); case EventTypes.TaskStarted: return new TaskStartedEventArgs(message, helpKeyword, reader.ReadNullableString(), reader.ReadNullableString(), reader.ReadNullableString(), eventTimestamp); default: return new UnknownBuildEventArgs(message, helpKeyword, senderName, eventTimestamp); } }
public void Read(BinaryReader reader) { GameHost = reader.ReadString(); GameMoves = reader.ReadList<GameMoveDataPoint>(); Winner = reader.ReadString(); GameDuration = reader.ReadInt32(); GameStartTime = reader.ReadDateTime(); PlayerDictionary = reader.ReadPlayerDictionary<PlayerGameStats>(); }
public void Read(BinaryReader reader) { _alias = reader.ReadString(); _emailAddress = reader.ReadString(); _creationTime = reader.ReadDateTime(); _ranking = reader.ReadInt32(); _level = reader.ReadInt32(); _experience = reader.ReadInt64(); }